Home | History | Annotate | Download | only in ARM

Lines Matching refs:CurDAG

84     return CurDAG->getTargetConstant(Imm, MVT::i32);
385 ShReg = CurDAG->getRegister(0, MVT::i32);
392 Opc = CurDAG->getTargetConstant(ARM_AM::getSORegOpc(ShOpcVal, ShImmVal),
404 !CurDAG->isBaseWithConstantOffset(N)) {
408 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
409 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
419 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
432 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
434 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
441 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
464 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt,
475 !CurDAG->isBaseWithConstantOffset(N))
540 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, ShOpcVal),
569 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt,
580 !CurDAG->isBaseWithConstantOffset(N)) {
584 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
590 Offset = CurDAG->getRegister(0, MVT::i32);
591 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(ARM_AM::add, 0,
605 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
607 Offset = CurDAG->getRegister(0, MVT::i32);
614 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, RHSC,
624 Offset = CurDAG->getRegister(0, MVT::i32);
625 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(ARM_AM::add, 0,
681 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, ShOpcVal),
696 Offset = CurDAG->getRegister(0, MVT::i32);
697 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, Val,
722 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, ShOpcVal),
735 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::sub, 0),MVT::i32);
739 if (!CurDAG->isBaseWithConstantOffset(N)) {
743 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
745 Offset = CurDAG->getRegister(0, MVT::i32);
746 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::add, 0),MVT::i32);
757 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
759 Offset = CurDAG->getRegister(0, MVT::i32);
766 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, RHSC),MVT::i32);
772 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::add, 0), MVT::i32);
786 Offset = CurDAG->getRegister(0, MVT::i32);
787 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, Val), MVT::i32);
792 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, 0), MVT::i32);
798 if (!CurDAG->isBaseWithConstantOffset(N)) {
802 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
808 Offset = CurDAG->getTargetConstant(ARM_AM::getAM5Opc(ARM_AM::add, 0),
820 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
828 Offset = CurDAG->getTargetConstant(ARM_AM::getAM5Opc(AddSub, RHSC),
834 Offset = CurDAG->getTargetConstant(ARM_AM::getAM5Opc(ARM_AM::add, 0),
858 Align = CurDAG->getTargetConstant(Alignment, MVT::i32);
871 Offset = CurDAG->getRegister(0, MVT::i32);
881 Label = CurDAG->getTargetConstant(cast<ConstantSDNode>(N1)->getZExtValue(),
896 CurDAG->isBaseWithConstantOffset(N)) {
923 if (!CurDAG->isBaseWithConstantOffset(N))
979 if (!CurDAG->isBaseWithConstantOffset(N)) {
988 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1005 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1013 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1018 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1044 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
1045 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1049 if (!CurDAG->isBaseWithConstantOffset(N))
1061 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
1063 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1105 !CurDAG->isBaseWithConstantOffset(N)) {
1109 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
1110 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1122 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1139 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
1141 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1148 OffImm = CurDAG->getTargetConstant(0, MVT::i32);
1156 !CurDAG->isBaseWithConstantOffset(N))
1168 Base = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
1170 OffImm = CurDAG->getTargetConstant(RHSC, MVT::i32);
1187 ? CurDAG->getTargetConstant(RHSC, MVT::i32)
1188 : CurDAG->getTargetConstant(-RHSC, MVT::i32);
1199 if (N.getOpcode() != ISD::ADD && !CurDAG->isBaseWithConstantOffset(N))
1246 ShImm = CurDAG->getTargetConstant(ShAmt, MVT::i32);
1254 static inline SDValue getAL(SelectionDAG *CurDAG) {
1255 return CurDAG->getTargetConstant((uint64_t)ARMCC::AL, MVT::i32);
1296 SDValue Ops[]= { Base, Offset, AMOpc, getAL(CurDAG),
1297 CurDAG->getRegister(0, MVT::i32), Chain };
1298 return CurDAG->getMachineNode(Opcode, N->getDebugLoc(), MVT::i32, MVT::i32,
1344 SDValue Ops[]= { Base, Offset, getAL(CurDAG),
1345 CurDAG->getRegister(0, MVT::i32), Chain };
1346 return CurDAG->getMachineNode(Opcode, N->getDebugLoc(), MVT::i32, MVT::i32,
1358 CurDAG->getTargetConstant(ARM::DPR_VFP2RegClassID, MVT::i32);
1359 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::ssub_0, MVT::i32);
1360 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::ssub_1, MVT::i32);
1362 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops, 5);
1369 SDValue RegClass = CurDAG->getTargetConstant(ARM::QPRRegClassID, MVT::i32);
1370 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::dsub_0, MVT::i32);
1371 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::dsub_1, MVT::i32);
1373 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops, 5);
1380 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQPRRegClassID, MVT::i32);
1381 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::qsub_0, MVT::i32);
1382 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::qsub_1, MVT::i32);
1384 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops, 5);
1393 CurDAG->getTargetConstant(ARM::QPR_VFP2RegClassID, MVT::i32);
1394 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::ssub_0, MVT::i32);
1395 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::ssub_1, MVT::i32);
1396 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::ssub_2, MVT::i32);
1397 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::ssub_3, MVT::i32);
1400 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops, 9);
1408 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQPRRegClassID, MVT::i32);
1409 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::dsub_0, MVT::i32);
1410 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::dsub_1, MVT::i32);
1411 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::dsub_2, MVT::i32);
1412 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::dsub_3, MVT::i32);
1415 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops, 9);
1423 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQQQPRRegClassID, MVT::i32);
1424 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::qsub_0, MVT::i32);
1425 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::qsub_1, MVT::i32);
1426 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::qsub_2, MVT::i32);
1427 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::qsub_3, MVT::i32);
1430 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops, 9);
1452 return CurDAG->getTargetConstant(Alignment, MVT::i32);
1497 ResTy = EVT::getVectorVT(*CurDAG->getContext(), MVT::i64, ResTyElts);
1505 SDValue Pred = getAL(CurDAG);
1506 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1523 VLd = CurDAG->getMachineNode(Opc, dl, ResTys, Ops.data(), Ops.size());
1533 SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, ResTy), 0);
1535 SDNode *VLdA = CurDAG->getMachineNode(QOpcodes0[OpcodeIndex], dl,
1553 VLd = CurDAG->getMachineNode(QOpcodes1[OpcodeIndex], dl, ResTys,
1572 CurDAG->getTargetExtractSubreg(Sub0 + Vec, dl, VT, SuperReg));
1623 SDValue Pred = getAL(CurDAG);
1624 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1643 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF,dl,VT), 0)
1667 CurDAG->getMachineNode(Opc, dl, ResTys, Ops.data(), Ops.size());
1683 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, VT), 0)
1690 SDNode *VStA = CurDAG->getMachineNode(QOpcodes0[OpcodeIndex], dl,
1710 SDNode *VStB = CurDAG->getMachineNode(QOpcodes1[OpcodeIndex], dl, ResTys,
1751 Align = CurDAG->getTargetConstant(Alignment, MVT::i32);
1772 ResTys.push_back(EVT::getVectorVT(*CurDAG->getContext(),
1779 SDValue Pred = getAL(CurDAG);
1780 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1801 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, VT), 0)
1816 SDNode *VLdLn = CurDAG->getMachineNode(Opc, dl, ResTys,
1829 CurDAG->getTargetExtractSubreg(Sub0 + Vec, dl, VT, SuperReg));
1864 Align = CurDAG->getTargetConstant(Alignment, MVT::i32);
1875 SDValue Pred = getAL(CurDAG);
1876 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1892 ResTys.push_back(EVT::getVectorVT(*CurDAG->getContext(), MVT::i64,ResTyElts));
1897 CurDAG->getMachineNode(Opc, dl, ResTys, Ops.data(), Ops.size());
1906 CurDAG->getTargetExtractSubreg(SubIdx+Vec, dl, VT, SuperReg));
1931 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, VT), 0)
1941 Ops.push_back(getAL(CurDAG)); // predicate
1942 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); // predicate register
1943 return CurDAG->getMachineNode(Opc, dl, VT, Ops.data(), Ops.size());
1971 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1973 CurDAG->getTargetConstant(LSB, MVT::i32),
1974 CurDAG->getTargetConstant(Width, MVT::i32),
1975 getAL(CurDAG), Reg0 };
1976 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
1993 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
1995 CurDAG->getTargetConstant(LSB, MVT::i32),
1996 CurDAG->getTargetConstant(Width, MVT::i32),
1997 getAL(CurDAG), Reg0 };
1998 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2023 CurDAG->getTargetConstant(ARM_AM::getSORegOffset(SOVal), MVT::i32);
2024 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2026 return CurDAG->SelectNodeTo(N, Opc, MVT::i32,Ops, 6);
2038 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2040 return CurDAG->SelectNodeTo(N, ARM::MOVCCs, MVT::i32, Ops, 7);
2067 SDValue True = CurDAG->getTargetConstant(TrueImm, MVT::i32);
2068 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2070 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2100 SDValue True = CurDAG->getTargetConstant(TrueImm, MVT::i32);
2101 SDValue CC = CurDAG->getTargetConstant(CCVal, MVT::i32);
2103 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2180 SDValue Tmp2 = CurDAG->getTargetConstant(CCVal, MVT::i32);
2198 return CurDAG->SelectNodeTo(N, Opc, VT, Ops, 5);
2238 CurDAG->getTargetConstantPool(ConstantInt::get(
2239 Type::getInt32Ty(*CurDAG->getContext()), Val),
2244 SDValue Pred = getAL(CurDAG);
2245 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2246 SDValue Ops[] = { CPIdx, Pred, PredReg, CurDAG->getEntryNode() };
2247 ResNode = CurDAG->getMachineNode(ARM::tLDRpci, dl, MVT::i32, MVT::Other,
2252 CurDAG->getTargetConstant(0, MVT::i32),
2253 getAL(CurDAG),
2254 CurDAG->getRegister(0, MVT::i32),
2255 CurDAG->getEntryNode()
2257 ResNode=CurDAG->getMachineNode(ARM::LDRcp, dl, MVT::i32, MVT::Other,
2270 SDValue TFI = CurDAG->getTargetFrameIndex(FI, TLI.getPointerTy());
2272 return CurDAG->SelectNodeTo(N, ARM::tADDrSPi, MVT::i32, TFI,
2273 CurDAG
2277 SDValue Ops[] = { TFI, CurDAG->getTargetConstant(0, MVT::i32),
2278 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32),
2279 CurDAG->getRegister(0, MVT::i32) };
2280 return CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops, 5);
2303 SDValue ShImmOp = CurDAG->getTargetConstant(ShImm, MVT::i32);
2304 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2306 SDValue Ops[] = { V, V, ShImmOp, getAL(CurDAG), Reg0, Reg0 };
2307 return CurDAG->SelectNodeTo(N, ARM::t2ADDrs, MVT::i32, Ops, 6);
2309 SDValue Ops[] = { V, V, Reg0, ShImmOp, getAL(CurDAG), Reg0, Reg0 };
2310 return CurDAG->SelectNodeTo(N, ARM::ADDrs, MVT::i32, Ops, 7);
2319 SDValue ShImmOp = CurDAG->getTargetConstant(ShImm, MVT::i32);
2320 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32);
2322 SDValue Ops[] = { V, V, ShImmOp, getAL(CurDAG), Reg0, Reg0 };
2323 return CurDAG->SelectNodeTo(N, ARM::t2RSBrs, MVT::i32, Ops, 6);
2325 SDValue Ops[] = { V, V, Reg0, ShImmOp, getAL(CurDAG), Reg0, Reg0 };
2326 return CurDAG->SelectNodeTo(N, ARM::RSBrs, MVT::i32, Ops, 7);
2363 SDValue Imm16 = CurDAG->getTargetConstant((N2CVal & 0xFFFF0000U) >> 16,
2366 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32) };
2367 return CurDAG->getMachineNode(Opc, dl, VT, Ops, 4);
2373 return CurDAG->getMachineNode(ARM::VMOVRRD, dl, MVT::i32, MVT::i32,
2374 N->getOperand(0), getAL(CurDAG),
2375 CurDAG->getRegister(0, MVT::i32));
2381 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32),
2382 CurDAG->getRegister(0, MVT::i32) };
2383 return CurDAG->getMachineNode(ARM::t2UMULL, dl, MVT::i32, MVT::i32,Ops,4);
2386 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32),
2387 CurDAG->getRegister(0, MVT::i32) };
2388 return CurDAG->getMachineNode(Subtarget->hasV6Ops() ?
2398 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32) };
2399 return CurDAG->getMachineNode(ARM::t2SMULL, dl, MVT::i32, MVT::i32,Ops,4);
2402 getAL(CurDAG), CurDAG->getRegister(0, MVT::i32),
2403 CurDAG->getRegister(0, MVT::i32) };
2404 return CurDAG->getMachineNode(Subtarget->hasV6Ops() ?
2444 SDValue Tmp2 = CurDAG->getTargetConstant(((unsigned)
2448 SDNode *ResNode = CurDAG->getMachineNode(Opc, dl, MVT::Other,
2475 SDValue Pred = getAL(CurDAG);
2476 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2478 return CurDAG->getMachineNode(Opc, dl, VT, VT, Ops, 4);
2494 SDValue Pred = getAL(CurDAG);
2495 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2497 return CurDAG->getMachineNode(Opc, dl, VT, VT, Ops, 4);
2513 SDValue Pred = getAL(CurDAG);
2514 SDValue PredReg = CurDAG->getRegister(0, MVT::i32);
2516 return CurDAG->getMachineNode(Opc, dl, VT, VT, Ops, 4);
2723 Ops.push_back(getAL(CurDAG));
2724 Ops.push_back(CurDAG->getRegister(0, MVT::i32));
2726 SDNode *Ld = CurDAG->getMachineNode(NewOpc, dl, ResTys, Ops.data(),
2736 Chain = CurDAG->getCopyToReg(CurDAG->getEntryNode(), dl, ARM::R0,
2738 Chain = CurDAG->getCopyToReg(Chain, dl, ARM::R1,
2744 SDValue Result = CurDAG->getCopyFromReg(CurDAG->getEntryNode(), dl,
2750 SDValue Result = CurDAG->getCopyFromReg(CurDAG->getEntryNode(), dl,
2770 Chain = CurDAG->getCopyToReg(CurDAG->getEntryNode(), dl, ARM::R2, Val0,
2772 Chain = CurDAG->getCopyToReg(Chain, dl, ARM::R3, Val1, Chain.getValue(1));
2775 Val0 = CurDAG->getCopyFromReg(CurDAG->getEntryNode(), dl,
2778 Val1 = CurDAG->getCopyFromReg(CurDAG->getEntryNode(), dl,
2792 Ops.push_back(getAL(CurDAG));
2793 Ops.push_back(CurDAG->getRegister(0, MVT::i32));
2800 SDNode *St = CurDAG->getMachineNode(NewOpc, dl, ResTys, Ops.data(),
2965 Ops.push_back(getAL(CurDAG)); // Predicate
2966 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); // Predicate Register
2967 return CurDAG->getMachineNode(ARM::VTBL1, dl, VT, Ops.data(), Ops.size());
2981 Ops.push_back(getAL(CurDAG)); // Predicate
2982 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); // Predicate Register
2983 return CurDAG->getMachineNode(ARM::VTBL2Pseudo, dl, VT,