LLVM API Documentation


Public Member Functions | |
| BasicAliasAnalysis () | |
| AliasResult | alias (const Value *V1, unsigned V1Size, const Value *V2, unsigned V2Size) |
| ModRefResult | getModRefInfo (CallSite CS, Value *P, unsigned Size) |
| ModRefResult | getModRefInfo (CallSite CS1, CallSite CS2) |
| virtual bool | hasNoModRefInfoForCalls () const |
| bool | pointsToConstantMemory (const Value *P) |
Static Public Attributes | |
| char | ID = 0 |
Definition at line 270 of file BasicAliasAnalysis.cpp.
|
|
Definition at line 272 of file BasicAliasAnalysis.cpp. |
|
||||||||||||||||||||
|
alias - The main low level interface to the alias analysis implementation. Returns a Result indicating whether the two pointers are aliased to each other. This is the interface that must be implemented by specific alias analysis implementations. Reimplemented from NoAA. Definition at line 370 of file BasicAliasAnalysis.cpp. References GetGEPOperands(), llvm::TargetData::getIndexedOffset(), llvm::User::getOperand(), llvm::Constant::getOperand(), llvm::AliasAnalysis::getTargetData(), llvm::Intrinsic::getType(), llvm::Value::getType(), getUnderlyingObject(), llvm::ConstantExpr::isCast(), isGEP(), isIdentifiedObject(), isKnownNonNull(), isNonEscapingLocalObject(), llvm::Constant::isNullValue(), isObjectSmallerThan(), llvm::SmallVectorImpl< T >::size(), and std::swap(). Referenced by getModRefInfo(). |
|
||||||||||||
|
getModRefInfo - Return information about whether two call sites may refer to the same set of memory locations. This function returns NoModRef if the two calls refer to disjoint memory locations, Ref if CS1 reads memory written by CS2, Mod if CS1 writes to memory read or written by CS2, or ModRef if CS1 might read or write memory accessed by CS2. Reimplemented from NoAA. Definition at line 277 of file BasicAliasAnalysis.cpp. References NoAA::getModRefInfo(). |
|
||||||||||||||||
|
getModRefInfo (for call sites) - Return whether information about whether a particular call site modifies or reads the memory specified by the pointer. Reimplemented from NoAA. Definition at line 329 of file BasicAliasAnalysis.cpp. References alias(), llvm::CallSite::arg_begin(), llvm::CallSite::arg_end(), llvm::CallSite::arg_iterator, llvm::CallSite::getInstruction(), getUnderlyingObject(), isNonEscapingLocalObject(), and llvm::CallInst::isTailCall(). |
|
|
hasNoModRefInfoForCalls - We can provide mod/ref information against non-escaping allocations. Reimplemented from NoAA. Definition at line 283 of file BasicAliasAnalysis.cpp. |
|
|
pointsToConstantMemory - Chase pointers until we find a (constant global) or not. Reimplemented from NoAA. Definition at line 316 of file BasicAliasAnalysis.cpp. References getUnderlyingObject(), and llvm::GlobalVariable::isConstant(). |
|
|
Reimplemented from NoAA. Definition at line 302 of file BasicAliasAnalysis.cpp. |