Prepend AFDO flags to allow overriding

This enables turnning off -fprofile-sample-accurate on a per project
basis.

Bug: 274725934
Bug: 273415627
Test: presubmit
Change-Id: I15060950f7b55e51069cb00b66512c7e94981f1b
This commit is contained in:
Yi Kong
2023-04-05 11:33:11 +09:00
parent 28ba80665d
commit a1961e7eed

View File

@@ -71,10 +71,10 @@ func (afdo *afdo) afdoEnabled() bool {
func (afdo *afdo) flags(ctx ModuleContext, flags Flags) Flags {
if path := afdo.Properties.FdoProfilePath; path != nil {
// The flags are prepended to allow overriding.
profileUseFlag := fmt.Sprintf(afdoCFlagsFormat, *path)
flags.Local.CFlags = append(flags.Local.CFlags, profileUseFlag)
flags.Local.LdFlags = append(flags.Local.LdFlags, profileUseFlag)
flags.Local.LdFlags = append(flags.Local.LdFlags, "-Wl,-mllvm,-no-warn-sample-unused=true")
flags.Local.CFlags = append([]string{profileUseFlag}, flags.Local.CFlags...)
flags.Local.LdFlags = append([]string{profileUseFlag, "-Wl,-mllvm,-no-warn-sample-unused=true"}, flags.Local.LdFlags...)
// Update CFlagsDeps and LdFlagsDeps so the module is rebuilt
// if profileFile gets updated