https://llvm.org/bugs/show_bug.cgi?id=27867
Bug ID: 27867
Summary: PGO data for "static" functions invalidated if
different build directories are used.
Product: libraries
Version: trunk
Hardware: PC
OS: All
Status: NEW
Severity: normal
Priority: P
Component: Miscellaneous Instrumentation passes
Assignee: [email protected]
Reporter: [email protected]
CC: [email protected]
Classification: Unclassified
As I mentioned in the "The state of IRPGO (3 remaining work items)" thread on
llvm-dev, currently we mangle the filename into the counters of static
functions, which is not robust against changes in build directory.
One solution would be to mangle a hash of the function into the counter name
(or something like that). My main concern is IRPGO, but FEPGO probably has
similar issues.
For reference, here is the relevant part of that post:
1. The main concerning one is that getPGOFuncName mangles the filename into the
counter name. This causes us to get instrprof_error::unknown_function when the
pgo-use build is done in a different build directory from the training build
(which is a reasonable thing to support). In this situation, PGO data is
useless for all `static` functions (and as a byproduct results in a huge volume
of warnings).
--
You are receiving this mail because:
You are on the CC list for the bug.
_______________________________________________
llvm-bugs mailing list
[email protected]
http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs