Lines Matching refs:CurDAG

82     return CurDAG->getTargetConstant(Imm, dl, MVT::i32);  in getI32Imm()
131 Pred = CurDAG->getTargetConstant(CN->getZExtValue(), SDLoc(N), MVT::i32); in SelectCMOVPred()
132 Reg = CurDAG->getRegister(ARM::CPSR, MVT::i32); in SelectCMOVPred()
340 for (SelectionDAG::allnodes_iterator I = CurDAG->allnodes_begin(), in PreprocessISelDAG()
341 E = CurDAG->allnodes_end(); I != E; ) { in PreprocessISelDAG()
405 Srl = CurDAG->getNode(ISD::SRL, SDLoc(Srl), MVT::i32, in PreprocessISelDAG()
407 CurDAG->getConstant(Srl_imm + TZ, SDLoc(Srl), in PreprocessISelDAG()
409 N1 = CurDAG->getNode(ISD::AND, SDLoc(N1), MVT::i32, in PreprocessISelDAG()
411 CurDAG->getConstant(And_imm, SDLoc(Srl), MVT::i32)); in PreprocessISelDAG()
412 N1 = CurDAG->getNode(ISD::SHL, SDLoc(N1), MVT::i32, in PreprocessISelDAG()
413 N1, CurDAG->getConstant(TZ, SDLoc(Srl), MVT::i32)); in PreprocessISelDAG()
414 CurDAG->UpdateNodeOperands(N, N0, N1); in PreprocessISelDAG()
436 CurDAG->getSubtarget().getInstrInfo()); in hasNoVMLxHazardUse()
520 NewMulConst = CurDAG->getConstant(NewMulConstVal, SDLoc(N), MVT::i32); in canExtractShiftFromMul()
527 CurDAG->RepositionNode(N.getNode()->getIterator(), M.getNode()); in replaceDAGValue()
528 CurDAG->ReplaceAllUsesWith(N, M); in replaceDAGValue()
547 Opc = CurDAG->getTargetConstant(ARM_AM::getSORegOpc(ARM_AM::lsl, in SelectImmShifterOperand()
565 Opc = CurDAG->getTargetConstant(ARM_AM::getSORegOpc(ShOpcVal, ShImmVal), in SelectImmShifterOperand()
592 Opc = CurDAG->getTargetConstant(ARM_AM::getSORegOpc(ShOpcVal, ShImmVal), in SelectRegShifterOperand()
605 !CurDAG->isBaseWithConstantOffset(N)) { in SelectAddrModeImm12()
609 Base = CurDAG->getTargetFrameIndex( in SelectAddrModeImm12()
610 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrModeImm12()
611 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectAddrModeImm12()
622 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectAddrModeImm12()
635 Base = CurDAG->getTargetFrameIndex( in SelectAddrModeImm12()
636 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrModeImm12()
638 OffImm = CurDAG->getTargetConstant(RHSC, SDLoc(N), MVT::i32); in SelectAddrModeImm12()
645 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectAddrModeImm12()
668 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, in SelectLdStSOReg()
679 !CurDAG->isBaseWithConstantOffset(N)) in SelectLdStSOReg()
752 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, ShOpcVal), in SelectLdStSOReg()
779 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, in SelectAddrMode2Worker()
790 !CurDAG->isBaseWithConstantOffset(N)) { in SelectAddrMode2Worker()
794 Base = CurDAG->getTargetFrameIndex( in SelectAddrMode2Worker()
795 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrMode2Worker()
802 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode2Worker()
803 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(ARM_AM::add, 0, in SelectAddrMode2Worker()
817 Base = CurDAG->getTargetFrameIndex( in SelectAddrMode2Worker()
818 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrMode2Worker()
820 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode2Worker()
827 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, RHSC, in SelectAddrMode2Worker()
837 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode2Worker()
838 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(ARM_AM::add, 0, in SelectAddrMode2Worker()
894 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, ShOpcVal), in SelectAddrMode2Worker()
930 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, ShAmt, ShOpcVal), in SelectAddrMode2OffsetReg()
946 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode2OffsetImmPre()
947 Opc = CurDAG->getTargetConstant(Val, SDLoc(Op), MVT::i32); in SelectAddrMode2OffsetImmPre()
965 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode2OffsetImm()
966 Opc = CurDAG->getTargetConstant(ARM_AM::getAM2Opc(AddSub, Val, in SelectAddrMode2OffsetImm()
987 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::sub, 0), SDLoc(N), in SelectAddrMode3()
992 if (!CurDAG->isBaseWithConstantOffset(N)) { in SelectAddrMode3()
996 Base = CurDAG->getTargetFrameIndex( in SelectAddrMode3()
997 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrMode3()
999 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode3()
1000 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::add, 0), SDLoc(N), in SelectAddrMode3()
1012 Base = CurDAG->getTargetFrameIndex( in SelectAddrMode3()
1013 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrMode3()
1015 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode3()
1022 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, RHSC), SDLoc(N), in SelectAddrMode3()
1029 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(ARM_AM::add, 0), SDLoc(N), in SelectAddrMode3()
1044 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode3Offset()
1045 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, Val), SDLoc(Op), in SelectAddrMode3Offset()
1051 Opc = CurDAG->getTargetConstant(ARM_AM::getAM3Opc(AddSub, 0), SDLoc(Op), in SelectAddrMode3Offset()
1058 if (!CurDAG->isBaseWithConstantOffset(N)) { in SelectAddrMode5()
1062 Base = CurDAG->getTargetFrameIndex( in SelectAddrMode5()
1063 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrMode5()
1070 Offset = CurDAG->getTargetConstant(ARM_AM::getAM5Opc(ARM_AM::add, 0), in SelectAddrMode5()
1082 Base = CurDAG->getTargetFrameIndex( in SelectAddrMode5()
1083 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectAddrMode5()
1091 Offset = CurDAG->getTargetConstant(ARM_AM::getAM5Opc(AddSub, RHSC), in SelectAddrMode5()
1097 Offset = CurDAG->getTargetConstant(ARM_AM::getAM5Opc(ARM_AM::add, 0), in SelectAddrMode5()
1127 Align = CurDAG->getTargetConstant(Alignment, SDLoc(N), MVT::i32); in SelectAddrMode6()
1140 Offset = CurDAG->getRegister(0, MVT::i32); in SelectAddrMode6Offset()
1150 Label = CurDAG->getTargetConstant(cast<ConstantSDNode>(N1)->getZExtValue(), in SelectAddrModePC()
1165 if (N.getOpcode() != ISD::ADD && !CurDAG->isBaseWithConstantOffset(N)) { in SelectThumbAddrModeRR()
1182 if (!CurDAG->isBaseWithConstantOffset(N)) { in SelectThumbAddrModeImm5S()
1194 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectThumbAddrModeImm5S()
1202 OffImm = CurDAG->getTargetConstant(RHSC, SDLoc(N), MVT::i32); in SelectThumbAddrModeImm5S()
1237 Base = CurDAG->getTargetFrameIndex( in SelectThumbAddrModeSP()
1238 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectThumbAddrModeSP()
1239 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectThumbAddrModeSP()
1243 if (!CurDAG->isBaseWithConstantOffset(N)) in SelectThumbAddrModeSP()
1260 Base = CurDAG->getTargetFrameIndex( in SelectThumbAddrModeSP()
1261 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectThumbAddrModeSP()
1263 OffImm = CurDAG->getTargetConstant(RHSC, SDLoc(N), MVT::i32); in SelectThumbAddrModeSP()
1283 !CurDAG->isBaseWithConstantOffset(N)) { in SelectT2AddrModeImm12()
1287 Base = CurDAG->getTargetFrameIndex( in SelectT2AddrModeImm12()
1288 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectT2AddrModeImm12()
1289 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectT2AddrModeImm12()
1302 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectT2AddrModeImm12()
1319 Base = CurDAG->getTargetFrameIndex( in SelectT2AddrModeImm12()
1320 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectT2AddrModeImm12()
1322 OffImm = CurDAG->getTargetConstant(RHSC, SDLoc(N), MVT::i32); in SelectT2AddrModeImm12()
1329 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectT2AddrModeImm12()
1337 !CurDAG->isBaseWithConstantOffset(N)) in SelectT2AddrModeImm8()
1349 Base = CurDAG->getTargetFrameIndex( in SelectT2AddrModeImm8()
1350 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectT2AddrModeImm8()
1352 OffImm = CurDAG->getTargetConstant(RHSC, SDLoc(N), MVT::i32); in SelectT2AddrModeImm8()
1369 ? CurDAG->getTargetConstant(RHSC, SDLoc(N), MVT::i32) in SelectT2AddrModeImm8Offset()
1370 : CurDAG->getTargetConstant(-RHSC, SDLoc(N), MVT::i32); in SelectT2AddrModeImm8Offset()
1381 if (N.getOpcode() != ISD::ADD && !CurDAG->isBaseWithConstantOffset(N)) in SelectT2AddrModeSoReg()
1430 ShImm = CurDAG->getTargetConstant(ShAmt, SDLoc(N), MVT::i32); in SelectT2AddrModeSoReg()
1440 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i32); in SelectT2AddrModeExclusive()
1442 if (N.getOpcode() != ISD::ADD || !CurDAG->isBaseWithConstantOffset(N)) in SelectT2AddrModeExclusive()
1456 Base = CurDAG->getTargetFrameIndex( in SelectT2AddrModeExclusive()
1457 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in SelectT2AddrModeExclusive()
1460 OffImm = CurDAG->getTargetConstant(RHSC/4, SDLoc(N), MVT::i32); in SelectT2AddrModeExclusive()
1467 static inline SDValue getAL(SelectionDAG *CurDAG, const SDLoc &dl) { in getAL() argument
1468 return CurDAG->getTargetConstant((uint64_t)ARMCC::AL, dl, MVT::i32); in getAL()
1527 SDValue Ops[]= { Base, AMOpc, getAL(CurDAG, SDLoc(N)), in tryARMIndexedLoad()
1528 CurDAG->getRegister(0, MVT::i32), Chain }; in tryARMIndexedLoad()
1529 ReplaceNode(N, CurDAG->getMachineNode(Opcode, SDLoc(N), MVT::i32, in tryARMIndexedLoad()
1535 SDValue Ops[]= { Base, Offset, AMOpc, getAL(CurDAG, SDLoc(N)), in tryARMIndexedLoad()
1536 CurDAG->getRegister(0, MVT::i32), Chain }; in tryARMIndexedLoad()
1537 ReplaceNode(N, CurDAG->getMachineNode(Opcode, SDLoc(N), MVT::i32, in tryARMIndexedLoad()
1585 SDValue Ops[]= { Base, Offset, getAL(CurDAG, SDLoc(N)), in tryT2IndexedLoad()
1586 CurDAG->getRegister(0, MVT::i32), Chain }; in tryT2IndexedLoad()
1587 ReplaceNode(N, CurDAG->getMachineNode(Opcode, SDLoc(N), MVT::i32, MVT::i32, in tryT2IndexedLoad()
1599 CurDAG->getTargetConstant(ARM::GPRPairRegClassID, dl, MVT::i32); in createGPRPairNode()
1600 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::gsub_0, dl, MVT::i32); in createGPRPairNode()
1601 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::gsub_1, dl, MVT::i32); in createGPRPairNode()
1603 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops); in createGPRPairNode()
1610 CurDAG->getTargetConstant(ARM::DPR_VFP2RegClassID, dl, MVT::i32); in createSRegPairNode()
1611 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::ssub_0, dl, MVT::i32); in createSRegPairNode()
1612 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::ssub_1, dl, MVT::i32); in createSRegPairNode()
1614 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops); in createSRegPairNode()
1620 SDValue RegClass = CurDAG->getTargetConstant(ARM::QPRRegClassID, dl, in createDRegPairNode()
1622 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::dsub_0, dl, MVT::i32); in createDRegPairNode()
1623 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::dsub_1, dl, MVT::i32); in createDRegPairNode()
1625 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops); in createDRegPairNode()
1631 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQPRRegClassID, dl, in createQRegPairNode()
1633 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::qsub_0, dl, MVT::i32); in createQRegPairNode()
1634 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::qsub_1, dl, MVT::i32); in createQRegPairNode()
1636 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops); in createQRegPairNode()
1644 CurDAG->getTargetConstant(ARM::QPR_VFP2RegClassID, dl, MVT::i32); in createQuadSRegsNode()
1645 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::ssub_0, dl, MVT::i32); in createQuadSRegsNode()
1646 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::ssub_1, dl, MVT::i32); in createQuadSRegsNode()
1647 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::ssub_2, dl, MVT::i32); in createQuadSRegsNode()
1648 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::ssub_3, dl, MVT::i32); in createQuadSRegsNode()
1651 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops); in createQuadSRegsNode()
1658 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQPRRegClassID, dl, in createQuadDRegsNode()
1660 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::dsub_0, dl, MVT::i32); in createQuadDRegsNode()
1661 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::dsub_1, dl, MVT::i32); in createQuadDRegsNode()
1662 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::dsub_2, dl, MVT::i32); in createQuadDRegsNode()
1663 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::dsub_3, dl, MVT::i32); in createQuadDRegsNode()
1666 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops); in createQuadDRegsNode()
1673 SDValue RegClass = CurDAG->getTargetConstant(ARM::QQQQPRRegClassID, dl, in createQuadQRegsNode()
1675 SDValue SubReg0 = CurDAG->getTargetConstant(ARM::qsub_0, dl, MVT::i32); in createQuadQRegsNode()
1676 SDValue SubReg1 = CurDAG->getTargetConstant(ARM::qsub_1, dl, MVT::i32); in createQuadQRegsNode()
1677 SDValue SubReg2 = CurDAG->getTargetConstant(ARM::qsub_2, dl, MVT::i32); in createQuadQRegsNode()
1678 SDValue SubReg3 = CurDAG->getTargetConstant(ARM::qsub_3, dl, MVT::i32); in createQuadQRegsNode()
1681 return CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, dl, VT, Ops); in createQuadQRegsNode()
1703 return CurDAG->getTargetConstant(Alignment, dl, MVT::i32); in GetVLDSTAlign()
1852 ResTy = EVT::getVectorVT(*CurDAG->getContext(), MVT::i64, ResTyElts); in SelectVLD()
1860 SDValue Pred = getAL(CurDAG, dl); in SelectVLD()
1861 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in SelectVLD()
1886 VLd = CurDAG->getMachineNode(Opc, dl, ResTys, Ops); in SelectVLD()
1896 SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, ResTy), 0); in SelectVLD()
1898 SDNode *VLdA = CurDAG->getMachineNode(QOpcodes0[OpcodeIndex], dl, in SelectVLD()
1916 VLd = CurDAG->getMachineNode(QOpcodes1[OpcodeIndex], dl, ResTys, Ops); in SelectVLD()
1937 CurDAG->getTargetExtractSubreg(Sub0 + Vec, dl, VT, SuperReg)); in SelectVLD()
1941 CurDAG->RemoveDeadNode(N); in SelectVLD()
1990 SDValue Pred = getAL(CurDAG, dl); in SelectVST()
1991 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in SelectVST()
2010 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF,dl,VT), 0) in SelectVST()
2042 SDNode *VSt = CurDAG->getMachineNode(Opc, dl, ResTys, Ops); in SelectVST()
2059 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, VT), 0) in SelectVST()
2066 SDNode *VStA = CurDAG->getMachineNode(QOpcodes0[OpcodeIndex], dl, in SelectVST()
2086 SDNode *VStB = CurDAG->getMachineNode(QOpcodes1[OpcodeIndex], dl, ResTys, in SelectVST()
2127 Align = CurDAG->getTargetConstant(Alignment, dl, MVT::i32); in SelectVLDSTLane()
2148 ResTys.push_back(EVT::getVectorVT(*CurDAG->getContext(), in SelectVLDSTLane()
2155 SDValue Pred = getAL(CurDAG, dl); in SelectVLDSTLane()
2156 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in SelectVLDSTLane()
2177 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, VT), 0) in SelectVLDSTLane()
2192 SDNode *VLdLn = CurDAG->getMachineNode(Opc, dl, ResTys, Ops); in SelectVLDSTLane()
2207 CurDAG->getTargetExtractSubreg(Sub0 + Vec, dl, VT, SuperReg)); in SelectVLDSTLane()
2211 CurDAG->RemoveDeadNode(N); in SelectVLDSTLane()
2242 Align = CurDAG->getTargetConstant(Alignment, dl, MVT::i32); in SelectVLDDup()
2253 SDValue Pred = getAL(CurDAG, dl); in SelectVLDDup()
2254 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in SelectVLDDup()
2276 ResTys.push_back(EVT::getVectorVT(*CurDAG->getContext(), MVT::i64,ResTyElts)); in SelectVLDDup()
2280 SDNode *VLdDup = CurDAG->getMachineNode(Opc, dl, ResTys, Ops); in SelectVLDDup()
2289 CurDAG->getTargetExtractSubreg(SubIdx+Vec, dl, VT, SuperReg)); in SelectVLDDup()
2293 CurDAG->RemoveDeadNode(N); in SelectVLDDup()
2314 ? SDValue(CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, VT), 0) in SelectVTBL()
2324 Ops.push_back(getAL(CurDAG, dl)); // predicate in SelectVTBL()
2325 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); // predicate register in SelectVTBL()
2326 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, VT, Ops)); in SelectVTBL()
2356 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in tryV6T2BitfieldExtractOp()
2363 CurDAG->getTargetConstant(LSB, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2364 getAL(CurDAG, dl), Reg0, Reg0 }; in tryV6T2BitfieldExtractOp()
2365 CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops); in tryV6T2BitfieldExtractOp()
2372 CurDAG->getTargetConstant(ARM_AM::getSORegOpc(ShOpcVal, LSB), dl, in tryV6T2BitfieldExtractOp()
2375 getAL(CurDAG, dl), Reg0, Reg0 }; in tryV6T2BitfieldExtractOp()
2376 CurDAG->SelectNodeTo(N, ARM::MOVsi, MVT::i32, Ops); in tryV6T2BitfieldExtractOp()
2381 CurDAG->getTargetConstant(LSB, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2382 CurDAG->getTargetConstant(Width, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2383 getAL(CurDAG, dl), Reg0 }; in tryV6T2BitfieldExtractOp()
2384 CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops); in tryV6T2BitfieldExtractOp()
2403 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in tryV6T2BitfieldExtractOp()
2405 CurDAG->getTargetConstant(LSB, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2406 CurDAG->getTargetConstant(Width, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2407 getAL(CurDAG, dl), Reg0 }; in tryV6T2BitfieldExtractOp()
2408 CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops); in tryV6T2BitfieldExtractOp()
2424 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in tryV6T2BitfieldExtractOp()
2426 CurDAG->getTargetConstant(Srl_imm, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2427 CurDAG->getTargetConstant(Width, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2428 getAL(CurDAG, dl), Reg0 }; in tryV6T2BitfieldExtractOp()
2429 CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops); in tryV6T2BitfieldExtractOp()
2444 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in tryV6T2BitfieldExtractOp()
2446 CurDAG->getTargetConstant(LSB, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2447 CurDAG->getTargetConstant(Width - 1, dl, MVT::i32), in tryV6T2BitfieldExtractOp()
2448 getAL(CurDAG, dl), Reg0 }; in tryV6T2BitfieldExtractOp()
2449 CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops); in tryV6T2BitfieldExtractOp()
2489 CurDAG->SelectNodeTo(N, Opcode, VT, ADDSrc0); in tryABSOp()
2610 SDValue Ops[] = { A, B, Acc, getAL(CurDAG, dl), in trySMLAWSMULW()
2611 CurDAG->getRegister(0, MVT::i32) }; in trySMLAWSMULW()
2612 CurDAG->SelectNodeTo(N, Opc, MVT::i32, MVT::Other, Ops); in trySMLAWSMULW()
2619 SDValue Ops[] = { A, B, getAL(CurDAG, dl), in trySMLAWSMULW()
2620 CurDAG->getRegister(0, MVT::i32)}; in trySMLAWSMULW()
2621 CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops); in trySMLAWSMULW()
2642 SDNode *CmpSwap = CurDAG->getMachineNode( in SelectCMP_SWAP()
2644 CurDAG->getVTList(MVT::i32, MVT::i32, MVT::Other), Ops); in SelectCMP_SWAP()
2652 CurDAG->RemoveDeadNode(N); in SelectCMP_SWAP()
2701 SDValue CPIdx = CurDAG->getTargetConstantPool( in Select()
2702 ConstantInt::get(Type::getInt32Ty(*CurDAG->getContext()), Val), in Select()
2703 TLI->getPointerTy(CurDAG->getDataLayout())); in Select()
2707 SDValue Pred = getAL(CurDAG, dl); in Select()
2708 SDValue PredReg = CurDAG->getRegister(0, MVT::i32); in Select()
2709 SDValue Ops[] = { CPIdx, Pred, PredReg, CurDAG->getEntryNode() }; in Select()
2710 ResNode = CurDAG->getMachineNode(ARM::tLDRpci, dl, MVT::i32, MVT::Other, in Select()
2715 CurDAG->getTargetConstant(0, dl, MVT::i32), in Select()
2716 getAL(CurDAG, dl), in Select()
2717 CurDAG->getRegister(0, MVT::i32), in Select()
2718 CurDAG->getEntryNode() in Select()
2720 ResNode = CurDAG->getMachineNode(ARM::LDRcp, dl, MVT::i32, MVT::Other, in Select()
2733 SDValue TFI = CurDAG->getTargetFrameIndex( in Select()
2734 FI, TLI->getPointerTy(CurDAG->getDataLayout())); in Select()
2741 CurDAG->SelectNodeTo(N, ARM::tADDframe, MVT::i32, TFI, in Select()
2742 CurDAG->getTargetConstant(0, dl, MVT::i32)); in Select()
2747 SDValue Ops[] = { TFI, CurDAG->getTargetConstant(0, dl, MVT::i32), in Select()
2748 getAL(CurDAG, dl), CurDAG->getRegister(0, MVT::i32), in Select()
2749 CurDAG->getRegister(0, MVT::i32) }; in Select()
2750 CurDAG->SelectNodeTo(N, Opc, MVT::i32, Ops); in Select()
2775 SDValue ShImmOp = CurDAG->getTargetConstant(ShImm, dl, MVT::i32); in Select()
2776 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in Select()
2778 SDValue Ops[] = { V, V, ShImmOp, getAL(CurDAG, dl), Reg0, Reg0 }; in Select()
2779 CurDAG->SelectNodeTo(N, ARM::t2ADDrs, MVT::i32, Ops); in Select()
2782 SDValue Ops[] = { V, V, Reg0, ShImmOp, getAL(CurDAG, dl), Reg0, in Select()
2784 CurDAG->SelectNodeTo(N, ARM::ADDrsi, MVT::i32, Ops); in Select()
2794 SDValue ShImmOp = CurDAG->getTargetConstant(ShImm, dl, MVT::i32); in Select()
2795 SDValue Reg0 = CurDAG->getRegister(0, MVT::i32); in Select()
2797 SDValue Ops[] = { V, V, ShImmOp, getAL(CurDAG, dl), Reg0, Reg0 }; in Select()
2798 CurDAG->SelectNodeTo(N, ARM::t2RSBrs, MVT::i32, Ops); in Select()
2801 SDValue Ops[] = { V, V, Reg0, ShImmOp, getAL(CurDAG, dl), Reg0, in Select()
2803 CurDAG->SelectNodeTo(N, ARM::RSBrsi, MVT::i32, Ops); in Select()
2833 CurDAG->getConstant(~N1C->getZExtValue(), dl, MVT::i32); in Select()
2837 CurDAG->RepositionNode(N->getIterator(), NewImm.getNode()); in Select()
2840 SDValue Ops[] = {CurDAG->getRegister(ARM::CPSR, MVT::i32), in Select()
2841 N->getOperand(0), NewImm, getAL(CurDAG, dl), in Select()
2842 CurDAG->getRegister(0, MVT::i32)}; in Select()
2843 ReplaceNode(N, CurDAG->getMachineNode(ARM::tBIC, dl, MVT::i32, Ops)); in Select()
2846 SDValue Ops[] = {N->getOperand(0), NewImm, getAL(CurDAG, dl), in Select()
2847 CurDAG->getRegister(0, MVT::i32), in Select()
2848 CurDAG->getRegister(0, MVT::i32)}; in Select()
2850 CurDAG->getMachineNode(ARM::t2BICrr, dl, MVT::i32, Ops)); in Select()
2883 SDValue Imm16 = CurDAG->getTargetConstant((N2CVal & 0xFFFF0000U) >> 16, in Select()
2886 getAL(CurDAG, dl), CurDAG->getRegister(0, MVT::i32) }; in Select()
2887 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, VT, Ops)); in Select()
2894 ReplaceNode(N, CurDAG->getMachineNode(ARM::VMOVRRD, dl, MVT::i32, MVT::i32, in Select()
2895 N->getOperand(0), getAL(CurDAG, dl), in Select()
2896 CurDAG->getRegister(0, MVT::i32))); in Select()
2903 getAL(CurDAG, dl), CurDAG->getRegister(0, MVT::i32) }; in Select()
2905 N, CurDAG->getMachineNode(ARM::t2UMULL, dl, MVT::i32, MVT::i32, Ops)); in Select()
2909 getAL(CurDAG, dl), CurDAG->getRegister(0, MVT::i32), in Select()
2910 CurDAG->getRegister(0, MVT::i32) }; in Select()
2911 ReplaceNode(N, CurDAG->getMachineNode( in Select()
2922 getAL(CurDAG, dl), CurDAG->getRegister(0, MVT::i32) }; in Select()
2924 N, CurDAG->getMachineNode(ARM::t2SMULL, dl, MVT::i32, MVT::i32, Ops)); in Select()
2928 getAL(CurDAG, dl), CurDAG->getRegister(0, MVT::i32), in Select()
2929 CurDAG->getRegister(0, MVT::i32) }; in Select()
2930 ReplaceNode(N, CurDAG->getMachineNode( in Select()
2940 getAL(CurDAG, dl), in Select()
2941 CurDAG->getRegister(0, MVT::i32) }; in Select()
2942 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, MVT::i32, MVT::i32, Ops)); in Select()
2968 getAL(CurDAG, dl), in Select()
2969 CurDAG->getRegister(0, MVT::i32) }; in Select()
2971 CurDAG->SelectNodeTo(N, opc, MVT::i32, MVT::i32, Ops); in Select()
2979 N->getOperand(3), getAL(CurDAG, dl), in Select()
2980 CurDAG->getRegister(0, MVT::i32)}; in Select()
2982 N, CurDAG->getMachineNode(ARM::t2UMLAL, dl, MVT::i32, MVT::i32, Ops)); in Select()
2986 N->getOperand(3), getAL(CurDAG, dl), in Select()
2987 CurDAG->getRegister(0, MVT::i32), in Select()
2988 CurDAG->getRegister(0, MVT::i32) }; in Select()
2989 ReplaceNode(N, CurDAG->getMachineNode( in Select()
2998 N->getOperand(3), getAL(CurDAG, dl), in Select()
2999 CurDAG->getRegister(0, MVT::i32)}; in Select()
3001 N, CurDAG->getMachineNode(ARM::t2SMLAL, dl, MVT::i32, MVT::i32, Ops)); in Select()
3005 N->getOperand(3), getAL(CurDAG, dl), in Select()
3006 CurDAG->getRegister(0, MVT::i32), in Select()
3007 CurDAG->getRegister(0, MVT::i32) }; in Select()
3008 ReplaceNode(N, CurDAG->getMachineNode( in Select()
3047 SDValue Tmp2 = CurDAG->getTargetConstant(((unsigned) in Select()
3051 SDNode *ResNode = CurDAG->getMachineNode(Opc, dl, MVT::Other, in Select()
3060 CurDAG->RemoveDeadNode(N); in Select()
3078 SDValue Pred = getAL(CurDAG, dl); in Select()
3079 SDValue PredReg = CurDAG->getRegister(0, MVT::i32); in Select()
3081 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, VT, VT, Ops)); in Select()
3099 SDValue Pred = getAL(CurDAG, dl); in Select()
3100 SDValue PredReg = CurDAG->getRegister(0, MVT::i32); in Select()
3102 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, VT, VT, Ops)); in Select()
3119 SDValue Pred = getAL(CurDAG, dl); in Select()
3120 SDValue PredReg = CurDAG->getRegister(0, MVT::i32); in Select()
3122 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, VT, VT, Ops)); in Select()
3392 Ops.push_back(getAL(CurDAG, dl)); in Select()
3393 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); in Select()
3401 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, RetType, Ops)); in Select()
3425 SDValue Ops[] = {MemAddr, getAL(CurDAG, dl), in Select()
3426 CurDAG->getRegister(0, MVT::i32), Chain}; in Select()
3427 SDNode *Ld = CurDAG->getMachineNode(NewOpc, dl, ResTys, Ops); in Select()
3441 CurDAG->getTargetConstant(ARM::gsub_0, dl, MVT::i32); in Select()
3442 SDNode *ResNode = CurDAG->getMachineNode(TargetOpcode::EXTRACT_SUBREG, in Select()
3454 CurDAG->getTargetConstant(ARM::gsub_1, dl, MVT::i32); in Select()
3455 SDNode *ResNode = CurDAG->getMachineNode(TargetOpcode::EXTRACT_SUBREG, in Select()
3462 CurDAG->RemoveDeadNode(N); in Select()
3487 Ops.push_back(getAL(CurDAG, dl)); in Select()
3488 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); in Select()
3495 SDNode *St = CurDAG->getMachineNode(NewOpc, dl, ResTys, Ops); in Select()
3697 getAL(CurDAG, dl), // Predicate in Select()
3698 CurDAG->getRegister(0, MVT::i32)}; // Predicate Register in Select()
3699 ReplaceNode(N, CurDAG->getMachineNode(ARM::VTBL1, dl, VT, Ops)); in Select()
3711 SDValue Ops[] = {RegSeq, N->getOperand(2), getAL(CurDAG, dl), // Predicate in Select()
3712 CurDAG->getRegister(0, MVT::i32)}; // Predicate Register in Select()
3713 ReplaceNode(N, CurDAG->getMachineNode(ARM::VTBL2, dl, VT, Ops)); in Select()
3735 SelectionDAG *CurDAG, in getIntOperandsFromRegisterString() argument
3748 Ops.push_back(CurDAG->getTargetConstant(IntField, DL, MVT::i32)); in getIntOperandsFromRegisterString()
3963 getIntOperandsFromRegisterString(RegString->getString(), CurDAG, DL, Ops); in tryReadRegister()
3982 Ops.push_back(getAL(CurDAG, DL)); in tryReadRegister()
3983 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); in tryReadRegister()
3985 ReplaceNode(N, CurDAG->getMachineNode(Opcode, DL, ResTypes, Ops)); in tryReadRegister()
3993 Ops = { CurDAG->getTargetConstant(BankedReg, DL, MVT::i32), in tryReadRegister()
3994 getAL(CurDAG, DL), CurDAG->getRegister(0, MVT::i32), in tryReadRegister()
3997 N, CurDAG->getMachineNode(IsThumb2 ? ARM::t2MRSbanked : ARM::MRSbanked, in tryReadRegister()
4023 Ops = { getAL(CurDAG, DL), CurDAG->getRegister(0, MVT::i32), in tryReadRegister()
4026 CurDAG->getMachineNode(Opcode, DL, MVT::i32, MVT::Other, Ops)); in tryReadRegister()
4044 SDValue Ops[] = { CurDAG->getTargetConstant(SYSmValue, DL, MVT::i32), in tryReadRegister()
4045 getAL(CurDAG, DL), CurDAG->getRegister(0, MVT::i32), in tryReadRegister()
4048 N, CurDAG->getMachineNode(ARM::t2MRS_M, DL, MVT::i32, MVT::Other, Ops)); in tryReadRegister()
4055 Ops = { getAL(CurDAG, DL), CurDAG->getRegister(0, MVT::i32), in tryReadRegister()
4057 ReplaceNode(N, CurDAG->getMachineNode(IsThumb2 ? ARM::t2MRS_AR : ARM::MRS, in tryReadRegister()
4063 Ops = { getAL(CurDAG, DL), CurDAG->getRegister(0, MVT::i32), in tryReadRegister()
4066 N, CurDAG->getMachineNode(IsThumb2 ? ARM::t2MRSsys_AR : ARM::MRSsys, DL, in tryReadRegister()
4084 getIntOperandsFromRegisterString(RegString->getString(), CurDAG, DL, Ops); in tryWriteRegister()
4103 Ops.push_back(getAL(CurDAG, DL)); in tryWriteRegister()
4104 Ops.push_back(CurDAG->getRegister(0, MVT::i32)); in tryWriteRegister()
4107 ReplaceNode(N, CurDAG->getMachineNode(Opcode, DL, MVT::Other, Ops)); in tryWriteRegister()
4114 Ops = { CurDAG->getTargetConstant(BankedReg, DL, MVT::i32), N->getOperand(2), in tryWriteRegister()
4115 getAL(CurDAG, DL), CurDAG->getRegister(0, MVT::i32), in tryWriteRegister()
4118 N, CurDAG->getMachineNode(IsThumb2 ? ARM::t2MSRbanked : ARM::MSRbanked, in tryWriteRegister()
4137 Ops = { N->getOperand(2), getAL(CurDAG, DL), in tryWriteRegister()
4138 CurDAG->getRegister(0, MVT::i32), N->getOperand(0) }; in tryWriteRegister()
4139 ReplaceNode(N, CurDAG->getMachineNode(Opcode, DL, MVT::Other, Ops)); in tryWriteRegister()
4160 SDValue Ops[] = { CurDAG->getTargetConstant(SYSmValue, DL, MVT::i32), in tryWriteRegister()
4161 N->getOperand(2), getAL(CurDAG, DL), in tryWriteRegister()
4162 CurDAG->getRegister(0, MVT::i32), N->getOperand(0) }; in tryWriteRegister()
4163 ReplaceNode(N, CurDAG->getMachineNode(ARM::t2MSR_M, DL, MVT::Other, Ops)); in tryWriteRegister()
4172 Ops = { CurDAG->getTargetConstant(Mask, DL, MVT::i32), N->getOperand(2), in tryWriteRegister()
4173 getAL(CurDAG, DL), CurDAG->getRegister(0, MVT::i32), in tryWriteRegister()
4175 ReplaceNode(N, CurDAG->getMachineNode(IsThumb2 ? ARM::t2MSR_AR : ARM::MSR, in tryWriteRegister()
4262 PairedReg = CurDAG->getRegister(GPVR, MVT::Untyped); in tryInlineAsm()
4266 SDValue RegCopy = CurDAG->getCopyFromReg(Chain, dl, GPVR, MVT::Untyped, in tryInlineAsm()
4270 SDValue Sub0 = CurDAG->getTargetExtractSubreg(ARM::gsub_0, dl, MVT::i32, in tryInlineAsm()
4272 SDValue Sub1 = CurDAG->getTargetExtractSubreg(ARM::gsub_1, dl, MVT::i32, in tryInlineAsm()
4274 SDValue T0 = CurDAG->getCopyToReg(Sub0, dl, Reg0, Sub0, in tryInlineAsm()
4276 SDValue T1 = CurDAG->getCopyToReg(Sub1, dl, Reg1, Sub1, T0.getValue(1)); in tryInlineAsm()
4281 CurDAG->UpdateNodeOperands(GU, Ops); in tryInlineAsm()
4289 SDValue T0 = CurDAG->getCopyFromReg(Chain, dl, Reg0, MVT::i32, in tryInlineAsm()
4291 SDValue T1 = CurDAG->getCopyFromReg(Chain, dl, Reg1, MVT::i32, in tryInlineAsm()
4298 PairedReg = CurDAG->getRegister(GPVR, MVT::Untyped); in tryInlineAsm()
4299 Chain = CurDAG->getCopyToReg(T1, dl, GPVR, Pair, T1.getValue(1)); in tryInlineAsm()
4315 AsmNodeOperands[AsmNodeOperands.size() -1] = CurDAG->getTargetConstant( in tryInlineAsm()
4329 SDValue New = CurDAG->getNode(ISD::INLINEASM, SDLoc(N), in tryInlineAsm()
4330 CurDAG->getVTList(MVT::Other, MVT::Glue), AsmNodeOperands); in tryInlineAsm()