Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2cd77d67 authored by Yi Kong's avatar Yi Kong
Browse files

Enable MLGO inliner optimization for optimize_for_size cases

This helps reduce binary size for these projects by ~3%.

Test: presubmit
Bug: 342090838
Change-Id: Ie1e0586ddf5f40aa1e81fc2628a6499093de9699
parent 5786f5cf
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -695,6 +695,7 @@ func (compiler *baseCompiler) compilerFlags(ctx ModuleContext, flags Flags, deps

	if ctx.optimizeForSize() {
		flags.Local.CFlags = append(flags.Local.CFlags, "-Oz")
		flags.Local.LdFlags = append(flags.Local.LdFlags, "-Wl,-mllvm,-enable-ml-inliner=release")
	}

	// Exclude directories from manual binder interface allowed list.
+1 −1
Original line number Diff line number Diff line
@@ -144,7 +144,7 @@ func (lto *lto) flags(ctx ModuleContext, flags Flags) Flags {

		if !ctx.Config().IsEnvFalse("THINLTO_USE_MLGO") {
			// Register allocation MLGO flags for ARM64.
			if ctx.Arch().ArchType == android.Arm64 {
			if ctx.Arch().ArchType == android.Arm64 && !ctx.optimizeForSize() {
				ltoLdFlags = append(ltoLdFlags, "-Wl,-mllvm,-regalloc-enable-advisor=release")
			}
			// Flags for training MLGO model.