Merge changes from topic "global-thinlto"
* changes:
Turn on Global ThinLTO by default
Only enable global ThinLTO for LP64 targets
diff --git a/cc/lto.go b/cc/lto.go
index 2c274bd..304790c 100644
--- a/cc/lto.go
+++ b/cc/lto.go
@@ -136,9 +136,10 @@
}
func (lto *lto) DefaultThinLTO(ctx BaseModuleContext) bool {
+ lib32 := ctx.Arch().ArchType.Multilib == "lib32"
host := ctx.Host()
vndk := ctx.isVndk() // b/169217596
- return GlobalThinLTO(ctx) && !lto.Never() && !host && !vndk
+ return GlobalThinLTO(ctx) && !lto.Never() && !lib32 && !host && !vndk
}
func (lto *lto) FullLTO() bool {
@@ -154,7 +155,7 @@
}
func GlobalThinLTO(ctx android.BaseModuleContext) bool {
- return ctx.Config().IsEnvTrue("GLOBAL_THINLTO")
+ return !ctx.Config().IsEnvFalse("GLOBAL_THINLTO")
}
// Propagate lto requirements down from binaries