LLVM  15.0.0git
Namespaces | Macros | Functions
AMDGPUMemoryUtils.cpp File Reference
#include "AMDGPUMemoryUtils.h"
#include "AMDGPU.h"
#include "AMDGPUBaseInfo.h"
#include "llvm/ADT/SetVector.h"
#include "llvm/ADT/SmallSet.h"
#include "llvm/Analysis/AliasAnalysis.h"
#include "llvm/Analysis/MemorySSA.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/IntrinsicsAMDGPU.h"
#include "llvm/IR/ReplaceConstant.h"
Include dependency graph for AMDGPUMemoryUtils.cpp:

Go to the source code of this file.


 This is an optimization pass for GlobalISel generic memory operations.


#define DEBUG_TYPE   "amdgpu-memory-utils"


Align llvm::AMDGPU::getAlign (DataLayout const &DL, const GlobalVariable *GV)
static void llvm::AMDGPU::collectFunctionUses (User *U, const Function *F, SetVector< Instruction * > &InstUsers)
void llvm::AMDGPU::replaceConstantUsesInFunction (ConstantExpr *C, const Function *F)
 Replace all uses of constant C with instructions in F. More...
static bool llvm::AMDGPU::shouldLowerLDSToStruct (const GlobalVariable &GV, const Function *F)
std::vector< GlobalVariable * > llvm::AMDGPU::findVariablesToLower (Module &M, const Function *F)
bool llvm::AMDGPU::isReallyAClobber (const Value *Ptr, MemoryDef *Def, AAResults *AA)
 Given a Def clobbering a load from Ptr according to the MSSA check if this is actually a memory update or an artificial clobber to facilitate ordering constraints. More...
bool llvm::AMDGPU::isClobberedInFunction (const LoadInst *Load, MemorySSA *MSSA, AAResults *AA)
 Check is a Load is clobbered in its function. More...

Macro Definition Documentation


#define DEBUG_TYPE   "amdgpu-memory-utils"

Definition at line 22 of file AMDGPUMemoryUtils.cpp.