Lines Matching defs:Reg2
2863 static bool invalidateWindowsRegisterPairing(unsigned Reg1, unsigned Reg2,
2873 if (Reg2 == AArch64::FP)
2877 if (TRI->getEncodingValue(Reg2) == TRI->getEncodingValue(Reg1) + 1)
2885 (Reg1 - AArch64::X19) % 2 == 0 && Reg2 == AArch64::LR && !IsFirst)
2890 /// Returns true if Reg1 and Reg2 cannot be paired using a ldp/stp instruction.
2894 static bool invalidateRegisterPairing(unsigned Reg1, unsigned Reg2,
2899 return invalidateWindowsRegisterPairing(Reg1, Reg2, NeedsWinCFI, IsFirst,
2905 return Reg2 == AArch64::LR;
2914 unsigned Reg2 = AArch64::NoRegister;
2921 bool isPaired() const { return Reg2 != AArch64::NoRegister; }
3018 RPI.Reg2 = NextReg;
3024 RPI.Reg2 = NextReg;
3028 RPI.Reg2 = NextReg;
3035 RPI.Reg2 = NextReg;
3052 assert((!RPI.isPaired() || !NeedsFrameRecord || RPI.Reg2 != AArch64::FP ||
3058 RPI.Reg2 == AArch64::LR) &&
3067 ((RPI.Reg1 == AArch64::LR && RPI.Reg2 == AArch64::FP) ||
3068 RPI.Reg1 + 1 == RPI.Reg2))) &&
3088 ((!IsWindows && RPI.Reg2 == AArch64::FP) ||
3089 (IsWindows && RPI.Reg2 == AArch64::LR)))
3115 ((!IsWindows && RPI.Reg2 == AArch64::FP) ||
3116 (IsWindows && RPI.Reg2 == AArch64::LR)))
3128 ((!IsWindows && RPI.Reg1 == AArch64::LR && RPI.Reg2 == AArch64::FP) ||
3129 (IsWindows && RPI.Reg1 == AArch64::FP && RPI.Reg2 == AArch64::LR)))
3173 MIB.addReg(RPI.Reg2);
3178 if (RPI.isPaired() && !MRI.isReserved(RPI.Reg2))
3179 MBB.addLiveIn(RPI.Reg2);
3186 unsigned Reg2 = RPI.Reg2;
3292 if (RPI.isPaired()) dbgs() << ", " << printReg(Reg2, TRI);
3297 assert((!NeedsWinCFI || !(Reg1 == AArch64::LR && Reg2 == AArch64::FP)) &&
3305 std::swap(Reg1, Reg2);
3336 if (!MRI.isReserved(Reg2))
3337 MBB.addLiveIn(Reg2);
3357 if (!MRI.isReserved(Reg2))
3358 MBB.addLiveIn(Reg2);
3359 MIB.addReg(Reg2, getPrologueDeath(MF, Reg2));
3411 MIB.addReg(RPI.Reg2, RegState::Define);
3429 unsigned Reg2 = RPI.Reg2;
3472 if (RPI.isPaired()) dbgs() << ", " << printReg(Reg2, TRI);
3483 std::swap(Reg1, Reg2);
3522 MIB.addReg(Reg2, getDefRegState(true));