Don't reduce inline limit for afdo enabled projects
Test: presubmit Change-Id: Id964165c7af50da9cd5e92c25ad2c4191eb2147a
This commit is contained in:
parent
d107272436
commit
4ef5459f7d
2 changed files with 13 additions and 1 deletions
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")
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue