Home | History | Annotate | Download | only in ARM

Lines Matching refs:MVT

85     return CurDAG->getTargetConstant(Imm, MVT::i32);
291 if (N->getOpcode() == ISD::Constant && N->getValueType(0) == MVT::i32) {
404 Srl = CurDAG->getNode(ISD::SRL, SDLoc(Srl), MVT::i32,
406 CurDAG->getConstant(Srl_imm+TZ, MVT::i32));
407 MVT::i32,
408 Srl, CurDAG->getConstant(And_imm, MVT::i32));
409 N1 = CurDAG->getNode(ISD::SHL, SDLoc(N1), MVT::i32,
410 N1, CurDAG->getConstant(TZ, MVT::i32));
495 MVT::i32);
522 MVT::i32);
540 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
550 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
566 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
573 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
598 MVT::i32);
669 MVT::i32);
697 MVT::i32);
717 Offset = CurDAG->getRegister(0, MVT::i32);
720 MVT::i32);
735 Offset = CurDAG->getRegister(0, MVT::i32);
744 MVT::i32);
752 Offset = CurDAG->getRegister(0, MVT::i32);
755 MVT::i32);
810 MVT::i32);
846 MVT::i32);
861 Offset = CurDAG->getRegister(0, MVT::i32);
862 Opc = CurDAG->getTargetConstant(Val, MVT::i32);
880 Offset = CurDAG->getRegister(0, MVT::i32);
883 MVT::i32);
902 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::sub, 0),MVT::i32);
913 Offset = CurDAG->getRegister(0, MVT::i32);
914 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::add, 0),MVT::i32);
928 Offset = CurDAG->getRegister(0, MVT::i32);
935 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, RHSC),MVT::i32);
941 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::add, 0), MVT::i32);
955 Offset = CurDAG->getRegister(0, MVT::i32);
956 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, Val), MVT::i32);
961 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, 0), MVT::i32);
979 MVT::i32);
1000 MVT::i32);
1006 MVT::i32);
1029 Align = CurDAG->getTargetConstant(Alignment, MVT::i32);
1042 Offset = CurDAG->getRegister(0, MVT::i32);
1053 MVT::i32);
1159 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1176 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1184 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1189 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1217 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1236 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1284 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1296 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1316 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1323 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1346 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1363 ? CurDAG->getTargetConstant(RHSC, MVT::i32)
1364 : CurDAG->getTargetConstant(-RHSC, MVT::i32);
1416 ShImm = CurDAG->getTargetConstant(ShAmt, MVT::i32);
1426 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1445 OffImm = CurDAG->getTargetConstant(RHSC / 4, MVT::i32);
1453 return CurDAG->getTargetConstant((uint64_t)ARMCC::AL, MVT::i32);
1467 if (LoadedVT == MVT::i32 && isPre &&
1471 } else if (LoadedVT == MVT::i32 && !isPre &&
1475 } else if (LoadedVT == MVT::i32 &&
1480 } else if (LoadedVT == MVT::i16 &&
1486 } else if (LoadedVT == MVT::i8 || LoadedVT == MVT::i1) {
1513 CurDAG->getRegister(0, MVT::i32), Chain };
1514 return CurDAG->getMachineNode(Opcode, SDLoc(N), MVT::i32,
1515 MVT::i32, MVT::Other, Ops);
1520 CurDAG->getRegister(0, MVT::i32), Chain };
1521 return CurDAG->getMachineNode(Opcode, SDLoc(N), MVT::i32,
1522 MVT::i32, MVT::Other, Ops);
1543 case MVT::i32:
1546 case MVT::i16:
1552 case MVT::i8:
1553 case MVT::i1:
1569 CurDAG->getRegister(0, MVT::i32), Chain };
1570 return CurDAG->getMachineNode(Opcode, SDLoc(N), MVT::i32, MVT::i32,
1571 MVT::Other, Ops);
1581 CurDAG->getTargetConstant(ARM::GPRPairRegClassID, MVT::i32);
1582 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::gsub_0, MVT::i32);
1583 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::gsub_1, MVT::i32);
1592 CurDAG->getTargetConstant(ARM::DPR_VFP2RegClassID, MVT::i32);
1593 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::ssub_0, MVT::i32);
1594 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::ssub_1, MVT::i32);
1602 SDValue RegClass = CurDAG->getTargetConstant(ARM::QPRRegClassID, MVT::i32);
1603 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::dsub_0, MVT::i32);
1604 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::dsub_1, MVT::i32);
1612 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQPRRegClassID, MVT::i32);
1613 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::qsub_0, MVT::i32);
1614 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::qsub_1, MVT::i32);
1624 CurDAG->getTargetConstant(ARM::QPR_VFP2RegClassID, MVT::i32);
1625 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::ssub_0, MVT::i32);
1626 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::ssub_1, MVT::i32);
1627 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::ssub_2, MVT::i32);
1628 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::ssub_3, MVT::i32);
1638 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQPRRegClassID, MVT::i32);
1639 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::dsub_0, MVT::i32);
1640 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::dsub_1, MVT::i32);
1641 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::dsub_2, MVT::i32);
1642 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::dsub_3, MVT::i32);
1652 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQQQPRRegClassID, MVT::i32);
1653 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::qsub_0, MVT::i32);
1654 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::qsub_1, MVT::i32);
1655 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::qsub_2, MVT::i32);
1656 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::qsub_3, MVT::i32);
1681 return CurDAG->getTargetConstant(Alignment, MVT::i32);
1751 case MVT::v8i8: OpcodeIndex = 0; break;
1752 case MVT::v4i16: OpcodeIndex = 1; break;
1753 case MVT::v2f32:
1754 case MVT::v2i32: OpcodeIndex = 2; break;
1755 case MVT::v1i64: OpcodeIndex = 3; break;
1757 case MVT::v16i8: OpcodeIndex = 0; break;
1758 case MVT::v8i16: OpcodeIndex = 1; break;
1759 case MVT::v4f32:
1760 case MVT::v4i32: OpcodeIndex = 2; break;
1761 case MVT::v2i64: OpcodeIndex = 3;
1773 ResTy = EVT::getVectorVT(*CurDAG->getContext(), MVT::i64, ResTyElts);
1778 ResTys.push_back(MVT::i32);
1779 ResTys.push_back(MVT::Other);
1782 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1820 ResTy, AddrTy, MVT::Other, OpsA);
1887 case MVT::v8i8: OpcodeIndex = 0; break;
1888 case MVT::v4i16: OpcodeIndex = 1; break;
1889 case MVT::v2f32:
1890 case MVT::v2i32: OpcodeIndex = 2; break;
1891 case MVT::v1i64: OpcodeIndex = 3; break;
1893 case MVT::v16i8: OpcodeIndex = 0; break;
1894 case MVT::v8i16: OpcodeIndex = 1; break;
1895 case MVT::v4f32:
1896 case MVT::v4i32: OpcodeIndex = 2; break;
1897 case MVT::v2i64: OpcodeIndex = 3;
1904 ResTys.push_back(MVT::i32);
1905 ResTys.push_back(MVT::Other);
1908 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1921 SrcReg = SDValue(createDRegPairNode(MVT::v2i64, V0, V1), 0);
1929 SrcReg = SDValue(createQuadDRegsNode(MVT::v4i64, V0, V1, V2, V3), 0);
1935 SrcReg = SDValue(createQRegPairNode(MVT::v4i64, Q0, Q1), 0);
1976 SDValue RegSeq = SDValue(createQuadQRegsNode(MVT::v8i64, V0, V1, V2, V3), 0);
1983 MVT::Other, OpsA);
2042 Align = CurDAG->getTargetConstant(Alignment, MVT::i32);
2048 case MVT::v8i8: OpcodeIndex = 0; break;
2049 case MVT::v4i16: OpcodeIndex = 1; break;
2050 case MVT::v2f32:
2051 case MVT::v2i32: OpcodeIndex = 2; break;
2053 case MVT::v8i16: OpcodeIndex = 0; break;
2054 case MVT::v4f32:
2055 case MVT::v4i32: OpcodeIndex = 1; break;
2064 MVT::i64, ResTyElts));
2067 ResTys.push_back(MVT::i32);
2068 ResTys.push_back(MVT::Other);
2071 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2086 SuperReg = SDValue(createDRegPairNode(MVT::v2i64, V0, V1), 0);
2088 SuperReg = SDValue(createQRegPairNode(MVT::v4i64, V0, V1), 0);
2095 SuperReg = SDValue(createQuadDRegsNode(MVT::v4i64, V0, V1, V2, V3), 0);
2097 SuperReg = SDValue(createQuadQRegsNode(MVT::v8i64, V0, V1, V2, V3), 0);
2155 Align = CurDAG->getTargetConstant(Alignment, MVT::i32);
2160 case MVT::v8i8: OpcodeIndex = 0; break;
2161 case MVT::v4i16: OpcodeIndex = 1; break;
2162 case MVT::v2f32:
2163 case MVT::v2i32: OpcodeIndex = 2; break;
2167 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2189 ResTys.push_back(EVT::getVectorVT(*CurDAG->getContext(), MVT::i64,ResTyElts));
2191 ResTys.push_back(MVT::i32);
2192 ResTys.push_back(MVT::Other);
2221 RegSeq = SDValue(createDRegPairNode(MVT::v16i8, V0, V1), 0);
2229 RegSeq = SDValue(createQuadDRegsNode(MVT::v4i64, V0, V1, V2, V3), 0);
2238 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); // predicate register
2269 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2276 CurDAG->getTargetConstant(LSB, MVT::i32),
2278 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2285 MVT::i32);
2288 return CurDAG->SelectNodeTo(N, ARM::MOVsi, MVT::i32, Ops, 5);
2292 CurDAG->getTargetConstant(LSB, MVT::i32),
2293 CurDAG->getTargetConstant(Width, MVT::i32),
2295 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2313 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2315 CurDAG->getTargetConstant(LSB, MVT::i32),
2316 CurDAG->getTargetConstant(Width, MVT::i32),
2318 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2342 CurDAG->getTargetConstant(ARM_AM::getSORegOffset(SOVal), MVT::i32);
2343 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2345 return CurDAG->SelectNodeTo(N, Opc, MVT::i32,Ops, 6);
2357 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2359 return CurDAG->SelectNodeTo(N, ARM::MOVCCsi, MVT::i32, Ops, 6);
2363 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2365 return CurDAG->SelectNodeTo(N, ARM::MOVCCsr, MVT::i32, Ops, 7);
2392 SDValue True = CurDAG->getTargetConstant(TrueImm, MVT::i32);
2393 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2395 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2425 SDValue True = CurDAG->getTargetConstant(TrueImm, MVT::i32);
2426 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2428 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2446 if (!Subtarget->isThumb1Only() && VT == MVT::i32) {
2502 SDValue Tmp2 = CurDAG->getTargetConstant(CCVal, MVT::i32);
2507 case MVT::i32:
2512 case MVT::f32:
2515 case MVT::f64:
2583 MVT::i32, MVT::i32, MVT::Other,
2638 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2640 ResNode = CurDAG->getMachineNode(ARM::tLDRpci, dl, MVT::i32, MVT::Other,
2645 CurDAG->getTargetConstant(0, MVT::i32),
2647 CurDAG->getRegister(0, MVT::i32),
2650 ResNode=CurDAG->getMachineNode(ARM::LDRcp, dl, MVT::i32, MVT::Other,
2666 SDValue Ops[] = { TFI, CurDAG->getTargetConstant(0, MVT::i32),
2667 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32) };
2668 return CurDAG->SelectNodeTo(N, ARM::tADDrSPi, MVT::i32, Ops, 4);
2672 SDValue Ops[] = { TFI, CurDAG->getTargetConstant(0, MVT::i32),
2673 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32),
2674 CurDAG->getRegister(0, MVT::i32) };
2675 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2698 SDValue ShImmOp = CurDAG->getTargetConstant(ShImm, MVT::i32);
2699 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2702 return CurDAG->SelectNodeTo(N, ARM::t2ADDrs, MVT::i32, Ops, 6);
2705 return CurDAG->SelectNodeTo(N, ARM::ADDrsi, MVT::i32, Ops, 7);
2714 SDValue ShImmOp = CurDAG->getTargetConstant(ShImm, MVT::i32);
2715 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2718 return CurDAG->SelectNodeTo(N, ARM::t2RSBrs, MVT::i32, Ops, 6);
2721 return CurDAG->SelectNodeTo(N, ARM::RSBrsi, MVT::i32, Ops, 7);
2737 if (VT != MVT::i32)
2759 MVT::i32);
2761 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32) };
2768 return CurDAG->getMachineNode(ARM::VMOVRRD, dl, MVT::i32, MVT::i32,
2770 CurDAG->getRegister(0, MVT::i32));
2776 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32) };
2777 return CurDAG->getMachineNode(ARM::t2UMULL, dl, MVT::i32, MVT::i32, Ops);
2780 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32),
2781 CurDAG->getRegister(0, MVT::i32) };
2784 dl, MVT::i32, MVT::i32, Ops);
2792 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32) };
2793 return CurDAG->getMachineNode(ARM::t2SMULL, dl, MVT::i32, MVT::i32, Ops);
2796 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32),
2797 CurDAG->getRegister(0, MVT::i32) };
2800 dl, MVT::i32, MVT::i32, Ops);
2807 CurDAG->getRegister(0, MVT::i32)};
2808 return CurDAG->getMachineNode(ARM::t2UMLAL, dl, MVT::i32, MVT::i32, Ops);
2812 CurDAG->getRegister(0, MVT::i32),
2813 CurDAG->getRegister(0, MVT::i32) };
2816 dl, MVT::i32, MVT::i32, Ops);
2823 CurDAG->getRegister(0, MVT::i32)};
2824 return CurDAG->getMachineNode(ARM::t2SMLAL, dl, MVT::i32, MVT::i32, Ops);
2828 CurDAG->getRegister(0, MVT::i32),
2829 CurDAG->getRegister(0, MVT::i32) };
2832 dl, MVT::i32, MVT::i32, Ops);
2872 MVT::i32);
2874 SDNode *ResNode = CurDAG->getMachineNode(Opc, dl, MVT::Other,
2875 MVT::Glue, Ops);
2892 case MVT::v8i8: Opc = ARM::VZIPd8; break;
2893 case MVT::v4i16: Opc = ARM::VZIPd16; break;
2894 case MVT::v2f32:
2896 case MVT::v2i32: Opc = ARM::VTRNd32; break;
2897 case MVT::v16i8: Opc = ARM::VZIPq8; break;
2898 case MVT::v8i16: Opc = ARM::VZIPq16; break;
2899 case MVT::v4f32:
2900 case MVT::v4i32: Opc = ARM::VZIPq32; break;
2903 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2912 case MVT::v8i8: Opc = ARM::VUZPd8; break;
2913 case MVT::v4i16: Opc = ARM::VUZPd16; break;
2914 case MVT::v2f32:
2916 case MVT::v2i32: Opc = ARM::VTRNd32; break;
2917 case MVT::v16i8: Opc = ARM::VUZPq8; break;
2918 case MVT::v8i16: Opc = ARM::VUZPq16; break;
2919 case MVT::v4f32:
2920 case MVT::v4i32: Opc = ARM::VUZPq32; break;
2923 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2932 case MVT::v8i8: Opc = ARM::VTRNd8; break;
2933 case MVT::v4i16: Opc = ARM::VTRNd16; break;
2934 case MVT::v2f32:
2935 case MVT::v2i32: Opc = ARM::VTRNd32; break;
2936 case MVT::v16i8: Opc = ARM::VTRNq8; break;
2937 case MVT::v8i16: Opc = ARM::VTRNq16; break;
2938 case MVT::v4f32:
2939 case MVT::v4i32: Opc = ARM::VTRNq32; break;
2942 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2950 if (EltVT == MVT::f64) {
2954 assert(EltVT == MVT::f32 && "unexpected type for BUILD_VECTOR");
3177 ResTys.push_back(MVT::i32);
3178 ResTys.push_back(MVT::i32);
3180 ResTys.push_back(MVT::Untyped);
3181 ResTys.push_back(MVT::Other);
3187 Ops.push_back(CurDAG->getRegister(0, MVT::i32));
3202 SDValue SubRegIdx = CurDAG->getTargetConstant(ARM::gsub_0, MVT::i32);
3204 dl, MVT::i32, SDValue(Ld, 0), SubRegIdx);
3214 SDValue SubRegIdx = CurDAG->getTargetConstant(ARM::gsub_1, MVT::i32);
3216 dl, MVT::i32, SDValue(Ld, 0), SubRegIdx);
3234 EVT ResTys[] = { MVT::i32, MVT::Other };
3244 Ops.push_back(SDValue(createGPRPairNode(MVT::Untyped, Val0, Val1), 0));
3247 Ops.push_back(CurDAG->getRegister(0, MVT::i32));
3437 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); // Predicate Register
3447 SDValue RegSeq = SDValue(createDRegPairNode(MVT::v16i8, V0, V1), 0);
3453 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); // Predicate Register
3568 PairedReg = CurDAG->getRegister(GPVR, MVT::Untyped);
3572 SDValue RegCopy = CurDAG->getCopyFromReg(Chain, dl, GPVR, MVT::Untyped,
3576 SDValue Sub0 = CurDAG->getTargetExtractSubreg(ARM::gsub_0, dl, MVT::i32,
3578 SDValue Sub1 = CurDAG->getTargetExtractSubreg(ARM::gsub_1, dl, MVT::i32,
3596 SDValue T0 = CurDAG->getCopyFromReg(Chain, dl, Reg0, MVT::i32,
3598 SDValue T1 = CurDAG->getCopyFromReg(Chain, dl, Reg1, MVT::i32,
3600 SDValue Pair = SDValue(createGPRPairNode(MVT::Untyped, T0, T1), 0);
3605 PairedReg = CurDAG->getRegister(GPVR, MVT::Untyped);
3620 Flag, MVT::i32);
3634 CurDAG->getVTList(MVT::Other, MVT::Glue), &AsmNodeOperands[0],