LLVM  14.0.0git
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/InitializePasses.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
 ---------------------— PointerInfo ------------------------------------—
 

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< bool > PrintAll ("print-all-alias-modref-info", cl::ReallyHidden)
 
static cl::opt< bool > PrintNoAlias ("print-no-aliases", cl::ReallyHidden)
 
static cl::opt< bool > PrintMayAlias ("print-may-aliases", cl::ReallyHidden)
 
static cl::opt< bool > PrintPartialAlias ("print-partial-aliases", cl::ReallyHidden)
 
static cl::opt< bool > PrintMustAlias ("print-must-aliases", cl::ReallyHidden)
 
static cl::opt< bool > PrintNoModRef ("print-no-modref", cl::ReallyHidden)
 
static cl::opt< bool > PrintRef ("print-ref", cl::ReallyHidden)
 
static cl::opt< bool > PrintMod ("print-mod", cl::ReallyHidden)
 
static cl::opt< bool > PrintModRef ("print-modref", cl::ReallyHidden)
 
static cl::opt< bool > PrintMust ("print-must", cl::ReallyHidden)
 
static cl::opt< bool > PrintMustRef ("print-mustref", cl::ReallyHidden)
 
static cl::opt< bool > PrintMustMod ("print-mustmod", cl::ReallyHidden)
 
static cl::opt< bool > PrintMustModRef ("print-mustmodref", cl::ReallyHidden)
 
static cl::opt< bool > EvalAAMD ("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 87 of file AliasAnalysisEvaluator.cpp.

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

◆ PrintLoadStoreResults()

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

Definition at line 79 of file AliasAnalysisEvaluator.cpp.

References llvm::errs(), P, PrintAll, and llvm::NVPTX::PTXLdStInstCode::V2.

◆ PrintModRefResults() [1/2]

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

Definition at line 72 of file AliasAnalysisEvaluator.cpp.

References llvm::errs(), P, and PrintAll.

◆ PrintModRefResults() [2/2]

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

Definition at line 63 of file AliasAnalysisEvaluator.cpp.

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

◆ PrintPercent()

static void PrintPercent ( int64_t  Num,
int64_t  Sum 
)
static

Definition at line 330 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 432 of file AliasAnalysisEvaluator.cpp.

◆ EvalAAMD

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

◆ Evaluator

aa Exhaustive Alias Analysis Precision Evaluator

Definition at line 433 of file AliasAnalysisEvaluator.cpp.

◆ false

aa Exhaustive Alias Analysis Precision false

Definition at line 433 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

◆ PrintMod

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

◆ PrintModRef

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

◆ PrintMust

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

◆ PrintMustAlias

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

◆ PrintMustMod

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

◆ PrintMustModRef

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

◆ PrintMustRef

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

◆ PrintNoAlias

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

◆ PrintNoModRef

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

◆ PrintPartialAlias

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

◆ PrintRef

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