Lines Matching refs:ISD
99 setOperationAction(ISD::SIGN_EXTEND_INREG, VT, Custom);
100 setOperationAction(ISD::SUBE, VT, Expand);
101 setOperationAction(ISD::SUBC, VT, Expand);
102 setOperationAction(ISD::ADDE, VT, Expand);
103 setOperationAction(ISD::ADDC, VT, Expand);
104 setOperationAction(ISD::BRCOND, VT, Custom);
105 setOperationAction(ISD::BR_JT, VT, Expand);
106 setOperationAction(ISD::BRIND, VT, Expand);
108 setOperationAction(ISD::SREM, VT, Expand);
109 setOperationAction(ISD::SMUL_LOHI, VT, Expand);
110 setOperationAction(ISD::UMUL_LOHI, VT, Expand);
112 setOperationAction(ISD::SDIV, VT, Custom);
119 setOperationAction(ISD::FP_ROUND_INREG, VT, Expand);
120 setOperationAction(ISD::SETOLT, VT, Expand);
121 setOperationAction(ISD::SETOGE, VT, Expand);
122 setOperationAction(ISD::SETOGT, VT, Expand);
123 setOperationAction(ISD::SETOLE, VT, Expand);
124 setOperationAction(ISD::SETULT, VT, Expand);
125 setOperationAction(ISD::SETUGE, VT, Expand);
126 setOperationAction(ISD::SETUGT, VT, Expand);
127 setOperationAction(ISD::SETULE, VT, Expand);
134 setOperationAction(ISD::SDIVREM, VT, Expand);
137 setOperationAction(ISD::SMUL_LOHI, VT, Expand);
138 setOperationAction(ISD::UMUL_LOHI, VT, Expand);
140 setOperationAction(ISD::BSWAP, VT, Expand);
143 setOperationAction(ISD::CTPOP, VT, Expand);
144 setOperationAction(ISD::CTTZ, VT, Expand);
145 setOperationAction(ISD::CTLZ, VT, Expand);
151 setOperationAction(ISD::VECTOR_SHUFFLE, VT, Expand);
152 setOperationAction(ISD::SDIVREM, VT, Expand);
153 setOperationAction(ISD::SMUL_LOHI, VT, Expand);
154 // setOperationAction(ISD::VSETCC, VT, Expand);
155 setOperationAction(ISD::SELECT_CC, VT, Expand);
158 setOperationAction(ISD::MULHU, MVT::i64, Expand);
159 setOperationAction(ISD::MULHU, MVT::v2i64, Expand);
160 setOperationAction(ISD::MULHS, MVT::i64, Expand);
161 setOperationAction(ISD::MULHS, MVT::v2i64, Expand);
162 setOperationAction(ISD::ADD, MVT::v2i64, Expand);
163 setOperationAction(ISD::SREM, MVT::v2i64, Expand);
164 setOperationAction(ISD::Constant , MVT::i64 , Legal);
165 setOperationAction(ISD::SDIV, MVT::v2i64, Expand);
166 setOperationAction(ISD::TRUNCATE, MVT::v2i64, Expand);
167 setOperationAction(ISD::SIGN_EXTEND, MVT::v2i64, Expand);
168 setOperationAction(ISD::ZERO_EXTEND, MVT::v2i64, Expand);
169 setOperationAction(ISD::ANY_EXTEND, MVT::v2i64, Expand);
172 setOperationAction(ISD::FADD, MVT::v2f64, Expand);
173 setOperationAction(ISD::FSUB, MVT::v2f64, Expand);
174 setOperationAction(ISD::FMUL, MVT::v2f64, Expand);
175 setOperationAction(ISD::FP_ROUND_INREG, MVT::v2f64, Expand);
176 setOperationAction(ISD::FP_EXTEND, MVT::v2f64, Expand);
177 setOperationAction(ISD::ConstantFP , MVT::f64 , Legal);
180 setOperationAction(ISD::TRUNCATE, MVT::v2f64, Expand);
181 setOperationAction(ISD::SIGN_EXTEND, MVT::v2f64, Expand);
182 setOperationAction(ISD::ZERO_EXTEND, MVT::v2f64, Expand);
183 setOperationAction(ISD::ANY_EXTEND, MVT::v2f64, Expand);
184 setOperationAction(ISD::FABS, MVT::f64, Expand);
185 setOperationAction(ISD::FABS, MVT::v2f64, Expand);
190 setOperationAction(ISD::UDIV, MVT::v2i8, Expand);
191 setOperationAction(ISD::UDIV, MVT::v4i8, Expand);
192 setOperationAction(ISD::UDIV, MVT::v2i16, Expand);
193 setOperationAction(ISD::UDIV, MVT::v4i16, Expand);
194 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::i1, Custom);
195 setOperationAction(ISD::SUBC, MVT::Other, Expand);
196 setOperationAction(ISD::ADDE, MVT::Other, Expand);
197 setOperationAction(ISD::ADDC, MVT::Other, Expand);
198 setOperationAction(ISD::BRCOND, MVT::Other, Custom);
199 setOperationAction(ISD::BR_JT, MVT::Other, Expand);
200 setOperationAction(ISD::BRIND, MVT::Other, Expand);
201 setOperationAction(ISD::SIGN_EXTEND_INREG, MVT::Other, Expand);
205 setOperationAction(ISD::ConstantFP , MVT::f32 , Legal);
206 setOperationAction(ISD::Constant , MVT::i32 , Legal);
263 case ISD::SELECT_CC:
339 Data = DAG.getNode(ISD::ZERO_EXTEND, DL, IVT, Data);
345 Data = DAG.getNode(ISD::SHL, DL, DVT, Data, Shift);
347 Data = DAG.getNode(ISD::SRA, DL, DVT, Data, Shift);
411 SDValue jq = DAG.getNode(ISD::XOR, DL, OVT, LHS, RHS);
414 jq = DAG.getNode(ISD::SRA, DL, OVT, jq, DAG.getConstant(bitsize - 2, OVT));
417 jq = DAG.getNode(ISD::OR, DL, OVT, jq, DAG.getConstant(1, OVT));
429 SDValue fa = DAG.getNode(ISD::SINT_TO_FP, DL, FLTTY, ia);
432 SDValue fb = DAG.getNode(ISD::SINT_TO_FP, DL, FLTTY, ib);
438 fq = DAG.getNode(ISD::FTRUNC, DL, FLTTY, fq);
441 SDValue fqneg = DAG.getNode(ISD::FNEG, DL, FLTTY, fq);
444 SDValue fr = DAG.getNode(ISD::FADD, DL, FLTTY,
445 DAG.getNode(ISD::MUL, DL, FLTTY, fqneg, fb), fa);
448 SDValue iq = DAG.getNode(ISD::FP_TO_SINT, DL, INTTY, fq);
451 fr = DAG.getNode(ISD::FABS, DL, FLTTY, fr);
454 fb = DAG.getNode(ISD::FABS, DL, FLTTY, fb);
459 cv = DAG.getSetCC(DL, INTTY, fr, fb, ISD::SETOGE);
461 cv = DAG.getSetCC(DL, INTTY, fr, fb, ISD::SETOGE);
464 jq = DAG.getNode(ISD::SELECT, DL, OVT, cv, jq,
468 iq = DAG.getNode(ISD::ADD, DL, OVT, iq, jq);
503 ISD::SETLT);
510 ISD::SETLT);
513 r0 = DAG.getNode(ISD::ADD, DL, OVT, r0, r10);
516 r1 = DAG.getNode(ISD::ADD, DL, OVT, r1, r11);
519 r0 = DAG.getNode(ISD::XOR, DL, OVT, r0, r10);
522 r1 = DAG.getNode(ISD::XOR, DL, OVT, r1, r11);
525 r0 = DAG.getNode(ISD::UDIV, DL, OVT, r0, r1);
528 r10 = DAG.getNode(ISD::XOR, DL, OVT, r10, r11);
531 r0 = DAG.getNode(ISD::ADD, DL, OVT, r0, r10);
534 SDValue DST = DAG.getNode(ISD::XOR, DL, OVT, r0, r10);
555 LHS = DAG.getNode(ISD::SREM, DL, INTTY, LHS, RHS);
572 LHS = DAG.getNode(ISD::SREM, DL, INTTY, LHS, RHS);
605 SDValue r10 = DAG.getSetCC(DL, OVT, r0, DAG.getConstant(0, OVT), ISD::SETLT);
608 SDValue r11 = DAG.getSetCC(DL, OVT, r1, DAG.getConstant(0, OVT), ISD::SETLT);
611 r0 = DAG.getNode(ISD::ADD, DL, OVT, r0, r10);
614 r1 = DAG.getNode(ISD::ADD, DL, OVT, r1, r11);
617 r0 = DAG.getNode(ISD::XOR, DL, OVT, r0, r10);
620 r1 = DAG.getNode(ISD::XOR, DL, OVT, r1, r11);
623 SDValue r20 = DAG.getNode(ISD::UREM, DL, OVT, r0, r1);
629 r0 = DAG.getNode(ISD::SUB, DL, OVT, r0, r20);
632 r0 = DAG.getNode(ISD::ADD, DL, OVT, r0, r10);
635 SDValue DST = DAG.getNode(ISD::XOR, DL, OVT, r0, r10);