LLVM 18.0.0git
|
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/ADT/Statistic.h"
#include "llvm/Analysis/BasicAliasAnalysis.h"
#include "llvm/Analysis/CaptureTracking.h"
#include "llvm/Analysis/GlobalsModRef.h"
#include "llvm/Analysis/MemoryLocation.h"
#include "llvm/Analysis/ObjCARCAliasAnalysis.h"
#include "llvm/Analysis/ScalarEvolutionAliasAnalysis.h"
#include "llvm/Analysis/ScopedNoAliasAA.h"
#include "llvm/Analysis/TargetLibraryInfo.h"
#include "llvm/Analysis/TypeBasedAliasAnalysis.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/Argument.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/InitializePasses.h"
#include "llvm/Pass.h"
#include "llvm/Support/AtomicOrdering.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include <algorithm>
#include <cassert>
#include <functional>
#include <iterator>
Go to the source code of this file.
Namespaces | |
namespace | llvm |
This is an optimization pass for GlobalISel generic memory operations. | |
Macros | |
#define | DEBUG_TYPE "aa" |
Functions | |
STATISTIC (NumNoAlias, "Number of NoAlias results") | |
STATISTIC (NumMayAlias, "Number of MayAlias results") | |
STATISTIC (NumMustAlias, "Number of MustAlias results") | |
INITIALIZE_PASS (ExternalAAWrapperPass, "external-aa", "External Alias Analysis", false, true) ImmutablePass *llvm | |
INITIALIZE_PASS_BEGIN (AAResultsWrapperPass, "aa", "Function Alias Analysis Results", false, true) INITIALIZE_PASS_END(AAResultsWrapperPass | |
static bool | isNoAliasOrByValArgument (const Value *V) |
Variables | |
cl::opt< bool > | llvm::DisableBasicAA ("disable-basic-aa", cl::Hidden, cl::init(false)) |
Allow disabling BasicAA from the AA results. | |
static cl::opt< bool > | EnableAATrace ("aa-trace", cl::Hidden, cl::init(false)) |
Print a trace of alias analysis queries and their results. | |
aa | |
Function Alias Analysis | Results |
Function Alias Analysis | false |
#define DEBUG_TYPE "aa" |
Definition at line 55 of file AliasAnalysis.cpp.
INITIALIZE_PASS | ( | ExternalAAWrapperPass | , |
"external-aa" | , | ||
"External Alias Analysis" | , | ||
false | , | ||
true | |||
) |
Definition at line 746 of file AliasAnalysis.cpp.
INITIALIZE_PASS_BEGIN | ( | AAResultsWrapperPass | , |
"aa" | , | ||
"Function Alias Analysis Results" | , | ||
false | , | ||
true | |||
) |
Definition at line 845 of file AliasAnalysis.cpp.
References A.
Referenced by llvm::isIdentifiedFunctionLocal(), and llvm::isIdentifiedObject().
STATISTIC | ( | NumMayAlias | , |
"Number of MayAlias results" | |||
) |
STATISTIC | ( | NumMustAlias | , |
"Number of MustAlias results" | |||
) |
STATISTIC | ( | NumNoAlias | , |
"Number of NoAlias results" | |||
) |
aa |
Definition at line 768 of file AliasAnalysis.cpp.
Referenced by llvm::SelectionDAGBuilder::init(), and llvm::objcarc::ProvenanceAnalysis::setAA().
|
static |
Print a trace of alias analysis queries and their results.
Referenced by llvm::AAResults::alias().
Definition at line 769 of file AliasAnalysis.cpp.
Definition at line 769 of file AliasAnalysis.cpp.
Referenced by llvm::WebAssemblyFunctionInfo::addResult(), llvm::MachineIRBuilder::buildIntrinsic(), llvm::WebAssemblyFunctionInfo::clearParamsAndResults(), llvm::computeSignatureVTs(), createTblForTrunc(), CustomNonLegalBITCASTResults(), emitConstantSizeRepmov(), llvm::WebAssemblyAsmPrinter::emitDecls(), emitErrorAndReplaceIntrinsicResults(), expandIntrinsicWChainHelper(), ExpandREAD_REGISTER(), getReadTimeStampCounter(), llvm::AssignmentTrackingAnalysis::getResults(), llvm::WebAssemblyFunctionInfo::getResults(), initializeUniqueCases(), llvm::isOverflowIntrinsicNoWrap(), llvm::ARMLegalizerInfo::legalizeCustom(), LowerINTRINSIC_W_CHAIN(), llvm::TargetLowering::LowerOperationWrapper(), llvm::HexagonTargetLowering::LowerOperationWrapper(), llvm::SystemZTargetLowering::LowerOperationWrapper(), LowerREADCYCLECOUNTER(), llvm::AMDGPUTargetLowering::LowerUDIVREM(), llvm::AMDGPUTargetLowering::LowerUDIVREM64(), ReplaceAddWithADDP(), ReplaceATOMIC_LOAD_128Results(), replaceBoolVectorBitcast(), ReplaceCMP_SWAP_128Results(), ReplaceCMP_SWAP_64Results(), ReplaceINTRINSIC_W_CHAIN(), replaceINTRINSIC_WO_CHAINResults(), ReplaceLoadVector(), ReplaceLongIntrinsic(), llvm::AMDGPUTargetLowering::ReplaceNodeResults(), llvm::R600TargetLowering::ReplaceNodeResults(), llvm::SITargetLowering::ReplaceNodeResults(), llvm::ARMTargetLowering::ReplaceNodeResults(), llvm::AVRTargetLowering::ReplaceNodeResults(), llvm::HexagonTargetLowering::ReplaceNodeResults(), llvm::LoongArchTargetLowering::ReplaceNodeResults(), llvm::MipsTargetLowering::ReplaceNodeResults(), llvm::PPCTargetLowering::ReplaceNodeResults(), llvm::RISCVTargetLowering::ReplaceNodeResults(), llvm::SparcTargetLowering::ReplaceNodeResults(), llvm::SystemZTargetLowering::ReplaceNodeResults(), llvm::X86TargetLowering::ReplaceNodeResults(), llvm::XCoreTargetLowering::ReplaceNodeResults(), ReplaceREADCYCLECOUNTER(), ReplaceReductionResults(), replaceVecCondBranchResults(), replaceVPICKVE2GRResults(), llvm::HvxSelector::selectShuffle(), llvm::signatureFromMVTs(), and SwitchToLookupTable().