21 #define DEBUG_TYPE "NVPTXtti" 26 default:
return false;
41 default:
return false;
81 if (
const LoadInst *LI = dyn_cast<LoadInst>(
I)) {
82 unsigned AS = LI->getPointerAddressSpace();
108 if (isa<CallInst>(
I))
127 Opd1PropInfo, Opd2PropInfo);
140 Opd1PropInfo, Opd2PropInfo);
unsigned getArithmeticInstrCost(unsigned Opcode, Type *Ty, TTI::OperandValueKind Opd1Info=TTI::OK_AnyValue, TTI::OperandValueKind Opd2Info=TTI::OK_AnyValue, TTI::OperandValueProperties Opd1PropInfo=TTI::OP_None, TTI::OperandValueProperties Opd2PropInfo=TTI::OP_None, ArrayRef< const Value * > Args=ArrayRef< const Value * >())
This class represents an incoming formal argument to a Function.
This class represents lattice values for constants.
Cost tables and simple lookup functions.
The main scalar evolution driver.
An instruction for reading from memory.
bool isKernelFunction(const Function &F)
Simple integer binary arithmetic operators.
ArrayRef - Represent a constant reference to an array (0 or more elements consecutively in memory)...
void getUnrollingPreferences(Loop *L, ScalarEvolution &SE, TTI::UnrollingPreferences &UP)
int getArithmeticInstrCost(unsigned Opcode, Type *Ty, TTI::OperandValueKind Opd1Info=TTI::OK_AnyValue, TTI::OperandValueKind Opd2Info=TTI::OK_AnyValue, TTI::OperandValueProperties Opd1PropInfo=TTI::OP_None, TTI::OperandValueProperties Opd2PropInfo=TTI::OP_None, ArrayRef< const Value *> Args=ArrayRef< const Value *>())
The instances of the Type class are immutable: once they are created, they are never changed...
bool isSourceOfDivergence(const Value *V)
This file provides a helper that implements much of the TTI interface in terms of the target-independ...
Intrinsic::ID getIntrinsicID() const
Return the intrinsic ID of this intrinsic.
int InstructionOpcodeToISD(unsigned Opcode) const
Get the ISD node that corresponds to the Instruction class opcode.
amdgpu Simplify well known AMD library false Value Value * Arg
Bitwise operators - logical and, logical or, logical xor.
Represents a single loop in the control flow graph.
void getUnrollingPreferences(Loop *L, ScalarEvolution &SE, TTI::UnrollingPreferences &UP)
LLVM Value Representation.
constexpr char Args[]
Key for Kernel::Metadata::mArgs.
std::pair< int, MVT > getTypeLegalizationCost(const DataLayout &DL, Type *Ty) const
Estimate the cost of type-legalization and the legalized type.
A wrapper class for inspecting calls to intrinsic functions.
This file describes how to lower LLVM code to machine code.