LLVM 22.0.0git
llvm::BinaryInstrProfCorrelator< IntPtrT > Class Template Reference

BinaryInstrProfCorrelator - A child of InstrProfCorrelatorImpl that takes an object file as input to correlate profiles. More...

#include "llvm/ProfileData/InstrProfCorrelator.h"

Inheritance diagram for llvm::BinaryInstrProfCorrelator< IntPtrT >:
[legend]

Public Member Functions

 BinaryInstrProfCorrelator (std::unique_ptr< InstrProfCorrelator::Context > Ctx)
const chargetNamesPointer () const
 Return a pointer to the names string that this class constructs.
size_t getNamesSize () const
 Return the number of bytes in the names string.
Public Member Functions inherited from llvm::InstrProfCorrelatorImpl< IntPtrT >
 InstrProfCorrelatorImpl (std::unique_ptr< InstrProfCorrelator::Context > Ctx)
const RawInstrProf::ProfileData< IntPtrT > * getDataPointer () const
 Return a pointer to the underlying ProfileData vector that this class constructs.
size_t getDataSize () const
 Return the number of ProfileData elements.
 InstrProfCorrelatorImpl (std::unique_ptr< InstrProfCorrelator::Context > Ctx)
 InstrProfCorrelatorImpl (std::unique_ptr< InstrProfCorrelator::Context > Ctx)
bool classof (const InstrProfCorrelator *C)
bool classof (const InstrProfCorrelator *C)
Public Member Functions inherited from llvm::InstrProfCorrelator
LLVM_ABI std::optional< size_t > getDataSize () const
 Return the number of ProfileData elements.
const chargetNamesPointer () const
 Return a pointer to the names string that this class constructs.
size_t getNamesSize () const
 Return the number of bytes in the names string.
uint64_t getCountersSectionSize () const
 Return the size of the counters section in bytes.
InstrProfCorrelatorKind getKind () const
virtual ~InstrProfCorrelator ()=default

Additional Inherited Members

Public Types inherited from llvm::InstrProfCorrelator
enum  ProfCorrelatorKind { NONE , DEBUG_INFO , BINARY }
 Indicate if we should use the debug info or profile metadata sections to correlate. More...
enum  InstrProfCorrelatorKind { CK_32Bit , CK_64Bit }
Static Public Member Functions inherited from llvm::InstrProfCorrelatorImpl< IntPtrT >
static bool classof (const InstrProfCorrelator *C)
static llvm::Expected< std::unique_ptr< InstrProfCorrelatorImpl< IntPtrT > > > get (std::unique_ptr< InstrProfCorrelator::Context > Ctx, const object::ObjectFile &Obj, ProfCorrelatorKind FileKind)
Static Public Member Functions inherited from llvm::InstrProfCorrelator
static LLVM_ABI llvm::Expected< std::unique_ptr< InstrProfCorrelator > > get (StringRef Filename, ProfCorrelatorKind FileKind, const object::BuildIDFetcher *BIDFetcher=nullptr, const ArrayRef< llvm::object::BuildID > BIs={})
Static Public Attributes inherited from llvm::InstrProfCorrelator
static LLVM_ABI const charFunctionNameAttributeName = "Function Name"
static LLVM_ABI const charCFGHashAttributeName = "CFG Hash"
static LLVM_ABI const charNumCountersAttributeName = "Num Counters"
Protected Member Functions inherited from llvm::InstrProfCorrelatorImpl< IntPtrT >
Error correlateProfileData (int MaxWarnings) override
 Construct a ProfileData vector used to correlate raw instrumentation data to their functions.
Error dumpYaml (int MaxWarnings, raw_ostream &OS) override
 Process debug info and dump the correlation data.
void addDataProbe (uint64_t FunctionName, uint64_t CFGHash, IntPtrT CounterOffset, IntPtrT FunctionPtr, uint32_t NumCounters)
template<class T>
T maybeSwap (T Value) const
Protected Member Functions inherited from llvm::InstrProfCorrelator
 InstrProfCorrelator (InstrProfCorrelatorKind K, std::unique_ptr< Context > Ctx)
Protected Attributes inherited from llvm::InstrProfCorrelatorImpl< IntPtrT >
std::vector< RawInstrProf::ProfileData< IntPtrT > > Data
Protected Attributes inherited from llvm::InstrProfCorrelator
const std::unique_ptr< ContextCtx
std::string Names
std::vector< std::string > NamesVec

Detailed Description

template<class IntPtrT>
class llvm::BinaryInstrProfCorrelator< IntPtrT >

BinaryInstrProfCorrelator - A child of InstrProfCorrelatorImpl that takes an object file as input to correlate profiles.

Definition at line 234 of file InstrProfCorrelator.h.

Constructor & Destructor Documentation

◆ BinaryInstrProfCorrelator()

Member Function Documentation

◆ getNamesPointer()

template<class IntPtrT>
const char * llvm::BinaryInstrProfCorrelator< IntPtrT >::getNamesPointer ( ) const
inline

Return a pointer to the names string that this class constructs.

Definition at line 240 of file InstrProfCorrelator.h.

References llvm::InstrProfCorrelator::Ctx.

◆ getNamesSize()

template<class IntPtrT>
size_t llvm::BinaryInstrProfCorrelator< IntPtrT >::getNamesSize ( ) const
inline

Return the number of bytes in the names string.

Definition at line 243 of file InstrProfCorrelator.h.

References llvm::InstrProfCorrelator::Ctx.


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