X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fgallium%2Fdrivers%2Fradeon%2FR600ISelLowering.h;h=49ea272502e3879efc3ebe5d43e8561f73eae713;hb=a4325b32298cb99b1e99620a33ef0bee52298c3c;hp=9eb536c5f6f1fd185a60b7c52228ffc6b36d85a2;hpb=92823fb72abf1539bdb545fedc5525e9fc0b04cc;p=mesa.git diff --git a/src/gallium/drivers/radeon/R600ISelLowering.h b/src/gallium/drivers/radeon/R600ISelLowering.h index 9eb536c5f6f..49ea272502e 100644 --- a/src/gallium/drivers/radeon/R600ISelLowering.h +++ b/src/gallium/drivers/radeon/R600ISelLowering.h @@ -27,23 +27,30 @@ public: virtual MachineBasicBlock * EmitInstrWithCustomInserter(MachineInstr *MI, MachineBasicBlock * BB) const; virtual SDValue LowerOperation(SDValue Op, SelectionDAG &DAG) const; - + void ReplaceNodeResults(SDNode * N, + SmallVectorImpl &Results, + SelectionDAG &DAG) const; private: const R600InstrInfo * TII; /// lowerImplicitParameter - Each OpenCL kernel has nine implicit parameters /// that are stored in the first nine dwords of a Vertex Buffer. These - /// implicit parameters are represented by pseudo instructions, which are - /// lowered to VTX_READ instructions by this function. + /// implicit parameters are lowered to load instructions which retreive the + /// values from the Vertex Buffer. + SDValue LowerImplicitParameter(SelectionDAG &DAG, EVT VT, + DebugLoc DL, unsigned DwordOffset) const; + void lowerImplicitParameter(MachineInstr *MI, MachineBasicBlock &BB, MachineRegisterInfo & MRI, unsigned dword_offset) const; + SDValue LowerBR_CC(SDValue Op, SelectionDAG &DAG) const; + /// LowerROTL - Lower ROTL opcode to BITALIGN SDValue LowerROTL(SDValue Op, SelectionDAG &DAG) const; SDValue LowerSELECT_CC(SDValue Op, SelectionDAG &DAG) const; SDValue LowerSETCC(SDValue Op, SelectionDAG &DAG) const; - + SDValue LowerFPTOUINT(SDValue Op, SelectionDAG &DAG) const; }; } // End namespace llvm;