LLVM
15.0.0git
|
InstrProfCorrelatorImpl - A child of InstrProfCorrelator with a template pointer type so that the ProfileData vector can be materialized. More...
#include "llvm/ProfileData/InstrProfCorrelator.h"
Public Member Functions | |
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. More... | |
size_t | getDataSize () const |
Return the number of ProfileData elements. More... | |
InstrProfCorrelatorImpl (std::unique_ptr< InstrProfCorrelator::Context > Ctx) | |
InstrProfCorrelatorImpl (std::unique_ptr< InstrProfCorrelator::Context > Ctx) | |
bool | classof (const InstrProfCorrelator *C) |
bool | classof (const InstrProfCorrelator *C) |
![]() | |
llvm::Optional< size_t > | getDataSize () const |
Return the number of ProfileData elements. More... | |
const char * | getNamesPointer () const |
Return a pointer to the names string that this class constructs. More... | |
size_t | getNamesSize () const |
Return the number of bytes in the names string. More... | |
uint64_t | getCountersSectionSize () const |
Return the size of the counters section in bytes. More... | |
InstrProfCorrelatorKind | getKind () const |
virtual | ~InstrProfCorrelator ()=default |
Static Public Member Functions | |
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) |
![]() | |
static llvm::Expected< std::unique_ptr< InstrProfCorrelator > > | get (StringRef DebugInfoFilename) |
Protected Member Functions | |
Error | correlateProfileData () override |
Construct a ProfileData vector used to correlate raw instrumentation data to their functions. More... | |
virtual void | correlateProfileDataImpl ()=0 |
void | addProbe (StringRef FunctionName, uint64_t CFGHash, IntPtrT CounterOffset, IntPtrT FunctionPtr, uint32_t NumCounters) |
![]() | |
InstrProfCorrelator (InstrProfCorrelatorKind K, std::unique_ptr< Context > Ctx) | |
Protected Attributes | |
std::vector< RawInstrProf::ProfileData< IntPtrT > > | Data |
![]() | |
const std::unique_ptr< InstrProfCorrelator::Context > | Ctx |
std::string | Names |
std::vector< std::string > | NamesVec |
Additional Inherited Members | |
![]() | |
enum | InstrProfCorrelatorKind { CK_32Bit, CK_64Bit } |
![]() | |
static const char * | FunctionNameAttributeName = "Function Name" |
static const char * | CFGHashAttributeName = "CFG Hash" |
static const char * | NumCountersAttributeName = "Num Counters" |
InstrProfCorrelatorImpl - A child of InstrProfCorrelator with a template pointer type so that the ProfileData vector can be materialized.
Definition at line 90 of file InstrProfCorrelator.h.
llvm::InstrProfCorrelatorImpl< IntPtrT >::InstrProfCorrelatorImpl | ( | std::unique_ptr< InstrProfCorrelator::Context > | Ctx | ) |
llvm::InstrProfCorrelatorImpl< uint32_t >::InstrProfCorrelatorImpl | ( | std::unique_ptr< InstrProfCorrelator::Context > | Ctx | ) |
Definition at line 108 of file InstrProfCorrelator.cpp.
llvm::InstrProfCorrelatorImpl< uint64_t >::InstrProfCorrelatorImpl | ( | std::unique_ptr< InstrProfCorrelator::Context > | Ctx | ) |
Definition at line 113 of file InstrProfCorrelator.cpp.
|
protected |
Definition at line 159 of file InstrProfCorrelator.cpp.
References llvm::IndexedInstrProf::ComputeHash(), llvm::Data, and llvm::StringRef::str().
|
static |
bool llvm::InstrProfCorrelatorImpl< uint32_t >::classof | ( | const InstrProfCorrelator * | C | ) |
Definition at line 118 of file InstrProfCorrelator.cpp.
bool llvm::InstrProfCorrelatorImpl< uint64_t >::classof | ( | const InstrProfCorrelator * | C | ) |
Definition at line 122 of file InstrProfCorrelator.cpp.
|
overrideprotectedvirtual |
Construct a ProfileData vector used to correlate raw instrumentation data to their functions.
Implements llvm::InstrProfCorrelator.
Definition at line 144 of file InstrProfCorrelator.cpp.
References assert(), llvm::collectPGOFuncNameStrings(), and llvm::Data.
|
protectedpure virtual |
|
static |
Definition at line 130 of file InstrProfCorrelator.cpp.
References llvm::object::Binary::isELF(), llvm::object::Binary::isMachO(), and move.
|
inline |
Return a pointer to the underlying ProfileData vector that this class constructs.
Definition at line 97 of file InstrProfCorrelator.h.
References llvm::InstrProfCorrelatorImpl< IntPtrT >::Data.
|
inline |
Return the number of ProfileData elements.
Definition at line 102 of file InstrProfCorrelator.h.
References llvm::InstrProfCorrelatorImpl< IntPtrT >::Data.
|
protected |
Definition at line 109 of file InstrProfCorrelator.h.
Referenced by llvm::InstrProfCorrelatorImpl< IntPtrT >::getDataPointer(), and llvm::InstrProfCorrelatorImpl< IntPtrT >::getDataSize().