Home | History | Annotate | Download | only in radeon

Lines Matching refs:ISD

31   setOperationAction(ISD::INTRINSIC_WO_CHAIN, MVT::Other, Custom);
35 setOperationAction(ISD::FCEIL, MVT::f32, Legal);
36 setOperationAction(ISD::FEXP2, MVT::f32, Legal);
37 setOperationAction(ISD::FRINT, MVT::f32, Legal);
39 setOperationAction(ISD::UDIV, MVT::i32, Expand);
40 setOperationAction(ISD::UDIVREM, MVT::i32, Custom);
41 setOperationAction(ISD::UREM, MVT::i32, Expand);
52 const SmallVectorImpl<ISD::InputArg> &Ins,
68 const SmallVectorImpl<ISD::OutputArg> &Outs,
89 case ISD::SDIV: return LowerSDIV(Op, DAG);
90 case ISD::SREM: return LowerSREM(Op, DAG);
91 case ISD::BUILD_VECTOR: return LowerBUILD_VECTOR(Op, DAG);
92 case ISD::SIGN_EXTEND_INREG: return LowerSIGN_EXTEND_INREG(Op, DAG);
93 case ISD::BRCOND: return LowerBRCOND(Op, DAG);
95 case ISD::INTRINSIC_WO_CHAIN: return LowerINTRINSIC_WO_CHAIN(Op, DAG);
96 case ISD::UDIVREM: return LowerUDIVREM(Op, DAG);
113 return DAG.getNode(ISD::FEXP2, DL, VT, Op.getOperand(1));
115 return DAG.getNode(ISD::FABS, DL, VT, Op.getOperand(1));
142 return DAG.getNode(ISD::FRINT, DL, VT, Op.getOperand(1));
144 return DAG.getNode(ISD::FCEIL, DL, VT, Op.getOperand(1));
155 SDValue Neg = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, VT),
168 SDValue OneSubA = DAG.getNode(ISD::FSUB, DL, VT,
171 SDValue OneSubAC = DAG.getNode(ISD::FMUL, DL, VT, OneSubA,
196 SDValue RCP_LO = DAG.getNode(ISD::UMULO, DL, VT, RCP, Den);
199 SDValue RCP_HI = DAG.getNode(ISD::MULHU, DL, VT, RCP, Den);
202 SDValue NEG_RCP_LO = DAG.getNode(ISD::SUB, DL, VT, DAG.getConstant(0, VT),
208 ISD::SETEQ);
211 SDValue E = DAG.getNode(ISD::MULHU, DL, VT, ABS_RCP_LO, RCP);
214 SDValue RCP_A_E = DAG.getNode(ISD::ADD, DL, VT, RCP, E);
217 SDValue RCP_S_E = DAG.getNode(ISD::SUB, DL, VT, RCP, E);
222 ISD::SETEQ);
224 SDValue Quotient = DAG.getNode(ISD::MULHU, DL, VT, Tmp0, Num);
227 SDValue Num_S_Remainder = DAG.getNode(ISD::UMULO, DL, VT, Quotient, Den);
230 SDValue Remainder = DAG.getNode(ISD::SUB, DL, VT, Num, Num_S_Remainder);
236 ISD::SETGE);
242 ISD::SETGE);
244 SDValue Tmp1 = DAG.getNode(ISD::AND, DL, VT, Remainder_GE_Den,
250 SDValue Quotient_A_One = DAG.getNode(ISD::ADD, DL, VT, Quotient,
254 SDValue Quotient_S_One = DAG.getNode(ISD::SUB, DL, VT, Quotient,
259 Quotient, Quotient_A_One, ISD::SETEQ);
263 Quotient_S_One, Div, ISD::SETEQ);
268 SDValue Remainder_S_Den = DAG.getNode(ISD::SUB, DL, VT, Remainder, Den);
271 SDValue Remainder_A_Den = DAG.getNode(ISD::ADD, DL, VT, Remainder, Den);
275 Remainder, Remainder_S_Den, ISD::SETEQ);
279 Remainder_A_Den, Rem, ISD::SETEQ);