LLVM: lib/Target/AMDGPU/AMDGPUAsanInstrumentation.cpp File Reference (original) (raw)

Go to the source code of this file.

Namespaces
namespace llvm
This is an optimization pass for GlobalISel generic memory operations.
namespace llvm::AMDGPU
Macros
#define DEBUG_TYPE "amdgpu-asan-instrumentation"
Functions
static uint64_t llvm::AMDGPU::getRedzoneSizeForScale (int AsanScale)
static uint64_t llvm::AMDGPU::getMinRedzoneSizeForGlobal (int AsanScale)
uint64_t llvm::AMDGPU::getRedzoneSizeForGlobal (int Scale, uint64_t SizeInBytes)
Given SizeInBytes of the Value to be instrunmented, Returns the redzone size corresponding to it.
static size_t llvm::AMDGPU::TypeStoreSizeToSizeIndex (uint32_t TypeSize)
static Instruction * llvm::AMDGPU::genAMDGPUReportBlock (Module &M, IRBuilder<> &IRB, Value *Cond, bool Recover)
static Value * llvm::AMDGPU::createSlowPathCmp (Module &M, IRBuilder<> &IRB, Type *IntptrTy, Value *AddrLong, Value *ShadowValue, uint32_t TypeStoreSize, int AsanScale)
static Instruction * llvm::AMDGPU::generateCrashCode (Module &M, IRBuilder<> &IRB, Type *IntptrTy, Instruction *InsertBefore, Value *Addr, bool IsWrite, size_t AccessSizeIndex, Value *SizeArgument, bool Recover)
static Value * llvm::AMDGPU::memToShadow (Module &M, IRBuilder<> &IRB, Type *IntptrTy, Value *Shadow, int AsanScale, uint32_t AsanOffset)
static void llvm::AMDGPU::instrumentAddressImpl (Module &M, IRBuilder<> &IRB, Instruction *OrigIns, Instruction *InsertBefore, Value *Addr, Align Alignment, uint32_t TypeStoreSize, bool IsWrite, Value *SizeArgument, bool UseCalls, bool Recover, int AsanScale, int AsanOffset)
void llvm::AMDGPU::instrumentAddress (Module &M, IRBuilder<> &IRB, Instruction *OrigIns, Instruction *InsertBefore, Value *Addr, Align Alignment, TypeSize TypeStoreSize, bool IsWrite, Value *SizeArgument, bool UseCalls, bool Recover, int Scale, int Offset)
Instrument the memory operand Addr.
void llvm::AMDGPU::getInterestingMemoryOperands (Module &M, Instruction *I, SmallVectorImpl< InterestingMemoryOperand > &Interesting)
Get all the memory operands from the instruction that needs to be instrumented.

DEBUG_TYPE

#define DEBUG_TYPE "amdgpu-asan-instrumentation"