Lines Matching defs:CurDAG
150 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i64);
207 Res2 = CurDAG->getTargetConstant(ShtAmt, SDLoc(N), MVT::i32);
304 Imm = CurDAG->getTargetConstant(MulImm, SDLoc(N), MVT::i32);
320 Imm = CurDAG->getTargetConstant(MulImm, SDLoc(N), MVT::i32);
335 Imm = CurDAG->getRegister(BaseReg + C, MVT::Other);
576 SDValue RC = CurDAG->getTargetConstant(TRC->getID(), dl, MVT::i64);
578 SDValue(CurDAG->getMachineNode(TargetOpcode::COPY_TO_REGCLASS,
613 Val = CurDAG->getTargetConstant(Immed, dl, MVT::i32);
614 Shift = CurDAG->getTargetConstant(ShVal, dl, MVT::i32);
647 return SelectArithImmed(CurDAG->getConstant(Immed, SDLoc(N), MVT::i32), Val,
701 if (CurDAG->shouldOptForSize() || V.hasOneUse())
794 SDValue NewShiftAmt = CurDAG->getTargetConstant(NewShiftC, DL, VT);
795 SDValue BitWidthMinus1 = CurDAG->getTargetConstant(BitWidth - 1, DL, VT);
796 Reg = SDValue(CurDAG->getMachineNode(NewShiftOp, DL, VT, LHS->getOperand(0),
800 Shift = CurDAG->getTargetConstant(ShVal, DL, MVT::i32);
865 if (CurDAG->shouldOptForSize() || V.hasOneUse())
901 Shift = CurDAG->getTargetConstant(ShVal, SDLoc(N), MVT::i32);
912 static SDValue narrowIfNeeded(SelectionDAG *CurDAG, SDValue N) {
917 return CurDAG->getTargetExtractSubreg(AArch64::sub_32, dl, MVT::i32, N);
930 Imm = CurDAG->getSignedTargetConstant(RDVLImm, SDLoc(N), MVT::i32);
985 Reg = narrowIfNeeded(CurDAG, Reg);
986 Shift = CurDAG->getTargetConstant(getArithExtendImm(Ext, ShiftVal), SDLoc(N),
1010 Shift = CurDAG->getTargetConstant(getArithExtendImm(Ext, ShiftVal), SDLoc(N),
1053 const DataLayout &DL = CurDAG->getDataLayout();
1057 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
1058 OffImm = CurDAG->getTargetConstant(0, dl, MVT::i64);
1064 if (CurDAG->isBaseWithConstantOffset(N)) {
1076 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
1078 OffImm = CurDAG->getTargetConstant(RHSC >> Scale, dl, MVT::i64);
1091 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
1093 OffImm = CurDAG->getTargetConstant(RHSC >> Scale, dl, MVT::i64);
1104 OffImm = CurDAG->getTargetConstant(0, dl, MVT::i64);
1114 const DataLayout &DL = CurDAG->getDataLayout();
1118 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
1119 OffImm = CurDAG->getTargetConstant(0, dl, MVT::i64);
1136 if (CurDAG->isBaseWithConstantOffset(N)) {
1144 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
1146 OffImm = CurDAG->getTargetConstant(RHSC >> Scale, dl, MVT::i64);
1162 OffImm = CurDAG->getTargetConstant(0, dl, MVT::i64);
1174 if (!CurDAG->isBaseWithConstantOffset(N))
1183 Base = CurDAG->getTargetFrameIndex(
1184 FI, TLI->getPointerTy(CurDAG->getDataLayout()));
1186 OffImm = CurDAG->getTargetConstant(RHSC, SDLoc(N), MVT::i64);
1193 static SDValue Widen(SelectionDAG *CurDAG, SDValue N) {
1196 CurDAG->getMachineNode(TargetOpcode::IMPLICIT_DEF, dl, MVT::i64), 0);
1197 return CurDAG->getTargetInsertSubreg(AArch64::sub_32, dl, MVT::i64, ImpDef,
1218 Offset = narrowIfNeeded(CurDAG, N.getOperand(0).getOperand(0));
1219 SignExtend = CurDAG->getTargetConstant(Ext == AArch64_AM::SXTW, dl,
1223 SignExtend = CurDAG->getTargetConstant(0, dl, MVT::i32);
1266 DoShift = CurDAG->getTargetConstant(true, dl, MVT::i32);
1274 DoShift = CurDAG->getTargetConstant(true, dl, MVT::i32);
1279 DoShift = CurDAG->getTargetConstant(false, dl, MVT::i32);
1287 Offset = narrowIfNeeded(CurDAG, LHS.getOperand(0));
1288 SignExtend = CurDAG->getTargetConstant(Ext == AArch64_AM::SXTW, dl,
1299 Offset = narrowIfNeeded(CurDAG, RHS.getOperand(0));
1300 SignExtend = CurDAG->getTargetConstant(Ext == AArch64_AM::SXTW, dl,
1365 CurDAG->getMachineNode(AArch64::MOVi64imm, DL, MVT::i64, Ops);
1368 N = CurDAG->getNode(ISD::ADD, DL, MVT::i64, LHS, MOVIV);
1378 DoShift = CurDAG->getTargetConstant(true, DL, MVT::i32);
1386 DoShift = CurDAG->getTargetConstant(true, DL, MVT::i32);
1393 SignExtend = CurDAG->getTargetConstant(false, DL, MVT::i32);
1394 DoShift = CurDAG->getTargetConstant(false, DL, MVT::i32);
1455 CurDAG->getTargetConstant(RegClassIDs[Regs.size() - 2], DL, MVT::i32));
1460 Ops.push_back(CurDAG->getTargetConstant(SubRegs[i], DL, MVT::i32));
1464 CurDAG->getMachineNode(TargetOpcode::REG_SEQUENCE, DL, MVT::Untyped, Ops);
1486 ReplaceNode(N, CurDAG->getMachineNode(Opc, dl, VT, Ops));
1530 AUTKey = CurDAG->getTargetConstant(AUTKeyC, DL, MVT::i64);
1534 extractPtrauthBlendDiscriminators(AUTDisc, CurDAG);
1536 SDValue X16Copy = CurDAG->getCopyToReg(CurDAG->getEntryNode(), DL,
1540 SDNode *AUT = CurDAG->getMachineNode(AArch64::AUT, DL, MVT::i64, Ops);
1556 AUTKey = CurDAG->getTargetConstant(AUTKeyC, DL, MVT::i64);
1557 PACKey = CurDAG->getTargetConstant(PACKeyC, DL, MVT::i64);
1561 extractPtrauthBlendDiscriminators(AUTDisc, CurDAG);
1565 extractPtrauthBlendDiscriminators(PACDisc, CurDAG);
1567 SDValue X16Copy = CurDAG->getCopyToReg(CurDAG->getEntryNode(), DL,
1573 SDNode *AUTPAC = CurDAG->getMachineNode(AArch64::AUTPAC, DL, MVT::i64, Ops);
1650 SDValue Offset = CurDAG->getTargetConstant(OffsetVal, dl, MVT::i64);
1652 SDNode *Res = CurDAG->getMachineNode(Opcode, dl, MVT::i64, DstVT,
1657 CurDAG->setNodeMemRefs(cast<MachineSDNode>(Res), {MemOp});
1662 SDValue SubReg = CurDAG->getTargetConstant(AArch64::sub_32, dl, MVT::i32);
1664 SDValue(CurDAG->getMachineNode(
1666 CurDAG->getTargetConstant(0, dl, MVT::i64), LoadedVal,
1674 CurDAG->RemoveDeadNode(N);
1689 SDNode *Ld = CurDAG->getMachineNode(Opc, dl, ResTys, Ops);
1693 CurDAG->getTargetExtractSubreg(SubRegIdx + i, dl, VT, SuperReg));
1701 CurDAG->setNodeMemRefs(cast<MachineSDNode>(Ld), {MemOp});
1704 CurDAG->RemoveDeadNode(N);
1720 SDNode *Ld = CurDAG->getMachineNode(Opc, dl, ResTys, Ops);
1732 CurDAG->getTargetExtractSubreg(SubRegIdx + i, dl, VT, SuperReg));
1736 CurDAG->RemoveDeadNode(N);
1835 SDNode *WhilePair = CurDAG->getMachineNode(Opc, DL, MVT::Untyped, Ops);
1839 ReplaceUses(SDValue(N, I), CurDAG->getTargetExtractSubreg(
1842 CurDAG->RemoveDeadNode(N);
1851 SDNode *WhilePair = CurDAG->getMachineNode(Opc, DL, MVT::Untyped, Ops);
1855 ReplaceUses(SDValue(N, I), CurDAG->getTargetExtractSubreg(
1858 CurDAG->RemoveDeadNode(N);
1867 SDNode *Intrinsic = CurDAG->getMachineNode(Opcode, DL, MVT::Untyped, Ops);
1870 ReplaceUses(SDValue(N, i), CurDAG->getTargetExtractSubreg(
1873 CurDAG->RemoveDeadNode(N);
1884 CurDAG->getMachineNode(Opcode, DL, {MVT::Untyped, MVT::Other}, Ops);
1888 ReplaceUses(SDValue(N, i), CurDAG->getTargetExtractSubreg(
1894 CurDAG->RemoveDeadNode(N);
1923 Intrinsic = CurDAG->getMachineNode(Opcode, DL, MVT::Untyped,
1926 Intrinsic = CurDAG->getMachineNode(Opcode, DL, MVT::Untyped, Zdn, Zm);
1929 ReplaceUses(SDValue(N, i), CurDAG->getTargetExtractSubreg(
1932 CurDAG->RemoveDeadNode(N);
1948 CurDAG->getTargetConstant(0, DL, MVT::i64), Scale);
1956 SDNode *Load = CurDAG->getMachineNode(Opc, DL, ResTys, Ops);
1959 ReplaceUses(SDValue(N, i), CurDAG->getTargetExtractSubreg(
1965 CurDAG->RemoveDeadNode(N);
1980 SDValue Offset = CurDAG->getTargetConstant(0, DL, MVT::i64);
1991 SDNode *Load = CurDAG->getMachineNode(Opc, DL, ResTys, Ops);
1994 ReplaceUses(SDValue(N, i), CurDAG->getTargetExtractSubreg(
2000 CurDAG->RemoveDeadNode(N);
2027 CurDAG->getMachineNode(Opc, DL, {MVT::Untyped, MVT::Other}, Ops);
2031 ReplaceUses(SDValue(Node, I), CurDAG->getTargetExtractSubreg(
2037 CurDAG->RemoveDeadNode(Node);
2055 CurDAG->getMachineNode(Opc, DL, {MVT::Untyped, MVT::Other}, Ops);
2059 ReplaceUses(SDValue(Node, I), CurDAG->getTargetExtractSubreg(
2065 CurDAG->RemoveDeadNode(Node);
2080 SDNode *Intrinsic = CurDAG->getMachineNode(Op, DL, MVT::Untyped, Ops);
2083 ReplaceUses(SDValue(N, i), CurDAG->getTargetExtractSubreg(
2086 CurDAG->RemoveDeadNode(N);
2136 SDValue SubReg = CurDAG->getRegister(BaseReg, MVT::Other);
2138 SDNode *Mov = CurDAG->getMachineNode(Op, DL, {MVT::Untyped, MVT::Other}, Ops);
2143 CurDAG->getTargetExtractSubreg(AArch64::zsub0 + I, DL, VT,
2148 CurDAG->RemoveDeadNode(N);
2174 SDNode *Mov = CurDAG->getMachineNode(Op, DL, {MVT::Untyped, MVT::Other}, Ops);
2179 CurDAG->getTargetExtractSubreg(AArch64::zsub0 + I, DL, VT,
2185 CurDAG->RemoveDeadNode(N);
2208 SDNode *Res = CurDAG->getMachineNode(Opc, DL, MVT::Untyped, Ops);
2212 ReplaceUses(SDValue(N, I), CurDAG->getTargetExtractSubreg(
2214 CurDAG->RemoveDeadNode(N);
2228 SDNode *St = CurDAG->getMachineNode(Opc, dl, N->getValueType(0), Ops);
2232 CurDAG->setNodeMemRefs(cast<MachineSDNode>(St), {MemOp});
2251 CurDAG->getTargetConstant(0, dl, MVT::i64), Scale);
2257 SDNode *St = CurDAG->getMachineNode(Opc, dl, N->getValueType(0), Ops);
2265 const DataLayout &DL = CurDAG->getDataLayout();
2271 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
2272 OffImm = CurDAG->getTargetConstant(0, dl, MVT::i64);
2295 SDNode *St = CurDAG->getMachineNode(Opc, dl, ResTys, Ops);
2346 WidenVector(*CurDAG));
2354 SDValue Ops[] = {RegSeq, CurDAG->getTargetConstant(LaneNo, dl, MVT::i64),
2356 SDNode *Ld = CurDAG->getMachineNode(Opc, dl, ResTys, Ops);
2363 SDValue NV = CurDAG->getTargetExtractSubreg(QSubs[i], dl, WideVT, SuperReg);
2365 NV = NarrowVector(NV, *CurDAG);
2370 CurDAG->RemoveDeadNode(N);
2384 WidenVector(*CurDAG));
2394 CurDAG->getTargetConstant(LaneNo, dl,
2399 SDNode *Ld = CurDAG->getMachineNode(Opc, dl, ResTys, Ops);
2408 Narrow ? NarrowVector(SuperReg, *CurDAG) : SuperReg);
2414 SDValue NV = CurDAG->getTargetExtractSubreg(QSubs[i], dl, WideVT,
2417 NV = NarrowVector(NV, *CurDAG);
2424 CurDAG->RemoveDeadNode(N);
2438 WidenVector(*CurDAG));
2444 SDValue Ops[] = {RegSeq, CurDAG->getTargetConstant(LaneNo, dl, MVT::i64),
2446 SDNode *St = CurDAG->getMachineNode(Opc, dl, MVT::Other, Ops);
2450 CurDAG->setNodeMemRefs(cast<MachineSDNode>(St), {MemOp});
2466 WidenVector(*CurDAG));
2475 SDValue Ops[] = {RegSeq, CurDAG->getTargetConstant(LaneNo, dl, MVT::i64),
2479 SDNode *St = CurDAG->getMachineNode(Opc, dl, ResTys, Ops);
2483 CurDAG->setNodeMemRefs(cast<MachineSDNode>(St), {MemOp});
2488 static bool isBitfieldExtractOpFromAnd(SelectionDAG *CurDAG, SDNode *N,
2532 Opd0 = Widen(CurDAG, Op0->getOperand(0).getOperand(0));
2737 SDValue Opd0 = Widen(CurDAG, Op.getOperand(0));
2740 SDValue Ops[] = {Opd0, CurDAG->getTargetConstant(Immr, dl, VT),
2741 CurDAG->getTargetConstant(Imms, dl, VT)};
2742 CurDAG->SelectNodeTo(N, AArch64::SBFMXri, VT, Ops);
2746 static bool isBitfieldExtractOp(SelectionDAG *CurDAG, SDNode *N, unsigned &Opc,
2759 return isBitfieldExtractOpFromAnd(CurDAG, N, Opc, Opd0, Immr, Imms,
2790 if (!isBitfieldExtractOp(CurDAG, N, Opc, Opd0, Immr, Imms))
2799 SDValue Ops64[] = {Opd0, CurDAG->getTargetConstant(Immr, dl, MVT::i64),
2800 CurDAG->getTargetConstant(Imms, dl, MVT::i64)};
2802 SDNode *BFM = CurDAG->getMachineNode(Opc, dl, MVT::i64, Ops64);
2803 SDValue Inner = CurDAG->getTargetExtractSubreg(AArch64::sub_32, dl,
2809 SDValue Ops[] = {Opd0, CurDAG->getTargetConstant(Immr, dl, VT),
2810 CurDAG->getTargetConstant(Imms, dl, VT)};
2811 CurDAG->SelectNodeTo(N, Opc, VT, Ops);
3055 static SDValue getLeftShift(SelectionDAG *CurDAG, SDValue Op, int ShlAmount) {
3067 ShiftNode = CurDAG->getMachineNode(
3069 CurDAG->getTargetConstant(BitWidth - ShlAmount, dl, VT),
3070 CurDAG->getTargetConstant(BitWidth - 1 - ShlAmount, dl, VT));
3075 ShiftNode = CurDAG->getMachineNode(
3076 UBFMOpc, dl, VT, Op, CurDAG->getTargetConstant(ShrAmount, dl, VT),
3077 CurDAG->getTargetConstant(BitWidth - 1, dl, VT));
3084 static bool isBitfieldPositioningOpFromAnd(SelectionDAG *CurDAG, SDValue Op,
3091 static bool isBitfieldPositioningOpFromShl(SelectionDAG *CurDAG, SDValue Op,
3099 static bool isBitfieldPositioningOp(SelectionDAG *CurDAG, SDValue Op,
3107 KnownBits Known = CurDAG->computeKnownBits(Op);
3119 return isBitfieldPositioningOpFromAnd(CurDAG, Op, BiggerPattern,
3122 return isBitfieldPositioningOpFromShl(CurDAG, Op, BiggerPattern,
3129 static bool isBitfieldPositioningOpFromAnd(SelectionDAG *CurDAG, SDValue Op,
3174 ShlOp0 = Widen(CurDAG, ShlVal.getOperand(0));
3213 Src = getLeftShift(CurDAG, ShlOp0, ShlImm - DstLSB);
3251 static bool isBitfieldPositioningOpFromShl(SelectionDAG *CurDAG, SDValue Op,
3279 Src = getLeftShift(CurDAG, Op.getOperand(0), ShlImm - DstLSB);
3292 static bool tryBitfieldInsertOpFromOrAndImm(SDNode *N, SelectionDAG *CurDAG) {
3320 KnownBits Known = CurDAG->computeKnownBits(And);
3368 SDNode *MOVI = CurDAG->getMachineNode(
3369 MOVIOpc, DL, VT, CurDAG->getTargetConstant(BFIImm, DL, VT));
3373 CurDAG->getTargetConstant(ImmR, DL, VT),
3374 CurDAG->getTargetConstant(ImmS, DL, VT)};
3376 CurDAG->SelectNodeTo(N, Opc, VT, Ops);
3380 static bool isWorthFoldingIntoOrrWithShift(SDValue Dst, SelectionDAG *CurDAG,
3422 SDNode *UBFMNode = CurDAG->getMachineNode(
3424 CurDAG->getTargetConstant(SrlImm + NumTrailingZeroInShiftedMask, DL,
3426 CurDAG->getTargetConstant(
3456 SDValue Src, SDValue Dst, SelectionDAG *CurDAG,
3486 if (isWorthFoldingIntoOrrWithShift(Dst, CurDAG, ShiftedOperand,
3489 CurDAG->getTargetConstant(EncodedShiftImm, DL, VT)};
3490 CurDAG->SelectNodeTo(N, OrrOpc, VT, Ops);
3504 CurDAG->getTargetConstant(
3506 CurDAG->SelectNodeTo(N, OrrOpc, VT, Ops);
3523 CurDAG->getTargetConstant(
3525 CurDAG->SelectNodeTo(N, OrrOpc, VT, Ops);
3545 CurDAG->getTargetConstant(
3547 CurDAG->SelectNodeTo(N, OrrOpc, VT, Ops);
3556 SelectionDAG *CurDAG) {
3601 if (isBitfieldExtractOp(CurDAG, OrOpd0, BFXOpc, Src, ImmR, ImmS,
3620 } else if (isBitfieldPositioningOp(CurDAG, OrOpd0Val,
3636 KnownBits Known = CurDAG->computeKnownBits(OrOpd1Val);
3659 if (tryOrrWithShift(N, OrOpd0Val, OrOpd1Val, Src, Dst, CurDAG,
3665 SDValue Ops[] = {Dst, Src, CurDAG->getTargetConstant(ImmR, DL, VT),
3666 CurDAG->getTargetConstant(ImmS, DL, VT)};
3668 CurDAG->SelectNodeTo(N, Opc, VT, Ops);
3709 SDNode *LSR = CurDAG->getMachineNode(
3710 ShiftOpc, DL, VT, Src, CurDAG->getTargetConstant(LsrImm, DL, VT),
3711 CurDAG->getTargetConstant(BitWidth - 1, DL, VT));
3719 CurDAG->getTargetConstant(ImmR, DL, VT),
3720 CurDAG->getTargetConstant(ImmS, DL, VT)};
3722 CurDAG->SelectNodeTo(N, Opc, VT, Ops);
3738 CurDAG->SelectNodeTo(N, TargetOpcode::IMPLICIT_DEF, N->getValueType(0));
3742 if (tryBitfieldInsertOpFromOr(N, NUsefulBits, CurDAG))
3745 return tryBitfieldInsertOpFromOrAndImm(N, CurDAG);
3761 if (!isBitfieldPositioningOp(CurDAG, SDValue(N, 0), /*BiggerPattern=*/false,
3771 SDValue Ops[] = {Op0, CurDAG->getTargetConstant(ImmR, DL, VT),
3772 CurDAG->getTargetConstant(ImmS, DL, VT)};
3774 CurDAG->SelectNodeTo(N, Opc, VT, Ops);
3847 CurDAG->getCopyFromReg(CurDAG->getEntryNode(), DL, ZeroReg, SubVT);
3849 CurDAG->getMachineNode(NegOpc, DL, SubVT, Zero, Add1);
3867 CurDAG->getCopyFromReg(CurDAG->getEntryNode(), DL, ZeroReg, SubVT);
3869 CurDAG->getMachineNode(NotOpc, DL, SubVT, Zero, Add1);
3890 NewShiftAmt = narrowIfNeeded(CurDAG, NewShiftAmt);
3892 SDValue SubReg = CurDAG->getTargetConstant(AArch64::sub_32, DL, MVT::i32);
3893 MachineSDNode *Ext = CurDAG->getMachineNode(
3895 CurDAG->getTargetConstant(0, DL, MVT::i64), NewShiftAmt, SubReg);
3900 CurDAG->SelectNodeTo(N, Opc, VT, Ops);
3904 static bool checkCVTFixedPointOperandWithFBits(SelectionDAG *CurDAG, SDValue N,
3950 FixedPos = CurDAG->getTargetConstant(FBits, SDLoc(N), MVT::i32);
3956 return checkCVTFixedPointOperandWithFBits(CurDAG, N, FixedPos, RegWidth,
3963 return checkCVTFixedPointOperandWithFBits(CurDAG, N, FixedPos, RegWidth,
4035 SDValue SysRegImm = CurDAG->getTargetConstant(Imm, DL, MVT::i32);
4037 CurDAG->SelectNodeTo(N, Opcode64Bit, MVT::i64, MVT::Other /* Chain */,
4040 SDNode *MRRS = CurDAG->getMachineNode(
4047 SDValue Lo = CurDAG->getTargetExtractSubreg(AArch64::sube64, DL, MVT::i64,
4049 SDValue Hi = CurDAG->getTargetExtractSubreg(AArch64::subo64, DL, MVT::i64,
4083 CurDAG->SelectNodeTo(
4084 N, State, MVT::Other, CurDAG->getTargetConstant(Reg, DL, MVT::i32),
4085 CurDAG->getTargetConstant(Immed, DL, MVT::i16), N->getOperand(0));
4119 CurDAG->SelectNodeTo(N, AArch64::MSR, MVT::Other,
4120 CurDAG->getTargetConstant(Imm, DL, MVT::i32),
4125 SDNode *Pair = CurDAG->getMachineNode(
4127 {CurDAG->getTargetConstant(AArch64::XSeqPairsClassRegClass.getID(), DL,
4130 CurDAG->getTargetConstant(AArch64::sube64, DL, MVT::i32),
4132 CurDAG->getTargetConstant(AArch64::subo64, DL, MVT::i32)});
4134 CurDAG->SelectNodeTo(N, AArch64::MSRR, MVT::Other,
4135 CurDAG->getTargetConstant(Imm, DL, MVT::i32),
4164 SDNode *CmpSwap = CurDAG->getMachineNode(
4166 CurDAG->getVTList(RegTy, MVT::i32, MVT::Other), Ops);
4169 CurDAG->setNodeMemRefs(cast<MachineSDNode>(CmpSwap), {MemOp});
4173 CurDAG->RemoveDeadNode(N);
4192 Shift = CurDAG->getTargetConstant(0, DL, MVT::i32);
4193 Imm = CurDAG->getTargetConstant(Val, DL, MVT::i32);
4200 Shift = CurDAG->getTargetConstant(0, DL, MVT::i32);
4201 Imm = CurDAG->getTargetConstant(Val, DL, MVT::i32);
4206 Shift = CurDAG->getTargetConstant(8, DL, MVT::i32);
4207 Imm = CurDAG->getTargetConstant(Val >> 8, DL, MVT::i32);
4242 Shift = CurDAG->getTargetConstant(0, DL, MVT::i32);
4243 Imm = CurDAG->getTargetConstant(Val, DL, MVT::i32);
4250 Shift = CurDAG->getTargetConstant(0, DL, MVT::i32);
4251 Imm = CurDAG->getTargetConstant(Val, DL, MVT::i32);
4256 Shift = CurDAG->getTargetConstant(8, DL, MVT::i32);
4257 Imm = CurDAG->getTargetConstant(Val >> 8, DL, MVT::i32);
4282 Shift = CurDAG->getTargetConstant(0, DL, MVT::i32);
4283 Imm = CurDAG->getTargetConstant(Val & 0xFF, DL, MVT::i32);
4290 Shift = CurDAG->getTargetConstant(0, DL, MVT::i32);
4291 Imm = CurDAG->getTargetConstant(Val & 0xFF, DL, MVT::i32);
4296 Shift = CurDAG->getTargetConstant(8, DL, MVT::i32);
4297 Imm = CurDAG->getTargetConstant((Val >> 8) & 0xFF, DL, MVT::i32);
4313 Imm = CurDAG->getSignedTargetConstant(ImmVal, DL, MVT::i32);
4341 Imm = CurDAG->getTargetConstant(ImmVal, SDLoc(N), MVT::i32);
4382 Imm = CurDAG->getTargetConstant(encoding, DL, MVT::i64);
4411 Imm = CurDAG->getTargetConstant(ImmVal, SDLoc(N), MVT::i32);
4435 SDValue FiOp = CurDAG->getTargetFrameIndex(
4436 FI, TLI->getPointerTy(CurDAG->getDataLayout()));
4439 SDNode *Out = CurDAG->getMachineNode(
4441 {FiOp, CurDAG->getTargetConstant(0, DL, MVT::i64), N->getOperand(2),
4442 CurDAG->getTargetConstant(TagOffset, DL, MVT::i64)});
4458 SDNode *N1 = CurDAG->getMachineNode(AArch64::SUBP, DL, MVT::i64,
4460 SDNode *N2 = CurDAG->getMachineNode(AArch64::ADDXrr, DL, MVT::i64,
4462 SDNode *N3 = CurDAG->getMachineNode(
4464 {SDValue(N2, 0), CurDAG->getTargetConstant(0, DL, MVT::i64),
4465 CurDAG->getTargetConstant(TagOffset, DL, MVT::i64)});
4494 auto RC = CurDAG->getTargetConstant(AArch64::ZPRRegClassID, DL, MVT::i64);
4495 ReplaceNode(N, CurDAG->getMachineNode(TargetOpcode::COPY_TO_REGCLASS, DL, VT,
4523 auto RC = CurDAG->getTargetConstant(AArch64::ZPRRegClassID, DL, MVT::i64);
4524 ReplaceNode(N, CurDAG->getMachineNode(TargetOpcode::COPY_TO_REGCLASS, DL, VT,
4556 if (!TLI->isAllActivePredicate(*CurDAG, N0.getOperand(0)) ||
4557 !TLI->isAllActivePredicate(*CurDAG, N1.getOperand(0)))
4574 CurDAG->getTargetConstant(ShrAmt.getZExtValue(), DL, MVT::i32);
4580 CurDAG->SelectNodeTo(N, Opc, VT, Ops);
4605 SDValue Imm = CurDAG->getTargetConstant(
4612 CurDAG->SelectNodeTo(N, AArch64::XAR, N0.getValueType(), Ops);
4620 LLVM_DEBUG(errs() << "== "; Node->dump(CurDAG); errs() << "\n");
4702 SDValue New = CurDAG->getCopyFromReg(
4703 CurDAG->getEntryNode(), SDLoc(Node), AArch64::WZR, MVT::i32);
4707 SDValue New = CurDAG->getCopyFromReg(
4708 CurDAG->getEntryNode(), SDLoc(Node), AArch64::XZR, MVT::i64);
4721 SDValue TFI = CurDAG->getTargetFrameIndex(
4722 FI, TLI->getPointerTy(CurDAG->getDataLayout()));
4724 SDValue Ops[] = { TFI, CurDAG->getTargetConstant(0, DL, MVT::i32),
4725 CurDAG->getTargetConstant(Shifter, DL, MVT::i32) };
4726 CurDAG->SelectNodeTo(Node, AArch64::ADDXri, MVT::i64, Ops);
4738 SDValue Zero = CurDAG->getCopyFromReg(Chain, DL, AArch64::XZR, MVT::i64);
4740 CurDAG->getMachineNode(AArch64::GCSSS1, DL, MVT::Other, Val, Chain);
4741 SDNode *SS2 = CurDAG->getMachineNode(AArch64::GCSSS2, DL, MVT::i64,
4754 SDNode *Ld = CurDAG->getMachineNode(Op, DL, MVT::i64, MVT::i64,
4760 CurDAG->setNodeMemRefs(cast<MachineSDNode>(Ld), {MemOp});
4777 SDNode *St = CurDAG->getMachineNode(Op, DL, MVT::i32, MVT::Other, Ops);
4781 CurDAG->setNodeMemRefs(cast<MachineSDNode>(St), {MemOp});
5524 SDValue CopyFP = CurDAG->getCopyFromReg(Chain, DL, AArch64::FP, MVT::i64);
5526 CurDAG->getMachineNode(AArch64::SUBXri, DL, MVT::i64, CopyFP,
5527 CurDAG->getTargetConstant(8, DL, MVT::i32),
5528 CurDAG->getTargetConstant(0, DL, MVT::i32)),
5532 CurDAG->RemoveDeadNode(Node);
5534 auto &MF = CurDAG->getMachineFunction();
7357 const EVT MemVT = getMemVTFromNode(*(CurDAG->getContext()), Root);
7358 const DataLayout &DL = CurDAG->getDataLayout();
7366 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
7367 OffImm = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i64);
7401 Base = CurDAG->getTargetFrameIndex(FI, TLI->getPointerTy(DL));
7404 OffImm = CurDAG->getTargetConstant(Offset, SDLoc(N), MVT::i64);
7439 Offset = CurDAG->getTargetConstant(ImmOff >> Scale, DL, MVT::i64);
7441 SDNode *MI = CurDAG->getMachineNode(AArch64::MOVi64imm, DL, MVT::i64, Ops);
7465 return TLI->isAllActivePredicate(*CurDAG, N);
7477 if (CurDAG->isBaseWithConstantOffset(N))
7482 Offset = CurDAG->getTargetConstant(ImmOff / Scale, SDLoc(N), MVT::i64);
7489 Offset = CurDAG->getTargetConstant(0, SDLoc(N), MVT::i64);