LLVM 20.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 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
 
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 instrLoopEntriesEnabled () 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 603 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 1033 of file InstrProfReader.cpp.

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

◆ ~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 621 of file InstrProfReader.h.

◆ atEnd()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 623 of file InstrProfReader.h.

◆ functionEntryOnly()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 653 of file InstrProfReader.h.

◆ getProfileKind()

template<typename HashTableImpl >
InstrProfKind InstrProfReaderIndex::getProfileKind
overridevirtual

Implements llvm::InstrProfReaderIndexBase.

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

◆ hasCSIRLevelProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 637 of file InstrProfReader.h.

◆ hasMemoryProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 657 of file InstrProfReader.h.

◆ hasSingleByteCoverage()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 649 of file InstrProfReader.h.

◆ hasTemporalProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 661 of file InstrProfReader.h.

◆ instrEntryBBEnabled()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 641 of file InstrProfReader.h.

◆ instrLoopEntriesEnabled()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 645 of file InstrProfReader.h.

◆ isIRLevelProfile()

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

Implements llvm::InstrProfReaderIndexBase.

Definition at line 633 of file InstrProfReader.h.

◆ populateSymtab()

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

Implements llvm::InstrProfReaderIndexBase.

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

Friends And Related Function Documentation

◆ InstrProfReaderItaniumRemapper< HashTableImpl >

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

Definition at line 607 of file InstrProfReader.h.


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