LLVM
8.0.1
|
A simple AA result that uses TBAA metadata to answer queries. More...
#include "llvm/Analysis/TypeBasedAliasAnalysis.h"
Additional Inherited Members | |
Protected Member Functions inherited from llvm::AAResultBase< TypeBasedAAResult > | |
AAResultBase ()=default | |
AAResultBase (const AAResultBase &Arg) | |
AAResultBase (AAResultBase &&Arg) | |
AAResultsProxy | getBestAAResults () |
Get a proxy for the best AA result set to query at this time. More... | |
A simple AA result that uses TBAA metadata to answer queries.
Definition at line 32 of file TypeBasedAliasAnalysis.h.
AliasResult TypeBasedAAResult::alias | ( | const MemoryLocation & | LocA, |
const MemoryLocation & | LocB | ||
) |
Definition at line 370 of file TypeBasedAliasAnalysis.cpp.
References llvm::MemoryLocation::AATags, llvm::AAResultBase< DerivedT >::alias(), EnableTBAA, llvm::NoAlias, and llvm::AAMDNodes::TBAA.
Referenced by invalidate().
FunctionModRefBehavior TypeBasedAAResult::getModRefBehavior | ( | const CallBase * | Call | ) |
Definition at line 402 of file TypeBasedAliasAnalysis.cpp.
References EnableTBAA, llvm::FMRB_OnlyReadsMemory, llvm::FMRB_UnknownModRefBehavior, llvm::Instruction::getMetadata(), llvm::AAResultBase< DerivedT >::getModRefBehavior(), isStructPathTBAA(), and llvm::LLVMContext::MD_tbaa.
Referenced by invalidate().
FunctionModRefBehavior TypeBasedAAResult::getModRefBehavior | ( | const Function * | F | ) |
Definition at line 418 of file TypeBasedAliasAnalysis.cpp.
References llvm::AAResultBase< DerivedT >::getModRefBehavior().
ModRefInfo TypeBasedAAResult::getModRefInfo | ( | const CallBase * | Call, |
const MemoryLocation & | Loc | ||
) |
Definition at line 423 of file TypeBasedAliasAnalysis.cpp.
References llvm::MemoryLocation::AATags, EnableTBAA, llvm::Instruction::getMetadata(), llvm::AAResultBase< DerivedT >::getModRefInfo(), llvm::LLVMContext::MD_tbaa, llvm::NoModRef, and llvm::AAMDNodes::TBAA.
Referenced by invalidate().
ModRefInfo TypeBasedAAResult::getModRefInfo | ( | const CallBase * | Call1, |
const CallBase * | Call2 | ||
) |
Definition at line 436 of file TypeBasedAliasAnalysis.cpp.
References EnableTBAA, llvm::Instruction::getMetadata(), llvm::AAResultBase< DerivedT >::getModRefInfo(), llvm::LLVMContext::MD_tbaa, and llvm::NoModRef.
|
inline |
Handle invalidation events from the new pass manager.
By definition, this result is stateless and so remains valid.
Definition at line 39 of file TypeBasedAliasAnalysis.h.
References alias(), B, F(), getModRefBehavior(), getModRefInfo(), and pointsToConstantMemory().
bool TypeBasedAAResult::pointsToConstantMemory | ( | const MemoryLocation & | Loc, |
bool | OrLocal | ||
) |
Definition at line 383 of file TypeBasedAliasAnalysis.cpp.
References llvm::MemoryLocation::AATags, EnableTBAA, isStructPathTBAA(), llvm::AAResultBase< DerivedT >::pointsToConstantMemory(), and llvm::AAMDNodes::TBAA.
Referenced by invalidate().