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 570 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 1005 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 588 of file InstrProfReader.h.

◆ atEnd()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 590 of file InstrProfReader.h.

◆ functionEntryOnly()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 616 of file InstrProfReader.h.

◆ getProfileKind()

template<typename HashTableImpl >
InstrProfKind InstrProfReaderIndex::getProfileKind
overridevirtual

Implements llvm::InstrProfReaderIndexBase.

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

◆ hasCSIRLevelProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 604 of file InstrProfReader.h.

◆ hasMemoryProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 620 of file InstrProfReader.h.

◆ hasSingleByteCoverage()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 612 of file InstrProfReader.h.

◆ hasTemporalProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 624 of file InstrProfReader.h.

◆ instrEntryBBEnabled()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 608 of file InstrProfReader.h.

◆ isIRLevelProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 600 of file InstrProfReader.h.

◆ populateSymtab()

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

Implements llvm::InstrProfReaderIndexBase.

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

Friends And Related Function Documentation

◆ InstrProfReaderItaniumRemapper< HashTableImpl >

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

Definition at line 574 of file InstrProfReader.h.


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