LLVM
8.0.1
|
#include "AMDGPUTargetTransformInfo.h"
#include "AMDGPUSubtarget.h"
#include "Utils/AMDGPUBaseInfo.h"
#include "llvm/ADT/STLExtras.h"
#include "llvm/Analysis/LoopInfo.h"
#include "llvm/Analysis/TargetTransformInfo.h"
#include "llvm/Analysis/ValueTracking.h"
#include "llvm/CodeGen/ISDOpcodes.h"
#include "llvm/CodeGen/ValueTypes.h"
#include "llvm/IR/Argument.h"
#include "llvm/IR/Attributes.h"
#include "llvm/IR/BasicBlock.h"
#include "llvm/IR/CallingConv.h"
#include "llvm/IR/DataLayout.h"
#include "llvm/IR/DerivedTypes.h"
#include "llvm/IR/Function.h"
#include "llvm/IR/Instruction.h"
#include "llvm/IR/Instructions.h"
#include "llvm/IR/IntrinsicInst.h"
#include "llvm/IR/Module.h"
#include "llvm/IR/PatternMatch.h"
#include "llvm/IR/Type.h"
#include "llvm/IR/Value.h"
#include "llvm/MC/SubtargetFeature.h"
#include "llvm/Support/Casting.h"
#include "llvm/Support/CommandLine.h"
#include "llvm/Support/Debug.h"
#include "llvm/Support/ErrorHandling.h"
#include "llvm/Support/MachineValueType.h"
#include "llvm/Support/raw_ostream.h"
#include "llvm/Target/TargetMachine.h"
#include <algorithm>
#include <cassert>
#include <limits>
#include <utility>
Go to the source code of this file.
Macros | |
#define | DEBUG_TYPE "AMDGPUtti" |
Functions | |
static bool | dependsOnLocalPhi (const Loop *L, const Value *Cond, unsigned Depth=0) |
static bool | isArgPassedInSGPR (const Argument *A) |
Variables | |
static cl::opt< unsigned > | UnrollThresholdPrivate ("amdgpu-unroll-threshold-private", cl::desc("Unroll threshold for AMDGPU if private memory used in a loop"), cl::init(2500), cl::Hidden) |
static cl::opt< unsigned > | UnrollThresholdLocal ("amdgpu-unroll-threshold-local", cl::desc("Unroll threshold for AMDGPU if local memory used in a loop"), cl::init(1000), cl::Hidden) |
static cl::opt< unsigned > | UnrollThresholdIf ("amdgpu-unroll-threshold-if", cl::desc("Unroll threshold increment for AMDGPU for each if statement inside loop"), cl::init(150), cl::Hidden) |
#define DEBUG_TYPE "AMDGPUtti" |
Definition at line 56 of file AMDGPUTargetTransformInfo.cpp.
Definition at line 73 of file AMDGPUTargetTransformInfo.cpp.
References llvm::LoopBase< BlockT, LoopT >::contains(), llvm::Depth, llvm::dyn_cast(), llvm::LoopBase< BlockT, LoopT >::getSubLoops(), I, llvm::none_of(), and llvm::User::operand_values().
Referenced by llvm::AMDGPUTTIImpl::getUnrollingPreferences().
Definition at line 516 of file AMDGPUTargetTransformInfo.cpp.
References llvm::CallingConv::AMDGPU_CS, llvm::CallingConv::AMDGPU_ES, llvm::CallingConv::AMDGPU_GS, llvm::CallingConv::AMDGPU_HS, llvm::CallingConv::AMDGPU_KERNEL, llvm::CallingConv::AMDGPU_LS, llvm::CallingConv::AMDGPU_PS, llvm::CallingConv::AMDGPU_VS, llvm::Attribute::ByVal, F(), llvm::Argument::getArgNo(), llvm::Function::getAttributes(), llvm::Function::getCallingConv(), llvm::Argument::getParent(), llvm::AttributeList::hasParamAttribute(), llvm::Attribute::InReg, and llvm::CallingConv::SPIR_KERNEL.
Referenced by llvm::GCNTTIImpl::isSourceOfDivergence().
|
static |
Referenced by llvm::AMDGPUTTIImpl::getUnrollingPreferences().
|
static |
Referenced by llvm::AMDGPUTTIImpl::getUnrollingPreferences().
|
static |
Referenced by llvm::AMDGPUTTIImpl::getUnrollingPreferences().