aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/com/google/devtools/build/lib')
-rw-r--r--src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java6
1 files changed, 4 insertions, 2 deletions
diff --git a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
index bc5d6ce171..73a3535b49 100644
--- a/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
+++ b/src/main/java/com/google/devtools/build/lib/rules/cpp/CppConfiguration.java
@@ -1602,7 +1602,8 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
*/
public boolean isLipoOptimization() {
// The LIPO optimization bits are set in the LIPO context collector configuration, too.
- return cppOptions.isLipoOptimization();
+ // If compiler is LLVM, then LIPO gets auto-converted to ThinLTO.
+ return cppOptions.isLipoOptimization() && !isLLVMCompiler();
}
/**
@@ -1612,7 +1613,8 @@ public class CppConfiguration extends BuildConfiguration.Fragment {
* down the dependency tree.
*/
public boolean isDataConfigurationForLipoOptimization() {
- return cppOptions.isDataConfigurationForLipoOptimization();
+ // If compiler is LLVM, then LIPO gets auto-converted to ThinLTO.
+ return cppOptions.isDataConfigurationForLipoOptimization() && !isLLVMCompiler();
}
public boolean isLipoOptimizationOrInstrumentation() {