Go to the documentation of this file.
13 #ifndef LLVM_LIB_TARGET_NVPTX_NVPTXISELDAGTODAG_H
14 #define LLVM_LIB_TARGET_NVPTX_NVPTXISELDAGTODAG_H
33 int getDivF32Level()
const;
34 bool usePrecSqrtF32()
const;
35 bool useF32FTZ()
const;
36 bool allowFMA()
const;
37 bool allowUnsafeFPMath()
const;
38 bool useShortPointers()
const;
46 return "NVPTX DAG->DAG Pattern Instruction Selection";
51 bool SelectInlineAsmMemoryOperand(
const SDValue &
Op,
52 unsigned ConstraintID,
53 std::vector<SDValue> &OutOps)
override;
56 #include "NVPTXGenDAGISel.inc"
59 bool tryIntrinsicNoChain(
SDNode *
N);
60 bool tryIntrinsicChain(
SDNode *
N);
61 void SelectTexSurfHandle(
SDNode *
N);
70 void SelectAddrSpaceCast(
SDNode *
N);
71 bool tryTextureIntrinsic(
SDNode *
N);
72 bool trySurfaceIntrinsic(
SDNode *
N);
74 bool tryConstantFP16(
SDNode *
N);
75 bool SelectSETP_F16X2(
SDNode *
N);
76 bool tryEXTRACT_VECTOR_ELEMENT(
SDNode *
N);
79 return CurDAG->getTargetConstant(Imm,
DL,
MVT::i32);
98 bool ChkMemSDNodeAddressSpace(
SDNode *
N,
unsigned int spN)
const;
100 static unsigned GetConvertOpcode(
MVT DestTy,
MVT SrcTy,
bool IsSigned);
This is an optimization pass for GlobalISel generic memory operations.
Wrapper class for IR location info (IR ordering and DebugLoc) to be passed into SDNode creation funct...
StringRef getPassName() const override
getPassName - Return a nice clean name for a pass.
Represents one node in the SelectionDAG.
StringRef - Represent a constant reference to a string, i.e.
MachineBasicBlock MachineBasicBlock::iterator DebugLoc DL
#define LLVM_LIBRARY_VISIBILITY
LLVM_LIBRARY_VISIBILITY - If a class marked with this attribute is linked into a shared library,...
Unlike LLVM values, Selection DAG nodes may return multiple values as the result of a computation.
SelectionDAGISel - This is the common base class used for SelectionDAG-based pattern-matching instruc...
const char LLVMTargetMachineRef TM