|
LLVM 24.0.0git
|
See the file comment. More...
#include "llvm/IR/ValueMap.h"
Public Types | |
| using | key_type = KeyT |
| using | mapped_type = ValueT |
| using | value_type = std::pair<KeyT, ValueT> |
| using | size_type = unsigned |
| using | iterator = ValueMapIteratorImpl<MapT, KeyT, false> |
| using | const_iterator = ValueMapIteratorImpl<MapT, KeyT, true> |
Public Member Functions | |
| ValueMap (unsigned NumInitBuckets=64) | |
| ValueMap (const ExtraData &Data, unsigned NumInitBuckets=64) | |
| ValueMap (const ValueMap &)=delete | |
| ValueMap (ValueMap &&)=delete | |
| ValueMap & | operator= (const ValueMap &)=delete |
| ValueMap & | operator= (ValueMap &&)=delete |
| bool | hasMD () const |
| MDMapT & | MD () |
| std::optional< MDMapT > & | getMDMap () |
| std::optional< Metadata * > | getMappedMD (const Metadata *MD) const |
| Get the mapped metadata, if it's in the map. | |
| iterator | begin () |
| iterator | end () |
| const_iterator | begin () const |
| const_iterator | end () const |
| bool | empty () const |
| size_type | size () const |
| void | reserve (size_t Size) |
| Grow the map so that it has at least Size buckets. Does not shrink. | |
| void | clear () |
| size_type | count (const KeyT &Val) const |
| Return 1 if the specified key is in the map, 0 otherwise. | |
| iterator | find (const KeyT &Val) |
| const_iterator | find (const KeyT &Val) const |
| ValueT | lookup (const KeyT &Val) const |
| lookup - Return the entry for the specified key, or a default constructed value if no such entry exists. | |
| std::pair< iterator, bool > | insert (const std::pair< KeyT, ValueT > &KV) |
| std::pair< iterator, bool > | insert (std::pair< KeyT, ValueT > &&KV) |
| template<typename InputIt> | |
| void | insert (InputIt I, InputIt E) |
| insert - Range insertion of pairs. | |
| bool | erase (const KeyT &Val) |
| void | erase (iterator I) |
| value_type & | FindAndConstruct (const KeyT &Key) |
| ValueT & | operator[] (const KeyT &Key) |
Public Attributes | |
| DMAtomT | AtomMap |
| Map {(InlinedAt, old atom number) -> new atom number}. | |
Friends | |
| class | ValueMapCallbackVH< KeyT, ValueT, Config > |
See the file comment.
Definition at line 84 of file ValueMap.h.
| using llvm::ValueMap< KeyT, ValueT, Config >::const_iterator = ValueMapIteratorImpl<MapT, KeyT, true> |
Definition at line 136 of file ValueMap.h.
| using llvm::ValueMap< KeyT, ValueT, Config >::iterator = ValueMapIteratorImpl<MapT, KeyT, false> |
Definition at line 135 of file ValueMap.h.
| using llvm::ValueMap< KeyT, ValueT, Config >::key_type = KeyT |
Definition at line 99 of file ValueMap.h.
| using llvm::ValueMap< KeyT, ValueT, Config >::mapped_type = ValueT |
Definition at line 100 of file ValueMap.h.
| using llvm::ValueMap< KeyT, ValueT, Config >::size_type = unsigned |
Definition at line 102 of file ValueMap.h.
| using llvm::ValueMap< KeyT, ValueT, Config >::value_type = std::pair<KeyT, ValueT> |
Definition at line 101 of file ValueMap.h.
|
inlineexplicit |
Definition at line 104 of file ValueMap.h.
|
inlineexplicit |
Definition at line 106 of file ValueMap.h.
|
delete |
|
delete |
|
inline |
Definition at line 138 of file ValueMap.h.
Referenced by AddAliasScopeMetadata(), llvm::UnrollAndJamLoop(), and llvm::UnrollLoop().
|
inline |
Definition at line 140 of file ValueMap.h.
|
inline |
Definition at line 149 of file ValueMap.h.
|
inline |
Return 1 if the specified key is in the map, 0 otherwise.
Definition at line 156 of file ValueMap.h.
Referenced by buildClonedLoops(), llvm::CloneAndPruneIntoFromInst(), llvm::CloneFunction(), llvm::CloneFunctionInto(), and llvm::updateProfileCallee().
|
inline |
Definition at line 143 of file ValueMap.h.
|
inline |
Definition at line 139 of file ValueMap.h.
Referenced by AddAliasScopeMetadata(), addPHINodeEntriesForMappedBlock(), llvm::JumpThreadingPass::cloneInstructions(), llvm::JumpThreadingPass::duplicateCondBranchOnPHIIntoPred(), llvm::DuplicateInstructionsInSplitBetween(), generateReproducer(), isDivergentUseWithNew(), llvm::prepareForDynamicDebugging(), llvm::remapDebugVariable(), llvm::UnrollAndJamLoop(), and llvm::UnrollLoop().
|
inline |
Definition at line 141 of file ValueMap.h.
|
inline |
Definition at line 189 of file ValueMap.h.
Referenced by CloneLoopBlocks(), and llvm::UnrollLoop().
|
inline |
Definition at line 197 of file ValueMap.h.
|
inline |
Definition at line 160 of file ValueMap.h.
Referenced by addPHINodeEntriesForMappedBlock(), llvm::JumpThreadingPass::cloneInstructions(), llvm::JumpThreadingPass::duplicateCondBranchOnPHIIntoPred(), llvm::DuplicateInstructionsInSplitBetween(), generateReproducer(), isDivergentUseWithNew(), llvm::prepareForDynamicDebugging(), llvm::remapDebugVariable(), and llvm::UnrollLoop().
|
inline |
Definition at line 161 of file ValueMap.h.
|
inline |
Definition at line 199 of file ValueMap.h.
|
inline |
Get the mapped metadata, if it's in the map.
Definition at line 126 of file ValueMap.h.
|
inline |
Definition at line 121 of file ValueMap.h.
|
inline |
Definition at line 115 of file ValueMap.h.
|
inline |
Definition at line 175 of file ValueMap.h.
Referenced by llvm::ValueMap< const Value *, WeakTrackingVH >::insert(), and InsertNewValueIntoMap().
|
inline |
insert - Range insertion of pairs.
Definition at line 184 of file ValueMap.h.
|
inline |
Definition at line 179 of file ValueMap.h.
|
inline |
lookup - Return the entry for the specified key, or a default constructed value if no such entry exists.
Definition at line 167 of file ValueMap.h.
Referenced by AddParamAndFnBasicAttributes(), AddReturnAttributes(), buildClonedLoopBlocks(), buildClonedLoops(), llvm::CloneAndPruneIntoFromInst(), CloneLoopBlocks(), cloneLoopNest(), ConnectEpilog(), ConnectProlog(), getNewDefiningAccessForClone(), operandWithNewAddressSpaceOrCreatePoison(), propagateAllocTokenMetadata(), RewriteUsesOfClonedInstructions(), llvm::UnrollRuntimeLoopRemainder(), updateCallerBFI(), and llvm::MemorySSAUpdater::updateForClonedLoop().
|
inline |
Definition at line 116 of file ValueMap.h.
|
delete |
|
delete |
|
inline |
Definition at line 203 of file ValueMap.h.
|
inline |
Grow the map so that it has at least Size buckets. Does not shrink.
Definition at line 147 of file ValueMap.h.
|
inline |
Definition at line 144 of file ValueMap.h.
|
friend |
Definition at line 76 of file ValueMap.h.
| DMAtomT llvm::ValueMap< KeyT, ValueT, Config >::AtomMap |
Map {(InlinedAt, old atom number) -> new atom number}.
Definition at line 123 of file ValueMap.h.
Referenced by llvm::mapAtomInstance(), llvm::RemapSourceAtom(), remapSourceAtoms(), llvm::SplitIndirectBrCriticalEdges(), and llvm::UnrollLoop().