LLVM 22.0.0git
llvm::detail::RecordKeeperImpl Struct Reference

This class represents the internal implementation of the RecordKeeper. More...

Public Member Functions

 RecordKeeperImpl (RecordKeeper &RK)
void dumpAllocationStats (raw_ostream &OS) const

Public Attributes

BumpPtrAllocator Allocator
std::vector< BitsRecTy * > SharedBitsRecTys
BitRecTy SharedBitRecTy
IntRecTy SharedIntRecTy
StringRecTy SharedStringRecTy
DagRecTy SharedDagRecTy
RecordRecTy AnyRecord
UnsetInit TheUnsetInit
BitInit TrueBitInit
BitInit FalseBitInit
FoldingSet< ArgumentInitTheArgumentInitPool
FoldingSet< BitsInitTheBitsInitPool
std::map< int64_t, IntInit * > TheIntInitPool
StringMap< const StringInit *, BumpPtrAllocator & > StringInitStringPool
StringMap< const StringInit *, BumpPtrAllocator & > StringInitCodePool
FoldingSet< ListInitTheListInitPool
FoldingSet< UnOpInitTheUnOpInitPool
FoldingSet< BinOpInitTheBinOpInitPool
FoldingSet< TernOpInitTheTernOpInitPool
FoldingSet< FoldOpInitTheFoldOpInitPool
FoldingSet< IsAOpInitTheIsAOpInitPool
FoldingSet< ExistsOpInitTheExistsOpInitPool
FoldingSet< InstancesOpInitTheInstancesOpInitPool
DenseMap< std::pair< const RecTy *, const Init * >, VarInit * > TheVarInitPool
DenseMap< std::pair< const TypedInit *, unsigned >, VarBitInit * > TheVarBitInitPool
FoldingSet< VarDefInitTheVarDefInitPool
DenseMap< std::pair< const Init *, const StringInit * >, FieldInit * > TheFieldInitPool
FoldingSet< CondOpInitTheCondOpInitPool
FoldingSet< DagInitTheDagInitPool
FoldingSet< RecordRecTyRecordTypePool
unsigned AnonCounter
unsigned LastRecordID

Detailed Description

This class represents the internal implementation of the RecordKeeper.

It contains all of the contextual static state of the Record classes. It is kept out-of-line to simplify dependencies, and also make it easier for internal classes to access the uniquer state of the keeper.

Definition at line 55 of file Record.cpp.

Constructor & Destructor Documentation

◆ RecordKeeperImpl()

llvm::detail::RecordKeeperImpl::RecordKeeperImpl ( RecordKeeper & RK)
inline

Definition at line 56 of file Record.cpp.

References AnyRecord, SharedBitRecTy, SharedDagRecTy, SharedIntRecTy, and SharedStringRecTy.

Member Function Documentation

◆ dumpAllocationStats()

Member Data Documentation

◆ Allocator

◆ AnonCounter

unsigned llvm::detail::RecordKeeperImpl::AnonCounter

Definition at line 98 of file Record.cpp.

Referenced by dumpAllocationStats().

◆ AnyRecord

RecordRecTy llvm::detail::RecordKeeperImpl::AnyRecord

Definition at line 70 of file Record.cpp.

Referenced by llvm::RecordRecTy::get(), and RecordKeeperImpl().

◆ FalseBitInit

BitInit llvm::detail::RecordKeeperImpl::FalseBitInit

Definition at line 73 of file Record.cpp.

Referenced by llvm::BitInit::get().

◆ LastRecordID

unsigned llvm::detail::RecordKeeperImpl::LastRecordID

Definition at line 99 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::Record::getNewUID().

◆ RecordTypePool

FoldingSet<RecordRecTy> llvm::detail::RecordKeeperImpl::RecordTypePool

Definition at line 96 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::RecordRecTy::get().

◆ SharedBitRecTy

BitRecTy llvm::detail::RecordKeeperImpl::SharedBitRecTy

Definition at line 65 of file Record.cpp.

Referenced by RecordKeeperImpl().

◆ SharedBitsRecTys

std::vector<BitsRecTy *> llvm::detail::RecordKeeperImpl::SharedBitsRecTys

Definition at line 64 of file Record.cpp.

Referenced by llvm::BitsRecTy::get().

◆ SharedDagRecTy

DagRecTy llvm::detail::RecordKeeperImpl::SharedDagRecTy

Definition at line 68 of file Record.cpp.

Referenced by RecordKeeperImpl().

◆ SharedIntRecTy

IntRecTy llvm::detail::RecordKeeperImpl::SharedIntRecTy

