LLVM 24.0.0git
llvm::CalleeInfo Struct Reference

Class to accumulate and hold information about a callee. More...

#include "llvm/IR/ModuleSummaryIndex.h"

Public Types

enum class  HotnessType : uint8_t {
  Unknown = 0 , Cold = 1 , None = 2 , Hot = 3 ,
  Critical = 4
}

Public Member Functions

 CalleeInfo ()
 CalleeInfo (HotnessType Hotness, bool HasTC, bool HasIC=false)
void updateHotness (const HotnessType OtherHotness)
bool hasTailCall () const
void setHasTailCall (const bool HasTC)
bool hasIndirectCall () const
void setHasIndirectCall (const bool HasIC)
HotnessType getHotness () const

Public Attributes

uint32_t Hotness: 3
uint32_t HasTailCall: 1
uint32_t HasIndirectCall: 1

Detailed Description

Class to accumulate and hold information about a callee.

Definition at line 65 of file ModuleSummaryIndex.h.

Member Enumeration Documentation

◆ HotnessType

Enumerator
Unknown 
Cold 
None 
Hot 
Critical 

Definition at line 66 of file ModuleSummaryIndex.h.

Constructor & Destructor Documentation

◆ CalleeInfo() [1/2]

llvm::CalleeInfo::CalleeInfo ( )
inline

Definition at line 88 of file ModuleSummaryIndex.h.

References CalleeInfo(), HasIndirectCall, HasTailCall, Hotness, and Unknown.

Referenced by CalleeInfo().

◆ CalleeInfo() [2/2]

llvm::CalleeInfo::CalleeInfo ( HotnessType Hotness,
bool HasTC,
bool HasIC = false )
inlineexplicit

Definition at line 91 of file ModuleSummaryIndex.h.

References HasIndirectCall, HasTailCall, and Hotness.

Member Function Documentation

◆ getHotness()

HotnessType llvm::CalleeInfo::getHotness ( ) const
inline

Definition at line 107 of file ModuleSummaryIndex.h.

References Hotness.

◆ hasIndirectCall()

bool llvm::CalleeInfo::hasIndirectCall ( ) const
inline

Definition at line 103 of file ModuleSummaryIndex.h.

References HasIndirectCall.

◆ hasTailCall()

bool llvm::CalleeInfo::hasTailCall ( ) const
inline

Definition at line 99 of file ModuleSummaryIndex.h.

References HasTailCall.

◆ setHasIndirectCall()

void llvm::CalleeInfo::setHasIndirectCall ( const bool HasIC)
inline

Definition at line 105 of file ModuleSummaryIndex.h.

References HasIndirectCall.

◆ setHasTailCall()

void llvm::CalleeInfo::setHasTailCall ( const bool HasTC)
inline

Definition at line 101 of file ModuleSummaryIndex.h.

References HasTailCall.

◆ updateHotness()

void llvm::CalleeInfo::updateHotness ( const HotnessType OtherHotness)
inline

Definition at line 95 of file ModuleSummaryIndex.h.

References Hotness.

Member Data Documentation

◆ HasIndirectCall

uint32_t llvm::CalleeInfo::HasIndirectCall

◆ HasTailCall

uint32_t llvm::CalleeInfo::HasTailCall

◆ Hotness

uint32_t llvm::CalleeInfo::Hotness

The documentation for this struct was generated from the following file: