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

Commit e2b87d74 authored by Yi Kong's avatar Yi Kong Committed by Gerrit Code Review
Browse files

Merge "Do not perform AFDO or optimizing LTO for eng builds" into main

parents 9390fb85 9723e338
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -64,6 +64,13 @@ func (afdo *afdo) props() []interface{} {
	return []interface{}{&afdo.Properties}
}

func (afdo *afdo) begin(ctx BaseModuleContext) {
	// Disable on eng builds for faster build.
	if ctx.Config().Eng() {
		afdo.Properties.Afdo = false
	}
}

// afdoEnabled returns true for binaries and shared libraries
// that set afdo prop to True and there is a profile available
func (afdo *afdo) afdoEnabled() bool {
+3 −0
Original line number Diff line number Diff line
@@ -2401,6 +2401,9 @@ func (c *Module) begin(ctx BaseModuleContext) {
	if c.coverage != nil {
		c.coverage.begin(ctx)
	}
	if c.afdo != nil {
		c.afdo.begin(ctx)
	}
	if c.lto != nil {
		c.lto.begin(ctx)
	}
+2 −1
Original line number Diff line number Diff line
@@ -116,7 +116,8 @@ func (lto *lto) flags(ctx BaseModuleContext, flags Flags) Flags {
		// better dead code elimination and CFG simplification, but do
		// not perform costly optimizations for a balance between compile
		// time, binary size and performance.
		if !lto.ThinLTO() {
		// Apply the same for Eng builds as well.
		if !lto.ThinLTO() || ctx.Config().Eng() {
			ltoLdFlags = append(ltoLdFlags, "-Wl,--lto-O0")
		}