LLVM API Documentation
LibCallAliasAnalysis - Alias analysis driven from LibCallInfo. More...
#include <LibCallAliasAnalysis.h>
Public Member Functions | |
LibCallAliasAnalysis (LibCallInfo *LC=nullptr) | |
LibCallAliasAnalysis (char &ID, LibCallInfo *LC) | |
~LibCallAliasAnalysis () | |
ModRefResult | getModRefInfo (ImmutableCallSite CS, const Location &Loc) override |
ModRefResult | getModRefInfo (ImmutableCallSite CS1, ImmutableCallSite CS2) override |
void | getAnalysisUsage (AnalysisUsage &AU) const override |
bool | runOnFunction (Function &F) override |
void * | getAdjustedAnalysisPointer (const void *PI) override |
Public Attributes | |
LibCallInfo * | LCI |
Static Public Attributes | |
static char | ID = 0 |
LibCallAliasAnalysis - Alias analysis driven from LibCallInfo.
Definition at line 25 of file LibCallAliasAnalysis.h.
llvm::LibCallAliasAnalysis::LibCallAliasAnalysis | ( | LibCallInfo * | LC = nullptr | ) | [inline, explicit] |
Definition at line 30 of file LibCallAliasAnalysis.h.
References llvm::PassRegistry::getPassRegistry(), and llvm::initializeLibCallAliasAnalysisPass().
llvm::LibCallAliasAnalysis::LibCallAliasAnalysis | ( | char & | ID, |
LibCallInfo * | LC | ||
) | [inline, explicit] |
Definition at line 34 of file LibCallAliasAnalysis.h.
References llvm::PassRegistry::getPassRegistry(), and llvm::initializeLibCallAliasAnalysisPass().
Definition at line 30 of file LibCallAliasAnalysis.cpp.
References LCI.
void* llvm::LibCallAliasAnalysis::getAdjustedAnalysisPointer | ( | const void * | PI | ) | [inline, override, virtual] |
getAdjustedAnalysisPointer - This method is used when a pass implements an analysis interface through multiple inheritance. If needed, it should override this to adjust the this pointer as needed for the specified pass info.
Reimplemented from llvm::Pass.
Definition at line 60 of file LibCallAliasAnalysis.h.
References llvm::AliasAnalysis::ID.
void LibCallAliasAnalysis::getAnalysisUsage | ( | AnalysisUsage & | AU | ) | const [override, virtual] |
getAnalysisUsage - All alias analysis implementations should invoke this directly (using AliasAnalysis::getAnalysisUsage(AU)).
Reimplemented from llvm::AliasAnalysis.
Definition at line 34 of file LibCallAliasAnalysis.cpp.
References llvm::AnalysisUsage::setPreservesAll().
AliasAnalysis::ModRefResult LibCallAliasAnalysis::getModRefInfo | ( | ImmutableCallSite | CS, |
const Location & | Loc | ||
) | [override, virtual] |
getModRefInfo (for call sites) - Return information about whether a particular call site modifies or reads the specified memory location.
Reimplemented from llvm::AliasAnalysis.
Definition at line 120 of file LibCallAliasAnalysis.cpp.
References F(), llvm::CallSiteBase< FunTy, ValTy, UserTy, InstrTy, CallTy, InvokeTy, IterTy >::getCalledFunction(), llvm::LibCallInfo::getFunctionInfo(), LCI, llvm::AliasAnalysis::ModRef, and llvm::AliasAnalysis::NoModRef.
Referenced by getModRefInfo().
ModRefResult llvm::LibCallAliasAnalysis::getModRefInfo | ( | ImmutableCallSite | CS1, |
ImmutableCallSite | CS2 | ||
) | [inline, override, virtual] |
getModRefInfo - Return information about whether two call sites may refer to the same set of memory locations. See http://llvm.org/docs/AliasAnalysis.html#ModRefInfo for details.
Reimplemented from llvm::AliasAnalysis.
Definition at line 43 of file LibCallAliasAnalysis.h.
References getModRefInfo().
bool llvm::LibCallAliasAnalysis::runOnFunction | ( | Function & | F | ) | [inline, override, virtual] |
runOnFunction - Virtual method overriden by subclasses to do the per-function processing of the pass.
Implements llvm::FunctionPass.
Definition at line 51 of file LibCallAliasAnalysis.h.
References llvm::AliasAnalysis::InitializeAliasAnalysis().
char LibCallAliasAnalysis::ID = 0 [static] |
Reimplemented from llvm::AliasAnalysis.
Definition at line 26 of file LibCallAliasAnalysis.h.
Definition at line 28 of file LibCallAliasAnalysis.h.
Referenced by getModRefInfo(), and ~LibCallAliasAnalysis().