Interface for deciding whether to inline a call site or not.
Synopsis
Declared in <llvm/Analysis/InlineAdvisor.h>
class InlineAdvisor;
Member Functions
Name |
Description |
|
Deleted; InlineAdvisor is not movable. |
|
Destroy the advisor and any owned statistics. |
Get an InlineAdvice recommending whether to inline call site |
|
NOTE pass name is annotated only when inline advisor constructor provides InlineContext. |
|
|
Update advisor state when the Inliner pass is entered. |
|
Prepare advisor state when the Inliner pass is exited. |
|
Print advisor state to |
Protected Enums
Name |
Description |
Kind of mandatory inlining constraint on a call site. |
Protected Member Functions
Name |
Description |
|
Construct an advisor for module |
|
Compute advice for call site |
Return the OptimizationRemarkEmitter for the caller of |
|
|
Compute mandatory (always/never) advice for call site |
Protected Static Member Functions
Name |
Description |
Classify the mandatory inlining kind of call site |
Protected Data Members
Name |
Description |
Annotated inline pass name for remarks, when |
|
Function analysis manager providing analyses for advice. |
|
Optional pipeline context used when constructing this advisor. |
|
Statistics for functions imported and then inlined. |
|
Module whose call sites are advised. |
Friends
Name |
Description |
Captures state between an inlining decision and observing its impact. |
Non-Member Functions
Name |
Description |
Create a development‐mode (dynamic model) InlineAdvisor for |
|
Create a release‐mode (compiled‐in model) InlineAdvisor for |
|
Create a replay inline advisor that consults prior inlining remarks. |
Derived Classes
Name |
Description |
The default (manual heuristics) implementation of the InlineAdvisor. |
|
InlineAdvisor that uses an ML model runner to decide whether to inline. |
|
Replay inline advisor that uses optimization remarks from inlining of previous build to guide current inlining. This is useful for inliner tuning. |
Created with MrDocs