LLVM  8.0.1
Classes | Namespaces | Functions | Variables
AliasAnalysisEvaluator.cpp File Reference
#include "llvm/Analysis/AliasAnalysisEvaluator.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/InstIterator.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
Include dependency graph for AliasAnalysisEvaluator.cpp:

Go to the source code of this file.

Classes

class  llvm::AAEvalLegacyPass
 

Namespaces

 llvm
 This class represents lattice values for constants.
 

Functions

static void PrintResults (AliasResult AR, bool P, const Value *V1, const Value *V2, const Module *M)
 
static void PrintModRefResults (const char *Msg, bool P, Instruction *I, Value *Ptr, Module *M)
 
static void PrintModRefResults (const char *Msg, bool P, CallBase *CallA, CallBase *CallB, Module *M)
 
static void PrintLoadStoreResults (AliasResult AR, bool P, const Value *V1, const Value *V2, const Module *M)
 
static bool isInterestingPointer (Value *V)
 
static void PrintPercent (int64_t Num, int64_t Sum)
 
 INITIALIZE_PASS_BEGIN (AAEvalLegacyPass, "aa-eval", "Exhaustive Alias Analysis Precision Evaluator", false, true) INITIALIZE_PASS_END(AAEvalLegacyPass
 

Variables

static cl::opt< boolPrintAll ("print-all-alias-modref-info", cl::ReallyHidden)
 
static cl::opt< boolPrintNoAlias ("print-no-aliases", cl::ReallyHidden)
 
static cl::opt< boolPrintMayAlias ("print-may-aliases", cl::ReallyHidden)
 
static cl::opt< boolPrintPartialAlias ("print-partial-aliases", cl::ReallyHidden)
 
static cl::opt< boolPrintMustAlias ("print-must-aliases", cl::ReallyHidden)
 
static cl::opt< boolPrintNoModRef ("print-no-modref", cl::ReallyHidden)
 
static cl::opt< boolPrintRef ("print-ref", cl::ReallyHidden)
 
static cl::opt< boolPrintMod ("print-mod", cl::ReallyHidden)
 
static cl::opt< boolPrintModRef ("print-modref", cl::ReallyHidden)
 
static cl::opt< boolPrintMust ("print-must", cl::ReallyHidden)
 
static cl::opt< boolPrintMustRef ("print-mustref", cl::ReallyHidden)
 
static cl::opt< boolPrintMustMod ("print-mustmod", cl::ReallyHidden)
 
static cl::opt< boolPrintMustModRef ("print-mustmodref", cl::ReallyHidden)
 
static cl::opt< boolEvalAAMD ("evaluate-aa-metadata", cl::ReallyHidden)
 
aa eval
 
aa Exhaustive Alias Analysis Precision Evaluator
 
aa Exhaustive Alias Analysis Precision false
 

Function Documentation

◆ INITIALIZE_PASS_BEGIN()

INITIALIZE_PASS_BEGIN ( AAEvalLegacyPass  ,
"aa-eval ,
"Exhaustive Alias Analysis Precision Evaluator ,
false  ,
true   
)

◆ isInterestingPointer()

static bool isInterestingPointer ( Value V)
inlinestatic

Definition at line 84 of file AliasAnalysisEvaluator.cpp.

References llvm::Value::getType(), and llvm::Type::isPointerTy().

Referenced by llvm::AAEvaluator::run().

◆ PrintLoadStoreResults()

static void PrintLoadStoreResults ( AliasResult  AR,
bool  P,
const Value V1,
const Value V2,
const Module M 
)
inlinestatic

Definition at line 76 of file AliasAnalysisEvaluator.cpp.

References llvm::errs(), and PrintAll.

Referenced by llvm::AAEvaluator::run().

◆ PrintModRefResults() [1/2]

static void PrintModRefResults ( const char Msg,
bool  P,
Instruction I,
Value Ptr,
Module M 
)
inlinestatic

Definition at line 60 of file AliasAnalysisEvaluator.cpp.

References llvm::errs(), PrintAll, and llvm::Value::printAsOperand().

Referenced by llvm::AAEvaluator::run().

◆ PrintModRefResults() [2/2]

static void PrintModRefResults ( const char Msg,
bool  P,
CallBase CallA,
CallBase CallB,
Module M 
)
inlinestatic

Definition at line 69 of file AliasAnalysisEvaluator.cpp.

References llvm::errs(), and PrintAll.

◆ PrintPercent()

static void PrintPercent ( int64_t  Num,
int64_t  Sum 
)
static

Definition at line 329 of file AliasAnalysisEvaluator.cpp.

References llvm::errs().

Referenced by llvm::AAEvaluator::~AAEvaluator().

◆ PrintResults()

static void PrintResults ( AliasResult  AR,
bool  P,
const Value V1,
const Value V2,
const Module M 
)
static

Variable Documentation

◆ eval

aa eval

Definition at line 431 of file AliasAnalysisEvaluator.cpp.

◆ EvalAAMD

cl::opt<bool> EvalAAMD("evaluate-aa-metadata", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ Evaluator

aa Exhaustive Alias Analysis Precision Evaluator

Definition at line 431 of file AliasAnalysisEvaluator.cpp.

◆ false

aa Exhaustive Alias Analysis Precision false

Definition at line 431 of file AliasAnalysisEvaluator.cpp.

◆ PrintAll

cl::opt<bool> PrintAll("print-all-alias-modref-info", cl::ReallyHidden)
static

◆ PrintMayAlias

cl::opt<bool> PrintMayAlias("print-may-aliases", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintMod

cl::opt<bool> PrintMod("print-mod", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintModRef

cl::opt<bool> PrintModRef("print-modref", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintMust

cl::opt<bool> PrintMust("print-must", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintMustAlias

cl::opt<bool> PrintMustAlias("print-must-aliases", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintMustMod

cl::opt<bool> PrintMustMod("print-mustmod", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintMustModRef

cl::opt<bool> PrintMustModRef("print-mustmodref", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintMustRef

cl::opt<bool> PrintMustRef("print-mustref", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintNoAlias

cl::opt<bool> PrintNoAlias("print-no-aliases", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintNoModRef

cl::opt<bool> PrintNoModRef("print-no-modref", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintPartialAlias

cl::opt<bool> PrintPartialAlias("print-partial-aliases", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().

◆ PrintRef

cl::opt<bool> PrintRef("print-ref", cl::ReallyHidden)
static

Referenced by llvm::AAEvaluator::run().