LLVM 20.0.0git
|
Mapping from DebugVariable to/from a unique identifying number. More...
#include "CodeGen/LiveDebugValues/InstrRefBasedImpl.h"
Public Member Functions | |
DebugVariableID | getDVID (const DebugVariable &Var) const |
DebugVariableID | insertDVID (DebugVariable &Var, const DILocation *Loc) |
const VarAndLoc & | lookupDVID (DebugVariableID ID) const |
void | clear () |
Mapping from DebugVariable to/from a unique identifying number.
Each DebugVariable consists of three pointers, and after a small amount of work to identify overlapping fragments of variables we mostly only use DebugVariables as identities of variables. It's much more compile-time efficient to use an ID number instead, which this class provides.
Definition at line 46 of file InstrRefBasedImpl.h.
|
inline |
Definition at line 70 of file InstrRefBasedImpl.h.
References llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::clear(), and llvm::SmallVectorImpl< T >::clear().
|
inline |
Definition at line 51 of file InstrRefBasedImpl.h.
References assert(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::end(), and llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::find().
Referenced by TransferTracker::redefVar().
|
inline |
Definition at line 57 of file InstrRefBasedImpl.h.
References llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::insert(), llvm::SmallVectorTemplateBase< T, bool >::push_back(), llvm::DenseMapBase< DerivedT, KeyT, ValueT, KeyInfoT, BucketT >::size(), and Size.
Referenced by LiveDebugValues::VLocTracker::considerOverlaps(), and LiveDebugValues::VLocTracker::defVar().
|
inline |
Definition at line 68 of file InstrRefBasedImpl.h.
Referenced by TransferTracker::checkInstForNewValues(), TransferTracker::clobberMloc(), TransferTracker::loadVarInloc(), TransferTracker::recoverAsEntryValue(), and TransferTracker::transferMlocs().