LLVM 22.0.0git
|
#include "llvm/Analysis/FunctionPropertiesAnalysis.h"
Public Member Functions | |
LLVM_ABI bool | operator== (const FunctionPropertiesInfo &FPI) const |
bool | operator!= (const FunctionPropertiesInfo &FPI) const |
LLVM_ABI void | print (raw_ostream &OS) const |
const ir2vec::Embedding & | getFunctionEmbedding () const |
const ir2vec::Vocabulary * | getIR2VecVocab () const |
void | setFunctionEmbeddingForTest (const ir2vec::Embedding &Embedding) |
Static Public Member Functions | |
static LLVM_ABI FunctionPropertiesInfo | getFunctionPropertiesInfo (const Function &F, const DominatorTree &DT, const LoopInfo &LI, const ir2vec::Vocabulary *Vocabulary) |
static LLVM_ABI FunctionPropertiesInfo | getFunctionPropertiesInfo (Function &F, FunctionAnalysisManager &FAM) |
Friends | |
class | FunctionPropertiesUpdater |
Definition at line 30 of file FunctionPropertiesAnalysis.h.
|
inline |
Definition at line 144 of file FunctionPropertiesAnalysis.h.
|
static |
Definition at line 251 of file FunctionPropertiesAnalysis.cpp.
References F, llvm::ir2vec::Vocabulary::getDimension(), llvm::DominatorTree::isReachableFromEntry(), and llvm::ir2vec::Vocabulary::isValid().
Referenced by getFunctionPropertiesInfo(), and llvm::FunctionPropertiesAnalysis::run().
|
static |
Definition at line 240 of file FunctionPropertiesAnalysis.cpp.
References F, FAM, getFunctionPropertiesInfo(), and llvm::AnalysisManager< IRUnitT, ExtraArgTs >::getResult().
|
inline |
Definition at line 148 of file FunctionPropertiesAnalysis.h.
|
inline |
Definition at line 50 of file FunctionPropertiesAnalysis.h.
bool FunctionPropertiesInfo::operator== | ( | const FunctionPropertiesInfo & | FPI | ) | const |
Definition at line 267 of file FunctionPropertiesAnalysis.cpp.
References llvm::ir2vec::Embedding::approximatelyEquals(), ArgumentOperandCount, BasicBlockCount, BasicBlockOperandCount, BasicBlocksWithMoreThanTwoPredecessors, BasicBlocksWithMoreThanTwoSuccessors, BasicBlocksWithSinglePredecessor, BasicBlocksWithSingleSuccessor, BasicBlocksWithTwoPredecessors, BasicBlocksWithTwoSuccessors, BigBasicBlocks, BlocksReachedFromConditionalInstruction, CallReturnsFloatCount, CallReturnsIntegerCount, CallReturnsPointerCount, CallReturnsVectorFloatCount, CallReturnsVectorIntCount, CallReturnsVectorPointerCount, CallWithManyArgumentsCount, CallWithPointerArgumentCount, CastInstructionCount, ConstantFPOperandCount, ConstantIntOperandCount, ConstantOperandCount, ControlFlowEdgeCount, CriticalEdgeCount, DirectCallCount, DirectCallsToDefinedFunctions, FloatingPointInstructionCount, GlobalValueOperandCount, IndirectCallCount, InlineAsmOperandCount, InstructionOperandCount, IntegerInstructionCount, IntrinsicCount, LoadInstCount, MaxLoopDepth, MediumBasicBlocks, SmallBasicBlocks, StoreInstCount, TopLevelLoopCount, TotalInstructionCount, UnconditionalBranchCount, UnknownOperandCount, and Uses.
void FunctionPropertiesInfo::print | ( | raw_ostream & | OS | ) | const |
Definition at line 327 of file FunctionPropertiesAnalysis.cpp.
References ArgumentOperandCount, BasicBlockCount, BasicBlockOperandCount, BasicBlocksWithMoreThanTwoPredecessors, BasicBlocksWithMoreThanTwoSuccessors, BasicBlocksWithSinglePredecessor, BasicBlocksWithSingleSuccessor, BasicBlocksWithTwoPredecessors, BasicBlocksWithTwoSuccessors, BigBasicBlocks, BlocksReachedFromConditionalInstruction, CallReturnsFloatCount, CallReturnsIntegerCount, CallReturnsPointerCount, CallReturnsVectorFloatCount, CallReturnsVectorIntCount, CallReturnsVectorPointerCount, CallWithManyArgumentsCount, CallWithPointerArgumentCount, CastInstructionCount, ConstantFPOperandCount, ConstantIntOperandCount, ConstantOperandCount, ControlFlowEdgeCount, CriticalEdgeCount, DirectCallCount, DirectCallsToDefinedFunctions, llvm::EnableDetailedFunctionProperties(), FloatingPointInstructionCount, GlobalValueOperandCount, IndirectCallCount, InlineAsmOperandCount, InstructionOperandCount, IntegerInstructionCount, IntrinsicCount, LoadInstCount, MaxLoopDepth, MediumBasicBlocks, OS, PRINT_PROPERTY, SmallBasicBlocks, StoreInstCount, TopLevelLoopCount, TotalInstructionCount, UnconditionalBranchCount, UnknownOperandCount, and Uses.
|
inline |
Definition at line 151 of file FunctionPropertiesAnalysis.h.
|
friend |
Definition at line 31 of file FunctionPropertiesAnalysis.h.
int64_t llvm::FunctionPropertiesInfo::ArgumentOperandCount = 0 |
Definition at line 123 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlockCount = 0 |
Number of basic blocks.
Definition at line 57 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlockOperandCount = 0 |
Definition at line 120 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlocksWithMoreThanTwoPredecessors = 0 |
Definition at line 98 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlocksWithMoreThanTwoSuccessors = 0 |
Definition at line 93 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlocksWithSinglePredecessor = 0 |
Definition at line 96 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlocksWithSingleSuccessor = 0 |
Definition at line 91 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlocksWithTwoPredecessors = 0 |
Definition at line 97 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BasicBlocksWithTwoSuccessors = 0 |
Definition at line 92 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BigBasicBlocks = 0 |
Definition at line 102 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::BlocksReachedFromConditionalInstruction = 0 |
Number of blocks reached from a conditional instruction, or that are 'cases' of a SwitchInstr.
Definition at line 65 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallReturnsFloatCount = 0 |
Definition at line 136 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallReturnsIntegerCount = 0 |
Definition at line 135 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallReturnsPointerCount = 0 |
Definition at line 137 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallReturnsVectorFloatCount = 0 |
Definition at line 139 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallReturnsVectorIntCount = 0 |
Definition at line 138 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallReturnsVectorPointerCount = 0 |
Definition at line 140 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallWithManyArgumentsCount = 0 |
Definition at line 141 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CallWithPointerArgumentCount = 0 |
Definition at line 142 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CastInstructionCount = 0 |
Definition at line 107 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::ConstantFPOperandCount = 0 |
Definition at line 117 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::ConstantIntOperandCount = 0 |
Definition at line 116 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::ConstantOperandCount = 0 |
Definition at line 118 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::ControlFlowEdgeCount = 0 |
Definition at line 128 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::CriticalEdgeCount = 0 |
Definition at line 127 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::DirectCallCount = 0 |
Definition at line 133 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::DirectCallsToDefinedFunctions = 0 |
Number of direct calls made from this function to other functions defined in this module.
Definition at line 73 of file FunctionPropertiesAnalysis.h.
Referenced by llvm::MLInlineAdvisor::getLocalCalls(), llvm::MLInlineAdvisor::onSuccessfulInlining(), operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::FloatingPointInstructionCount = 0 |
Definition at line 110 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::GlobalValueOperandCount = 0 |
Definition at line 121 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::IndirectCallCount = 0 |
Definition at line 134 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::InlineAsmOperandCount = 0 |
Definition at line 122 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::InstructionOperandCount = 0 |
Definition at line 119 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::IntegerInstructionCount = 0 |
Definition at line 113 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::IntrinsicCount = 0 |
Definition at line 132 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::LoadInstCount = 0 |
Definition at line 76 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::MaxLoopDepth = 0 |
Definition at line 82 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::MediumBasicBlocks = 0 |
Definition at line 103 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::SmallBasicBlocks = 0 |
Definition at line 104 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::StoreInstCount = 0 |
Definition at line 79 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::TopLevelLoopCount = 0 |
Definition at line 85 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::TotalInstructionCount = 0 |
Definition at line 88 of file FunctionPropertiesAnalysis.h.
Referenced by llvm::MLInlineAdvisor::getIRSize(), operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::UnconditionalBranchCount = 0 |
Definition at line 129 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::UnknownOperandCount = 0 |
Definition at line 124 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().
int64_t llvm::FunctionPropertiesInfo::Uses = 0 |
Number of uses of this function, plus 1 if the function is callable outside the module.
Definition at line 69 of file FunctionPropertiesAnalysis.h.
Referenced by operator==(), and print().