LLVM 20.0.0git
|
Provide an iterator that walks defs, giving both the memory access, and the current pointer location, updating the pointer location as it changes due to phi node translation. More...
#include "llvm/Analysis/MemorySSA.h"
Additional Inherited Members | |
Public Types inherited from llvm::iterator_facade_base< upward_defs_iterator, std::forward_iterator_tag, const MemoryAccessPair > | |
using | iterator_category = std::forward_iterator_tag |
using | value_type = const MemoryAccessPair |
using | difference_type = std::ptrdiff_t |
using | pointer = const MemoryAccessPair * |
using | reference = const MemoryAccessPair & |
Protected Types inherited from llvm::iterator_facade_base< upward_defs_iterator, std::forward_iterator_tag, const MemoryAccessPair > | |
enum | |
Provide an iterator that walks defs, giving both the memory access, and the current pointer location, updating the pointer location as it changes due to phi node translation.
This iterator, while somewhat specialized, is what most clients actually want when walking upwards through MemorySSA def chains. It takes a pair of <MemoryAccess,MemoryLocation>, and walks defs, properly translating the memory location through phi nodes for the user.
Definition at line 1216 of file MemorySSA.h.
|
inline |
Definition at line 1223 of file MemorySSA.h.
References Info.
|
inline |
Definition at line 1232 of file MemorySSA.h.
|
inline |
Definition at line 1254 of file MemorySSA.h.
References llvm::memoryaccess_def_iterator_base< T >::getPhiArgBlock().
|
inline |
Definition at line 1238 of file MemorySSA.h.
References assert(), and llvm::MemoryAccess::defs_end().
|
inline |
Definition at line 1245 of file MemorySSA.h.
References assert(), and llvm::MemoryAccess::defs_end().
|
inline |
Definition at line 1234 of file MemorySSA.h.
References llvm::Other.