|
LLVM
4.0.0
|
#include "llvm/Analysis/CFLAndersAliasAnalysis.h"#include "CFLGraph.h"#include "llvm/ADT/DenseSet.h"#include "llvm/Pass.h"Go to the source code of this file.
Classes | |
| struct | llvm::DenseMapInfo< OffsetValue > |
| struct | llvm::DenseMapInfo< OffsetInstantiatedValue > |
| class | llvm::CFLAndersAAResult::FunctionInfo |
Namespaces | |
| llvm | |
| Compute iterated dominance frontiers using a linear time algorithm. | |
Macros | |
| #define | DEBUG_TYPE "cfl-anders-aa" |
Enumerations | |
| enum | MatchState : uint8_t |
Functions | |
| static const Function * | parentFunctionOfValue (const Value *Val) |
| static bool | hasReadOnlyState (StateSet Set) |
| static bool | hasWriteOnlyState (StateSet Set) |
| static Optional< InterfaceValue > | getInterfaceValue (InstantiatedValue IValue, const SmallVectorImpl< Value * > &RetVals) |
| static void | populateAttrMap (DenseMap< const Value *, AliasAttrs > &AttrMap, const AliasAttrMap &AMap) |
| static void | populateAliasMap (DenseMap< const Value *, std::vector< OffsetValue >> &AliasMap, const ReachabilitySet &ReachSet) |
| static void | populateExternalRelations (SmallVectorImpl< ExternalRelation > &ExtRelations, const Function &Fn, const SmallVectorImpl< Value * > &RetVals, const ReachabilitySet &ReachSet) |
| static void | populateExternalAttributes (SmallVectorImpl< ExternalAttribute > &ExtAttributes, const Function &Fn, const SmallVectorImpl< Value * > &RetVals, const AliasAttrMap &AMap) |
| static void | propagate (InstantiatedValue From, InstantiatedValue To, MatchState State, ReachabilitySet &ReachSet, std::vector< WorkListItem > &WorkList) |
| static void | initializeWorkList (std::vector< WorkListItem > &WorkList, ReachabilitySet &ReachSet, const CFLGraph &Graph) |
| static Optional < InstantiatedValue > | getNodeBelow (const CFLGraph &Graph, InstantiatedValue V) |
| static void | processWorkListItem (const WorkListItem &Item, const CFLGraph &Graph, ReachabilitySet &ReachSet, AliasMemSet &MemSet, std::vector< WorkListItem > &WorkList) |
| static AliasAttrMap | buildAttrMap (const CFLGraph &Graph, const ReachabilitySet &ReachSet) |
| INITIALIZE_PASS (CFLAndersAAWrapperPass,"cfl-anders-aa","Inclusion-Based CFL Alias Analysis", false, true) ImmutablePass *llvm | |
| #define DEBUG_TYPE "cfl-anders-aa" |
Definition at line 64 of file CFLAndersAliasAnalysis.cpp.
|
strong |
Definition at line 84 of file CFLAndersAliasAnalysis.cpp.
|
static |
Definition at line 705 of file CFLAndersAliasAnalysis.cpp.
References E, getNodeBelow(), I, and llvm::cflaa::CFLGraph::value_mappings().
|
static |
Definition at line 325 of file CFLAndersAliasAnalysis.cpp.
References llvm::cflaa::InstantiatedValue::DerefLevel, llvm::is_contained(), llvm::None, and llvm::cflaa::InstantiatedValue::Val.
Referenced by populateExternalAttributes(), and populateExternalRelations().
|
static |
Definition at line 597 of file CFLAndersAliasAnalysis.cpp.
References llvm::cflaa::InstantiatedValue::DerefLevel, None, and llvm::cflaa::InstantiatedValue::Val.
Referenced by buildAttrMap(), and processWorkListItem().
|
static |
Definition at line 316 of file CFLAndersAliasAnalysis.cpp.
Referenced by populateExternalRelations().
|
static |
Definition at line 320 of file CFLAndersAliasAnalysis.cpp.
Referenced by populateExternalRelations().
| INITIALIZE_PASS | ( | CFLAndersAAWrapperPass | , |
| "cfl-anders-aa" | , | ||
| "Inclusion-Based CFL Alias Analysis" | , | ||
| false | , | ||
| true | |||
| ) |
Definition at line 875 of file CFLAndersAliasAnalysis.cpp.
|
static |
Definition at line 574 of file CFLAndersAliasAnalysis.cpp.
References assert(), E, I, propagate(), and llvm::cflaa::CFLGraph::value_mappings().
Definition at line 71 of file CFLAndersAliasAnalysis.cpp.
References llvm::GlobalValue::getParent().
Referenced by llvm::CFLAndersAAResult::query().
|
static |
Definition at line 354 of file CFLAndersAliasAnalysis.cpp.
References llvm::cflaa::UnknownOffset.
Referenced by llvm::CFLAndersAAResult::FunctionInfo::FunctionInfo().
|
static |
Definition at line 340 of file CFLAndersAliasAnalysis.cpp.
Referenced by llvm::CFLAndersAAResult::FunctionInfo::FunctionInfo().
|
static |
Definition at line 459 of file CFLAndersAliasAnalysis.cpp.
References llvm::cflaa::getExternallyVisibleAttrs(), getInterfaceValue(), and llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back().
Referenced by llvm::CFLAndersAAResult::FunctionInfo::FunctionInfo().
|
static |
Definition at line 374 of file CFLAndersAliasAnalysis.cpp.
References llvm::Function::args(), getInterfaceValue(), hasReadOnlyState(), hasWriteOnlyState(), llvm::is_contained(), llvm::SmallVectorTemplateBase< T, isPodLike< T >::value >::push_back(), and llvm::cflaa::UnknownOffset.
Referenced by llvm::CFLAndersAAResult::FunctionInfo::FunctionInfo().
|
static |
Definition at line 605 of file CFLAndersAliasAnalysis.cpp.
References assert(), getNodeBelow(), and propagate().
|
static |
Definition at line 565 of file CFLAndersAliasAnalysis.cpp.
Referenced by initializeWorkList(), and processWorkListItem().
1.8.6