diff options
Diffstat (limited to 'contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h')
-rw-r--r-- | contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h | 11 |
1 files changed, 6 insertions, 5 deletions
diff --git a/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h b/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h index 69afcd7..fe20580 100644 --- a/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h +++ b/contrib/llvm/lib/Target/NVPTX/NVPTXISelDAGToDAG.h @@ -26,6 +26,7 @@ using namespace llvm; namespace { class LLVM_LIBRARY_VISIBILITY NVPTXDAGToDAGISel : public SelectionDAGISel { + const NVPTXTargetMachine &TM; // If true, generate mul.wide from sext and mul bool doMulWide; @@ -43,11 +44,11 @@ public: const char *getPassName() const override { return "NVPTX DAG->DAG Pattern Instruction Selection"; } - - const NVPTXSubtarget &Subtarget; + bool runOnMachineFunction(MachineFunction &MF) override; + const NVPTXSubtarget *Subtarget; bool SelectInlineAsmMemoryOperand(const SDValue &Op, - char ConstraintCode, + unsigned ConstraintID, std::vector<SDValue> &OutOps) override; private: // Include the pieces autogenerated from the target description. @@ -70,8 +71,8 @@ private: SDNode *SelectSurfaceIntrinsic(SDNode *N); SDNode *SelectBFE(SDNode *N); - inline SDValue getI32Imm(unsigned Imm) { - return CurDAG->getTargetConstant(Imm, MVT::i32); + inline SDValue getI32Imm(unsigned Imm, SDLoc DL) { + return CurDAG->getTargetConstant(Imm, DL, MVT::i32); } // Match direct address complex pattern. |