Generic walker interface for further disambiguating MemorySSA def‐use chains.
Synopsis
Declared in <llvm/Analysis/MemorySSA.h>
class MemorySSAWalker;
Description
Walkers are used to be able to further disambiguate the def‐use chains MemorySSA gives you, or otherwise produce better info than MemorySSA gives you. In particular, while the def‐use chains provide basic information, and are guaranteed to give, for example, the nearest may‐aliasing MemoryDef for a MemoryUse as AliasAnalysis considers it, a user mant want better or other information. In particular, they may want to use SCEV info to further disambiguate memory accesses, or they may want the nearest dominating may‐aliasing MemoryDef for a call or a store. This API enables a standardized interface to getting and using that info.
Type Aliases
Name |
Description |
Small vector of MemoryAccess pointers returned by some walker queries. |
Member Functions
Name |
Description |
|
Construct a walker bound to MemorySSA instance |
|
Destroy this walker. |
|
|
|
Invalidate cached walker info for memory access |
Protected Data Members
Name |
Description |
MemorySSA instance this walker is bound to. |
Friends
Name |
Description |
Encapsulates MemorySSA, including all data associated with memory accesses. |
Derived Classes
Name |
Description |
MemorySSAWalker that returns builder links without alias queries. |
Created with MrDocs