LLVM API Documentation

Functions | Variables
TypeBasedAliasAnalysis.cpp File Reference
#include "llvm/Analysis/Passes.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/IR/Constants.h"
#include "llvm/IR/LLVMContext.h"
#include "llvm/IR/Metadata.h"
#include "llvm/IR/Module.h"
#include "llvm/Pass.h"
#include "llvm/Support/CommandLine.h"
Include dependency graph for TypeBasedAliasAnalysis.cpp:

Go to the source code of this file.

Functions

 INITIALIZE_AG_PASS (TypeBasedAliasAnalysis, AliasAnalysis,"tbaa","Type-Based Alias Analysis", false, true, false) ImmutablePass *llvm
static bool isStructPathTBAA (const MDNode *MD)

Variables

static cl::opt< boolEnableTBAA ("enable-tbaa", cl::init(true))

Function Documentation

INITIALIZE_AG_PASS ( TypeBasedAliasAnalysis  ,
AliasAnalysis  ,
"tbaa"  ,
"Type-Based Alias Analysis ,
false  ,
true  ,
false   
)

Definition at line 315 of file TypeBasedAliasAnalysis.cpp.

static bool isStructPathTBAA ( const MDNode MD) [static]

Check the first operand of the tbaa tag node, if it is a MDNode, we treat it as struct-path aware TBAA format, otherwise, we treat it as scalar TBAA format.

Definition at line 331 of file TypeBasedAliasAnalysis.cpp.

References llvm::MDNode::getNumOperands(), and llvm::MDNode::getOperand().

Referenced by llvm::MDNode::getMostGenericTBAA(), and llvm::MDNode::isTBAAVtableAccess().


Variable Documentation

cl::opt<bool> EnableTBAA("enable-tbaa", cl::init(true)) [static]