13 #ifndef LLVM_LIB_TARGET_AMDGPU_AMDGPUALIASANALYSIS_H 14 #define LLVM_LIB_TARGET_AMDGPU_AMDGPUALIASANALYSIS_H 53 bool PathAliases(
const MDNode *A,
const MDNode *B)
const;
73 std::unique_ptr<AMDGPUAAResult> Result;
108 AAR.addAAResult(WrapperPass->getResult());
114 #endif // LLVM_LIB_TARGET_AMDGPU_AMDGPUALIASANALYSIS_H Pass interface - Implemented by all 'passes'.
bool doInitialization(Module &M) override
doInitialization - Virtual method overridden by subclasses to do any necessary initialization before ...
A parsed version of the target data layout string in and methods for querying it. ...
const std::string & getTargetTriple() const
Get the target triple which is a string describing the target host.
static PassRegistry * getPassRegistry()
getPassRegistry - Access the global registry object, which is automatically initialized at applicatio...
AMDGPUAAResult(const DataLayout &DL, Triple T)
This class represents lattice values for constants.
A Module instance is used to store all the information related to an LLVM module. ...
AMDGPUAAResult(AMDGPUAAResult &&Arg)
const AMDGPUAAResult & getResult() const
void initializeAMDGPUAAWrapperPassPass(PassRegistry &)
AMDGPUExternalAAWrapper()
AMDGPUAAResult & getResult()
bool invalidate(Function &, const PreservedAnalyses &)
Handle invalidation events from the new pass manager.
AMDGPUAAResult run(Function &F, AnalysisManager< Function > &AM)
const DataLayout & getDataLayout() const
Get the data layout for the module's target platform.
AliasResult alias(const MemoryLocation &LocA, const MemoryLocation &LocB)
A CRTP-driven "mixin" base class to help implement the function alias analysis results concept...
AliasResult
The possible results of an alias query.
static GCRegistry::Add< OcamlGC > B("ocaml", "ocaml 3.10-compatible GC")
A set of analyses that are preserved following a run of a transformation pass.
A CRTP mix-in that provides informational APIs needed for analysis passes.
Represent the analysis usage information of a pass.
Legacy wrapper pass to provide the AMDGPUAAResult object.
Analysis pass providing a never-invalidated alias analysis result.
Triple - Helper class for working with autoconf configuration names.
Representation for a specific memory location.
ImmutablePass class - This class is used to provide information that does not need to be run...
Module.h This file contains the declarations for the Module class.
amdgpu Simplify well known AMD library false Value Value * Arg
bool doFinalization(Module &M) override
doFinalization - Virtual method overriden by subclasses to do any necessary clean up after all passes...
A simple AA result that uses TBAA metadata to answer queries.
Module * getParent()
Get the module that this global value is contained inside of...
bool pointsToConstantMemory(const MemoryLocation &Loc, bool OrLocal)
A wrapper pass for external alias analyses.
A container for analyses that lazily runs them and caches their results.