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.
Synopsis
Declared in <llvm/Analysis/MemorySSA.h>
class upward_defs_iterator
: public iterator_facade_base<upward_defs_iterator, std::forward_iterator_tag, UpwardDefsElem const>
Description
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.
Base Classes
Name |
Description |
CRTP base class which implements the entire standard iterator facade in terms of a minimal subset of the interface. |
Type Aliases
Name |
Description |
Signed type used to express the distance between iterators. |
|
Iterator category tag for this facade. |
|
Pointer type returned by the iterator. |
|
Reference type returned by the iterator. |
|
Value type produced by the iterator. |
Enums
Name |
Description |
Capability flags for the iterator category. |
Member Functions
Name |
Description |
|
Constructors |
Advance the iterator by |
|
Post‐increment the iterator and return the previous value. |
|
Retreat the iterator by |
|
Decrement operators |
|
Return a proxy pointer to the current element. |
|
Return a proxy to the element at offset |
|
Equality operator |
|
Return true if this iterator is less than or equal to |
|
Return true if this iterator is greater than |
|
Return true if this iterator is greater than or equal to |
Using Declarations
Name |
Protected Types
Name |
Description |
Proxy that yields a pointer from a copied reference. |
|
Proxy that yields a reference from a copied iterator. |
Non-Member Functions
Name |
Description |
Return an iterator |
Created with MrDocs