Definition at line 66 of file Record.cpp.

Referenced by RecordKeeperImpl().

◆ SharedStringRecTy

StringRecTy llvm::detail::RecordKeeperImpl::SharedStringRecTy

Definition at line 67 of file Record.cpp.

Referenced by RecordKeeperImpl().

◆ StringInitCodePool

StringMap<const StringInit *, BumpPtrAllocator &> llvm::detail::RecordKeeperImpl::StringInitCodePool

Definition at line 79 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::StringInit::get().

◆ StringInitStringPool

StringMap<const StringInit *, BumpPtrAllocator &> llvm::detail::RecordKeeperImpl::StringInitStringPool

Definition at line 78 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::StringInit::get().

◆ TheArgumentInitPool

FoldingSet<ArgumentInit> llvm::detail::RecordKeeperImpl::TheArgumentInitPool

Definition at line 75 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::ArgumentInit::get().

◆ TheBinOpInitPool

FoldingSet<BinOpInit> llvm::detail::RecordKeeperImpl::TheBinOpInitPool

Definition at line 82 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::BinOpInit::get().

◆ TheBitsInitPool

FoldingSet<BitsInit> llvm::detail::RecordKeeperImpl::TheBitsInitPool

Definition at line 76 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::BitsInit::get().

◆ TheCondOpInitPool

FoldingSet<CondOpInit> llvm::detail::RecordKeeperImpl::TheCondOpInitPool

Definition at line 94 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::CondOpInit::get().

◆ TheDagInitPool

FoldingSet<DagInit> llvm::detail::RecordKeeperImpl::TheDagInitPool

Definition at line 95 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::DagInit::get().

◆ TheExistsOpInitPool

FoldingSet<ExistsOpInit> llvm::detail::RecordKeeperImpl::TheExistsOpInitPool

Definition at line 86 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::ExistsOpInit::get().

◆ TheFieldInitPool

DenseMap<std::pair<const Init *, const StringInit *>, FieldInit *> llvm::detail::RecordKeeperImpl::TheFieldInitPool

Definition at line 93 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::FieldInit::get().

◆ TheFoldOpInitPool

FoldingSet<FoldOpInit> llvm::detail::RecordKeeperImpl::TheFoldOpInitPool

Definition at line 84 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::FoldOpInit::get().

◆ TheInstancesOpInitPool

FoldingSet<InstancesOpInit> llvm::detail::RecordKeeperImpl::TheInstancesOpInitPool

Definition at line 87 of file Record.cpp.

Referenced by llvm::InstancesOpInit::get().

◆ TheIntInitPool

std::map<int64_t, IntInit *> llvm::detail::RecordKeeperImpl::TheIntInitPool

Definition at line 77 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::IntInit::get().

◆ TheIsAOpInitPool

FoldingSet<IsAOpInit> llvm::detail::RecordKeeperImpl::TheIsAOpInitPool

Definition at line 85 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::IsAOpInit::get().

◆ TheListInitPool

FoldingSet<ListInit> llvm::detail::RecordKeeperImpl::TheListInitPool

Definition at line 80 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::ListInit::get().

◆ TheTernOpInitPool

FoldingSet<TernOpInit> llvm::detail::RecordKeeperImpl::TheTernOpInitPool

Definition at line 83 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::TernOpInit::get().

◆ TheUnOpInitPool

FoldingSet<UnOpInit> llvm::detail::RecordKeeperImpl::TheUnOpInitPool

Definition at line 81 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::UnOpInit::get().

◆ TheUnsetInit

UnsetInit llvm::detail::RecordKeeperImpl::TheUnsetInit

Definition at line 71 of file Record.cpp.

◆ TheVarBitInitPool

DenseMap<std::pair<const TypedInit *, unsigned>, VarBitInit *> llvm::detail::RecordKeeperImpl::TheVarBitInitPool

Definition at line 90 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::VarBitInit::get().

◆ TheVarDefInitPool

FoldingSet<VarDefInit> llvm::detail::RecordKeeperImpl::TheVarDefInitPool

Definition at line 91 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::VarDefInit::get().

◆ TheVarInitPool

DenseMap<std::pair<const RecTy *, const Init *>, VarInit *> llvm::detail::RecordKeeperImpl::TheVarInitPool

Definition at line 88 of file Record.cpp.

Referenced by dumpAllocationStats(), and llvm::VarInit::get().

◆ TrueBitInit

BitInit llvm::detail::RecordKeeperImpl::TrueBitInit

Definition at line 72 of file Record.cpp.

Referenced by llvm::BitInit::get().


The documentation for this struct was generated from the following file: