LLVM 22.0.0git
llvm::InstrProfReaderIndex< HashTableImpl > Class Template Reference

#include "llvm/ProfileData/InstrProfReader.h"

Inheritance diagram for llvm::InstrProfReaderIndex< HashTableImpl >:
[legend]

Public Member Functions

 InstrProfReaderIndex (const unsigned char *Buckets, const unsigned char *const Payload, const unsigned char *const Base, IndexedInstrProf::HashT HashType, uint64_t Version)
 ~InstrProfReaderIndex () override=default
Error getRecords (ArrayRef< NamedInstrProfRecord > &Data) override
Error getRecords (StringRef FuncName, ArrayRef< NamedInstrProfRecord > &Data) override
void advanceToNextKey () override
bool atEnd () const override
void setValueProfDataEndianness (llvm::endianness Endianness) override
uint64_t getVersion () const override
bool isIRLevelProfile () const override
bool hasCSIRLevelProfile () const override
bool instrEntryBBEnabled () const override
bool instrLoopEntriesEnabled () const override
bool hasSingleByteCoverage () const override
bool functionEntryOnly () const override
bool hasMemoryProfile () const override
bool hasTemporalProfile () const override
InstrProfKind getProfileKind () const override
Error populateSymtab (InstrProfSymtab &Symtab) override
Public Member Functions inherited from llvm::InstrProfReaderIndexBase
virtual ~InstrProfReaderIndexBase ()=default

Friends

class InstrProfReaderItaniumRemapper< HashTableImpl >

Detailed Description

template<typename HashTableImpl>
class llvm::InstrProfReaderIndex< HashTableImpl >

Definition at line 607 of file InstrProfReader.h.

Constructor & Destructor Documentation

◆ InstrProfReaderIndex()

template<typename HashTableImpl>
InstrProfReaderIndex::InstrProfReaderIndex ( const unsigned char * Buckets,
const unsigned char *const Payload,
const unsigned char *const Base,
IndexedInstrProf::HashT HashType,
uint64_t Version )

Definition at line 1034 of file InstrProfReader.cpp.

References llvm::sampleprof::Base, and llvm::Version.

◆ ~InstrProfReaderIndex()

template<typename HashTableImpl>
llvm::InstrProfReaderIndex< HashTableImpl >::~InstrProfReaderIndex ( )
overridedefault

References llvm::Data.

Member Function Documentation

◆ advanceToNextKey()

template<typename HashTableImpl>
void llvm::InstrProfReaderIndex< HashTableImpl >::advanceToNextKey ( )
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 625 of file InstrProfReader.h.

◆ atEnd()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::atEnd ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 627 of file InstrProfReader.h.

Referenced by getRecords().

◆ functionEntryOnly()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::functionEntryOnly ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 657 of file InstrProfReader.h.

References VARIANT_MASK_FUNCTION_ENTRY_ONLY.

◆ getProfileKind()

template<typename HashTableImpl>
InstrProfKind InstrProfReaderIndex::getProfileKind ( ) const
overridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 1046 of file InstrProfReader.cpp.

References getProfileKindFromVersion().

◆ getRecords() [1/2]

template<typename HashTableImpl>
Error InstrProfReaderIndex::getRecords ( ArrayRef< NamedInstrProfRecord > & Data)
overridevirtual

◆ getRecords() [2/2]

template<typename HashTableImpl>
Error InstrProfReaderIndex::getRecords ( StringRef FuncName,
ArrayRef< NamedInstrProfRecord > & Data )
overridevirtual

◆ getVersion()

template<typename HashTableImpl>
uint64_t llvm::InstrProfReaderIndex< HashTableImpl >::getVersion ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 635 of file InstrProfReader.h.

References GET_VERSION.

◆ hasCSIRLevelProfile()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::hasCSIRLevelProfile ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 641 of file InstrProfReader.h.

References VARIANT_MASK_CSIR_PROF.

◆ hasMemoryProfile()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::hasMemoryProfile ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 661 of file InstrProfReader.h.

References VARIANT_MASK_MEMPROF.

◆ hasSingleByteCoverage()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::hasSingleByteCoverage ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 653 of file InstrProfReader.h.

References VARIANT_MASK_BYTE_COVERAGE.

◆ hasTemporalProfile()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::hasTemporalProfile ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 665 of file InstrProfReader.h.

References VARIANT_MASK_TEMPORAL_PROF.

◆ instrEntryBBEnabled()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::instrEntryBBEnabled ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 645 of file InstrProfReader.h.

References VARIANT_MASK_INSTR_ENTRY.

◆ instrLoopEntriesEnabled()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::instrLoopEntriesEnabled ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 649 of file InstrProfReader.h.

References VARIANT_MASK_INSTR_LOOP_ENTRIES.

◆ isIRLevelProfile()

template<typename HashTableImpl>
bool llvm::InstrProfReaderIndex< HashTableImpl >::isIRLevelProfile ( ) const
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 637 of file InstrProfReader.h.

References VARIANT_MASK_IR_PROF.

◆ populateSymtab()

template<typename HashTableImpl>
Error llvm::InstrProfReaderIndex< HashTableImpl >::populateSymtab ( InstrProfSymtab & Symtab)
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 671 of file InstrProfReader.h.

References llvm::InstrProfSymtab::create().

◆ setValueProfDataEndianness()

template<typename HashTableImpl>
void llvm::InstrProfReaderIndex< HashTableImpl >::setValueProfDataEndianness ( llvm::endianness Endianness)
inlineoverridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 631 of file InstrProfReader.h.

◆ InstrProfReaderItaniumRemapper< HashTableImpl >

template<typename HashTableImpl>
friend class InstrProfReaderItaniumRemapper< HashTableImpl >
friend

Definition at line 611 of file InstrProfReader.h.

References llvm::sampleprof::Base, and llvm::Version.


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