LLVM 19.0.0git
Public Member Functions | Friends | List of all members
llvm::InstrProfReaderIndex< HashTableImpl > Class Template Reference

#include "llvm/ProfileData/InstrProfReader.h"

Inheritance diagram for llvm::InstrProfReaderIndex< HashTableImpl >:
Inheritance graph
[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 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
 
virtual Error getRecords (ArrayRef< NamedInstrProfRecord > &Data)=0
 
virtual Error getRecords (StringRef FuncName, ArrayRef< NamedInstrProfRecord > &Data)=0
 
virtual void advanceToNextKey ()=0
 
virtual bool atEnd () const =0
 
virtual void setValueProfDataEndianness (llvm::endianness Endianness)=0
 
virtual uint64_t getVersion () const =0
 
virtual bool isIRLevelProfile () const =0
 
virtual bool hasCSIRLevelProfile () const =0
 
virtual bool instrEntryBBEnabled () const =0
 
virtual bool hasSingleByteCoverage () const =0
 
virtual bool functionEntryOnly () const =0
 
virtual bool hasMemoryProfile () const =0
 
virtual bool hasTemporalProfile () const =0
 
virtual InstrProfKind getProfileKind () const =0
 
virtual Error populateSymtab (InstrProfSymtab &)=0
 

Friends

class InstrProfReaderItaniumRemapper< HashTableImpl >
 

Detailed Description

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

Definition at line 568 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 989 of file InstrProfReader.cpp.

References llvm::sampleprof::Base.

◆ ~InstrProfReaderIndex()

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

Member Function Documentation

◆ advanceToNextKey()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 586 of file InstrProfReader.h.

◆ atEnd()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 588 of file InstrProfReader.h.

◆ functionEntryOnly()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 614 of file InstrProfReader.h.

◆ getProfileKind()

template<typename HashTableImpl >
InstrProfKind InstrProfReaderIndex::getProfileKind
overridevirtual

Implements llvm::InstrProfReaderIndexBase.

Definition at line 1001 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 596 of file InstrProfReader.h.

◆ hasCSIRLevelProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 602 of file InstrProfReader.h.

◆ hasMemoryProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 618 of file InstrProfReader.h.

◆ hasSingleByteCoverage()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 610 of file InstrProfReader.h.

◆ hasTemporalProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 622 of file InstrProfReader.h.

◆ instrEntryBBEnabled()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 606 of file InstrProfReader.h.

◆ isIRLevelProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 598 of file InstrProfReader.h.

◆ populateSymtab()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 628 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 592 of file InstrProfReader.h.

Friends And Related Function Documentation

◆ InstrProfReaderItaniumRemapper< HashTableImpl >

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

Definition at line 572 of file InstrProfReader.h.


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