Replay inline advisor that uses optimization remarks from inlining of previous build to guide current inlining. This is useful for inliner tuning.

Synopsis

Declared in <llvm/Analysis/ReplayInlineAdvisor.h>

class ReplayInlineAdvisor
    : public InlineAdvisor

Base Classes

Name

Description

InlineAdvisor

Interface for deciding whether to inline a call site or not.

Member Functions

Name

Description

ReplayInlineAdvisor [constructor]

Construct a replay advisor from prior inlining remarks.

areReplayRemarksLoaded

Whether replay remarks were successfully loaded from the replay file.

getAdvice

Get an InlineAdvice recommending whether to inline call site CB.

getAdviceImpl [virtual]

Compute advice for call site CB using loaded replay remarks.

getAnnotatedInlinePassName

NOTE pass name is annotated only when inline advisor constructor provides InlineContext.

onPassEntry [virtual]

Update advisor state when the Inliner pass is entered.

onPassExit [virtual]

Prepare advisor state when the Inliner pass is exited.

print [virtual]

Print advisor state to OS.

Protected Enums

Name

Description

MandatoryInliningKind

Kind of mandatory inlining constraint on a call site.

Protected Member Functions

Name

Description

getAdviceImpl [virtual]

Compute advice for call site CB.

getCallerORE

Return the OptimizationRemarkEmitter for the caller of CB.

getMandatoryAdvice [virtual]

Compute mandatory (always/never) advice for call site CB.

Protected Static Member Functions

Name

Description

getMandatoryKind

Classify the mandatory inlining kind of call site CB.

Protected Data Members

Name

Description

AnnotatedInlinePassName

Annotated inline pass name for remarks, when IC was provided.

FAM

Function analysis manager providing analyses for advice.

IC

Optional pipeline context used when constructing this advisor.

ImportedFunctionsStats

Statistics for functions imported and then inlined.

M

Module whose call sites are advised.

Created with MrDocs