Don't reduce inline limit for afdo enabled projects
Test: presubmit Change-Id: Id964165c7af50da9cd5e92c25ad2c4191eb2147a
This commit is contained in:
12
cc/cc.go
12
cc/cc.go
@@ -505,6 +505,7 @@ type ModuleContextIntf interface {
|
||||
selectedStl() string
|
||||
baseModuleName() string
|
||||
getVndkExtendsModuleName() string
|
||||
isAfdoCompile() bool
|
||||
isPgoCompile() bool
|
||||
isNDKStubLibrary() bool
|
||||
useClangLld(actx ModuleContext) bool
|
||||
@@ -1259,6 +1260,13 @@ func (c *Module) IsVndk() bool {
|
||||
return false
|
||||
}
|
||||
|
||||
func (c *Module) isAfdoCompile() bool {
|
||||
if afdo := c.afdo; afdo != nil {
|
||||
return afdo.Properties.AfdoTarget != nil
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
func (c *Module) isPgoCompile() bool {
|
||||
if pgo := c.pgo; pgo != nil {
|
||||
return pgo.Properties.PgoCompile
|
||||
@@ -1536,6 +1544,10 @@ func (ctx *moduleContextImpl) isVndk() bool {
|
||||
return ctx.mod.IsVndk()
|
||||
}
|
||||
|
||||
func (ctx *moduleContextImpl) isAfdoCompile() bool {
|
||||
return ctx.mod.isAfdoCompile()
|
||||
}
|
||||
|
||||
func (ctx *moduleContextImpl) isPgoCompile() bool {
|
||||
return ctx.mod.isPgoCompile()
|
||||
}
|
||||
|
@@ -123,7 +123,7 @@ func (lto *lto) flags(ctx BaseModuleContext, flags Flags) Flags {
|
||||
|
||||
// If the module does not have a profile, be conservative and limit cross TU inline
|
||||
// limit to 5 LLVM IR instructions, to balance binary size increase and performance.
|
||||
if !ctx.isPgoCompile() {
|
||||
if !ctx.isPgoCompile() && !ctx.isAfdoCompile() {
|
||||
flags.Local.LdFlags = append(flags.Local.LdFlags,
|
||||
"-Wl,-plugin-opt,-import-instr-limit=5")
|
||||
}
|
||||
|
Reference in New Issue
Block a user