LLVM  3.7.0
Macros | Functions
AMDGPUPromoteAlloca.cpp File Reference
#include "AMDGPU.h"
#include "AMDGPUSubtarget.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/IR/IRBuilder.h"
#include "llvm/IR/InstVisitor.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/raw_ostream.h"
Include dependency graph for AMDGPUPromoteAlloca.cpp:

Go to the source code of this file.

Macros

#define DEBUG_TYPE   "amdgpu-promote-alloca"
 

Functions

static VectorTypearrayTypeToVecType (const Type *ArrayTy)
 
static ValuecalculateVectorIndex (Value *Ptr, const std::map< GetElementPtrInst *, Value * > &GEPIdx)
 
static ValueGEPToVectorIndex (GetElementPtrInst *GEP)
 
static bool canVectorizeInst (Instruction *Inst)
 
static bool tryPromoteAllocaToVector (AllocaInst *Alloca)
 
static bool collectUsesWithPtrTypes (Value *Val, std::vector< Value * > &WorkList)
 

Macro Definition Documentation

#define DEBUG_TYPE   "amdgpu-promote-alloca"

Definition at line 23 of file AMDGPUPromoteAlloca.cpp.

Function Documentation

static VectorType* arrayTypeToVecType ( const Type ArrayTy)
static
static Value* calculateVectorIndex ( Value Ptr,
const std::map< GetElementPtrInst *, Value * > &  GEPIdx 
)
static
static bool canVectorizeInst ( Instruction Inst)
static
static bool collectUsesWithPtrTypes ( Value Val,
std::vector< Value * > &  WorkList 
)
static
static Value* GEPToVectorIndex ( GetElementPtrInst GEP)
static
static bool tryPromoteAllocaToVector ( AllocaInst Alloca)
static