class DoNothingMemorySSAWalker
Declaration
class DoNothingMemorySSAWalker : public MemorySSAWalker { /* full declaration omitted */ };
Description
A MemorySSAWalker that does no alias queries, or anything else. It simply returns the links as they were constructed by the builder.
Declared at: llvm/include/llvm/Analysis/MemorySSA.h:1063
Inherits from: MemorySSAWalker
Member Variables
Inherited from MemorySSAWalker:
Method Overview
- public llvm::MemoryAccess * getClobberingMemoryAccess(llvm::MemoryAccess *)
- public llvm::MemoryAccess * getClobberingMemoryAccess(llvm::MemoryAccess *, const llvm::MemoryLocation &)
Inherited from MemorySSAWalker:
- public getClobberingMemoryAccess
- public getClobberingMemoryAccess
- public getClobberingMemoryAccess
- public invalidateInfo
Methods
¶llvm::MemoryAccess* getClobberingMemoryAccess(
llvm::MemoryAccess*)
llvm::MemoryAccess* getClobberingMemoryAccess(
llvm::MemoryAccess*)
Description
Does the same thing as getClobberingMemoryAccess(const Instruction *I), but takes a MemoryAccess instead of an Instruction.
Declared at: llvm/include/llvm/Analysis/MemorySSA.h:1069
Parameters
¶llvm::MemoryAccess* getClobberingMemoryAccess(
llvm::MemoryAccess*,
const llvm::MemoryLocation&)
llvm::MemoryAccess* getClobberingMemoryAccess(
llvm::MemoryAccess*,
const llvm::MemoryLocation&)
Description
Given a potentially clobbering memory access and a new location, calling this will give you the nearest dominating clobbering MemoryAccess (by skipping non-aliasing def links). This version of the function is mainly used to disambiguate phi translated pointers, where the value of a pointer may have changed from the initial memory access. Note that this expects to be handed either a MemoryUse, or an already potentially clobbering access. Unlike the above API, if given a MemoryDef that clobbers the pointer as the starting access, it will return that MemoryDef, whereas the above would return the clobber starting from the use side of the memory def.
Declared at: llvm/include/llvm/Analysis/MemorySSA.h:1070