LLVM 22.0.0git
llvm::DefaultInlineAdvice Class Reference

#include "llvm/Analysis/InlineAdvisor.h"

Inheritance diagram for llvm::DefaultInlineAdvice:
[legend]

Public Member Functions

 DefaultInlineAdvice (InlineAdvisor *Advisor, CallBase &CB, std::optional< InlineCost > OIC, OptimizationRemarkEmitter &ORE, bool EmitRemarks=true)
Public Member Functions inherited from llvm::InlineAdvice
LLVM_ABI InlineAdvice (InlineAdvisor *Advisor, CallBase &CB, OptimizationRemarkEmitter &ORE, bool IsInliningRecommended)
 InlineAdvice (InlineAdvice &&)=delete
 InlineAdvice (const InlineAdvice &)=delete
virtual ~InlineAdvice ()
LLVM_ABI void recordInlining ()
 Exactly one of the record* APIs must be called.
LLVM_ABI void recordInliningWithCalleeDeleted ()
 Call after inlining succeeded, and results in the callee being delete-able, meaning, it has no more users, and will be cleaned up subsequently.
void recordUnsuccessfulInlining (const InlineResult &Result)
 Call after the decision for a call site was to not inline.
void recordUnattemptedInlining ()
 Call to indicate inlining was not attempted.
bool isInliningRecommended () const
 Get the inlining recommendation.
const DebugLocgetOriginalCallSiteDebugLoc () const
const BasicBlockgetOriginalCallSiteBasicBlock () const

Additional Inherited Members

Protected Member Functions inherited from llvm::InlineAdvice
virtual void recordUnattemptedInliningImpl ()
Protected Attributes inherited from llvm::InlineAdvice
InlineAdvisor *const Advisor
Function *const Caller
 Caller and Callee are pre-inlining.
Function *const Callee
const DebugLoc DLoc
const BasicBlock *const Block
OptimizationRemarkEmitterORE
const bool IsInliningRecommended

Detailed Description

Definition at line 145 of file InlineAdvisor.h.

Constructor & Destructor Documentation

◆ DefaultInlineAdvice()

llvm::DefaultInlineAdvice::DefaultInlineAdvice ( InlineAdvisor * Advisor,
CallBase & CB,
std::optional< InlineCost > OIC,
OptimizationRemarkEmitter & ORE,
bool EmitRemarks = true )
inline

The documentation for this class was generated from the following files: