LLVM 20.0.0git
|
A base class holding non-template-dependant functionality of the AccelTable class. More...
#include "llvm/CodeGen/AccelTable.h"
Classes | |
struct | HashData |
Represents a group of entries with identical name (and hence, hash value). More... | |
Public Types | |
using | HashFn = uint32_t(StringRef) |
using | HashList = std::vector< HashData * > |
using | BucketList = std::vector< HashList > |
Public Member Functions | |
void | finalize (AsmPrinter *Asm, StringRef Prefix) |
ArrayRef< HashList > | getBuckets () const |
uint32_t | getBucketCount () const |
uint32_t | getUniqueHashCount () const |
uint32_t | getUniqueNameCount () const |
void | print (raw_ostream &OS) const |
void | dump () const |
AccelTableBase (const AccelTableBase &)=delete | |
void | operator= (const AccelTableBase &)=delete |
Protected Types | |
using | StringEntries = MapVector< StringRef, HashData > |
Protected Member Functions | |
void | computeBucketCount () |
AccelTableBase (HashFn *Hash) | |
Protected Attributes | |
BumpPtrAllocator | Allocator |
Allocator for HashData and Values. | |
StringEntries | Entries |
HashFn * | Hash |
uint32_t | BucketCount = 0 |
uint32_t | UniqueHashCount = 0 |
HashList | Hashes |
BucketList | Buckets |
A base class holding non-template-dependant functionality of the AccelTable class.
Clients should not use this class directly but rather instantiate AccelTable with a type derived from AccelTableData.
Definition at line 135 of file AccelTable.h.
using llvm::AccelTableBase::BucketList = std::vector<HashList> |
Definition at line 161 of file AccelTable.h.
Definition at line 137 of file AccelTable.h.
using llvm::AccelTableBase::HashList = std::vector<HashData *> |
Definition at line 160 of file AccelTable.h.
|
protected |
Definition at line 167 of file AccelTable.h.
|
inlineprotected |
Definition at line 179 of file AccelTable.h.
|
delete |
|
protected |
Definition at line 33 of file AccelTable.cpp.
References llvm::SmallVectorTemplateCommon< T, typename >::begin(), BucketCount, Entries, llvm::dwarf::getDebugNamesBucketCount(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::SmallVectorImpl< T >::reserve(), llvm::MapVector< KeyT, ValueT, MapType, VectorType >::size(), llvm::sort(), llvm::unique(), and UniqueHashCount.
Referenced by finalize().
|
inline |
Definition at line 190 of file AccelTable.h.
References llvm::dbgs(), and print().
void AccelTableBase::finalize | ( | AsmPrinter * | Asm, |
StringRef | Prefix | ||
) |
Definition at line 43 of file AccelTable.cpp.
References A, B, BucketCount, Buckets, computeBucketCount(), Entries, LHS, RHS, llvm::stable_sort(), and llvm::unique().
Referenced by llvm::emitAppleAccelTableImpl(), and llvm::emitDWARF5AccelTable().
|
inline |
Definition at line 184 of file AccelTable.h.
References BucketCount.
Definition at line 183 of file AccelTable.h.
References Buckets.
|
inline |
Definition at line 185 of file AccelTable.h.
References UniqueHashCount.
|
inline |
Definition at line 186 of file AccelTable.h.
References Entries, and llvm::MapVector< KeyT, ValueT, MapType, VectorType >::size().
|
delete |
void AccelTableBase::print | ( | raw_ostream & | OS | ) | const |
Definition at line 793 of file AccelTable.cpp.
References llvm::Data, Name, and OS.
Referenced by dump().
|
protected |
Allocator for HashData and Values.
Definition at line 165 of file AccelTable.h.
|
protected |
Definition at line 171 of file AccelTable.h.
Referenced by computeBucketCount(), finalize(), and getBucketCount().
|
protected |
Definition at line 175 of file AccelTable.h.
Referenced by finalize(), and getBuckets().
|
protected |
Definition at line 168 of file AccelTable.h.
Referenced by llvm::AccelTable< DataT >::clear(), computeBucketCount(), llvm::DWARF5AccelTable::convertDieToOffset(), finalize(), llvm::AccelTable< DataT >::getEntries(), and getUniqueNameCount().
|
protected |
Definition at line 170 of file AccelTable.h.
|
protected |
Definition at line 174 of file AccelTable.h.
|
protected |
Definition at line 172 of file AccelTable.h.
Referenced by computeBucketCount(), and getUniqueHashCount().