LLVM 18.0.0git
|
#include "IR/ConstantsContext.h"
Public Types | |
using | ValType = typename ConstantInfo< ConstantClass >::ValType |
using | TypeClass = typename ConstantInfo< ConstantClass >::TypeClass |
using | LookupKey = std::pair< TypeClass *, ValType > |
using | LookupKeyHashed = std::pair< unsigned, LookupKey > |
Key and hash together, so that we compute the hash only once and reuse it. | |
using | MapTy = DenseSet< ConstantClass *, MapInfo > |
Public Member Functions | |
MapTy::iterator | begin () |
MapTy::iterator | end () |
void | freeConstants () |
ConstantClass * | getOrCreate (TypeClass *Ty, ValType V) |
Return the specified constant from the map, creating it if necessary. | |
void | remove (ConstantClass *CP) |
Remove this constant from the map. | |
ConstantClass * | replaceOperandsInPlace (ArrayRef< Constant * > Operands, ConstantClass *CP, Value *From, Constant *To, unsigned NumUpdated=0, unsigned OperandNo=~0u) |
void | dump () const |
void | freeConstants () |
Definition at line 518 of file ConstantsContext.h.
using llvm::ConstantUniqueMap< ConstantClass >::LookupKey = std::pair<TypeClass *, ValType> |
Definition at line 522 of file ConstantsContext.h.
using llvm::ConstantUniqueMap< ConstantClass >::LookupKeyHashed = std::pair<unsigned, LookupKey> |
Key and hash together, so that we compute the hash only once and reuse it.
Definition at line 525 of file ConstantsContext.h.
using llvm::ConstantUniqueMap< ConstantClass >::MapTy = DenseSet<ConstantClass *, MapInfo> |
Definition at line 570 of file ConstantsContext.h.
using llvm::ConstantUniqueMap< ConstantClass >::TypeClass = typename ConstantInfo<ConstantClass>::TypeClass |
Definition at line 521 of file ConstantsContext.h.
using llvm::ConstantUniqueMap< ConstantClass >::ValType = typename ConstantInfo<ConstantClass>::ValType |
Definition at line 520 of file ConstantsContext.h.
|
inline |
Definition at line 576 of file ConstantsContext.h.
|
inline |
Definition at line 649 of file ConstantsContext.h.
References llvm::dbgs(), and LLVM_DEBUG.
|
inline |
Definition at line 577 of file ConstantsContext.h.
|
inline |
Definition at line 579 of file ConstantsContext.h.
References llvm::deleteConstant(), and I.
Referenced by llvm::LLVMContextImpl::~LLVMContextImpl().
|
inline |
Definition at line 654 of file ConstantsContext.h.
References I.
|
inline |
Return the specified constant from the map, creating it if necessary.
Hash once, and reuse it for the lookup and the insertion if needed.
Definition at line 596 of file ConstantsContext.h.
References assert(), I, and Lookup().
Referenced by llvm::ConstantVector::get(), and llvm::ConstantArray::get().
|
inline |
Remove this constant from the map.
Definition at line 614 of file ConstantsContext.h.
Referenced by llvm::ConstantUniqueMap< ConstantClass >::replaceOperandsInPlace().
|
inline |
Hash once, and reuse it for the lookup and the insertion if needed.
Definition at line 621 of file ConstantsContext.h.
References assert(), E, From, I, Lookup(), Operands, and llvm::ConstantUniqueMap< ConstantClass >::remove().