Thanks to visit codestin.com
Credit goes to llvm.org

LLVM 22.0.0git
llvm::AccelTableBase Class Reference

A base class holding non-template-dependant functionality of the AccelTable class. More...

#include "llvm/CodeGen/AccelTable.h"

Inheritance diagram for llvm::AccelTableBase:
[legend]

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

LLVM_ABI void finalize (AsmPrinter *Asm, StringRef Prefix)
ArrayRef< HashListgetBuckets () 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

LLVM_ABI void computeBucketCount ()
 AccelTableBase (HashFn *Hash)

Protected Attributes

BumpPtrAllocator Allocator
 Allocator for HashData and Values.
StringEntries Entries
HashFnHash
uint32_t BucketCount = 0
uint32_t UniqueHashCount = 0
HashList Hashes
BucketList Buckets

Detailed Description

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 136 of file AccelTable.h.

Member Typedef Documentation

◆ BucketList

Definition at line 162 of file AccelTable.h.

◆ HashFn

Definition at line 138 of file AccelTable.h.

◆ HashList

using llvm::AccelTableBase::HashList = std::vector<HashData *>

Definition at line 161 of file AccelTable.h.

◆ StringEntries

Definition at line 168 of file AccelTable.h.

Constructor & Destructor Documentation

◆ AccelTableBase() [1/2]

llvm::AccelTableBase::AccelTableBase ( HashFn * Hash)
inlineprotected

Definition at line 180 of file AccelTable.h.

References Hash.

Referenced by llvm::AccelTable< DataT >::AccelTable(), AccelTableBase(), and operator=().

◆ AccelTableBase() [2/2]

llvm::AccelTableBase::AccelTableBase ( const AccelTableBase & )
delete

References AccelTableBase().

Member Function Documentation

◆ computeBucketCount()

◆ dump()

void llvm::AccelTableBase::dump ( ) const
inline

Definition at line 191 of file AccelTable.h.

References llvm::dbgs(), and print().

◆ finalize()

◆ getBucketCount()

uint32_t llvm::AccelTableBase::getBucketCount ( ) const
inline

Definition at line 185 of file AccelTable.h.

References BucketCount.

◆ getBuckets()

ArrayRef< HashList > llvm::AccelTableBase::getBuckets ( ) const
inline

Definition at line 184 of file AccelTable.h.

References Buckets.

◆ getUniqueHashCount()

uint32_t llvm::AccelTableBase::getUniqueHashCount ( ) const
inline

Definition at line 186 of file AccelTable.h.

References UniqueHashCount.

◆ getUniqueNameCount()

uint32_t llvm::AccelTableBase::getUniqueNameCount ( ) const
inline

Definition at line 187 of file AccelTable.h.

References Entries.

◆ operator=()

void llvm::AccelTableBase::operator= ( const AccelTableBase & )
delete

References AccelTableBase().

◆ print()

void AccelTableBase::print ( raw_ostream & OS) const

Definition at line 793 of file AccelTable.cpp.

References Buckets, llvm::Data, Entries, and Hash.

Referenced by dump().

Member Data Documentation

◆ Allocator

BumpPtrAllocator llvm::AccelTableBase::Allocator
protected

Allocator for HashData and Values.

Definition at line 166 of file AccelTable.h.

Referenced by llvm::AccelTable< DataT >::addName().

◆ BucketCount

uint32_t llvm::AccelTableBase::BucketCount = 0
protected

Definition at line 172 of file AccelTable.h.

Referenced by computeBucketCount(), finalize(), and getBucketCount().

◆ Buckets

BucketList llvm::AccelTableBase::Buckets
protected

Definition at line 176 of file AccelTable.h.

Referenced by llvm::AccelTable< DataT >::addName(), finalize(), getBuckets(), and print().

◆ Entries

◆ Hash

HashFn* llvm::AccelTableBase::Hash
protected

Definition at line 171 of file AccelTable.h.

Referenced by AccelTableBase(), llvm::AccelTable< DataT >::addName(), and print().

◆ Hashes

HashList llvm::AccelTableBase::Hashes
protected

Definition at line 175 of file AccelTable.h.

◆ UniqueHashCount

uint32_t llvm::AccelTableBase::UniqueHashCount = 0
protected

Definition at line 173 of file AccelTable.h.

Referenced by computeBucketCount(), and getUniqueHashCount().


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