Utility pass that blocks inlining for functions that may be overridden by a prevailing copy during linking.
Synopsis
Declared in <llvm/Transforms/Instrumentation/PGOCtxProfLowering.h>
class NoinlineNonPrevailing
: public OptionalPassInfoMixin<NoinlineNonPrevailing>
Description
This avoids confusingly collecting profiles for the same GUID corresponding to different variants of the function. We could do like PGO and identify functions by a (GUID, Hash) tuple, but since the ctxprof "use" waits for thinlto to happen before performing any further optimizations, it's unnecessary to collect profiles for non‐prevailing copies.
Base Classes
Name |
Description |
A CRTP mix‐in for passes that can be skipped. |
Member Functions
Name |
Description |
|
Construct a pass that marks non‐prevailing functions as noinline. |
Mark non‐prevailing functions in |
Static Member Functions
Name |
Description |
Return false; optional passes may be skipped. |
Created with MrDocs