aboutsummaryrefslogtreecommitdiff
path: root/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
diff options
context:
space:
mode:
authorzhijian lin <zhijian@ca.ibm.com>2025-04-03 13:22:49 -0400
committerGitHub <noreply@github.com>2025-04-03 13:22:49 -0400
commit1a540c3b8bcefaf6b36f261341ce55a1a24eca21 (patch)
tree838acb18cf64469e2bc49e604ea2c5601bda661d /llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
parent0bec0f5c059af5f920fe22ecda469b666b5971b0 (diff)
downloadllvm-1a540c3b8bcefaf6b36f261341ce55a1a24eca21.zip
llvm-1a540c3b8bcefaf6b36f261341ce55a1a24eca21.tar.gz
llvm-1a540c3b8bcefaf6b36f261341ce55a1a24eca21.tar.bz2
[PowerPC] Deprecate uses of ISD::ADDC/ISD::ADDE/ISD::SUBC/ISD::SUBE (#133155)
ISD::ADDC, ISD::ADDE, ISD::SUBC and ISD::SUBE are being deprecated, using ISD::UADDO_CARRY,ISD::USUBO_CARRY instead. Lowering the UADDO, UADDO_CARRY, USUBO, USUBO_CARRY in the patch.
Diffstat (limited to 'llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp')
-rw-r--r--llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp7
1 files changed, 7 insertions, 0 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
index b60a91b..2177dba 100644
--- a/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
+++ b/llvm/lib/Target/PowerPC/PPCRegisterInfo.cpp
@@ -625,6 +625,13 @@ bool PPCRegisterInfo::getRegAllocationHints(Register VirtReg,
return BaseImplRetVal;
}
+const TargetRegisterClass *
+PPCRegisterInfo::getCrossCopyRegClass(const TargetRegisterClass *RC) const {
+ if (RC == &PPC::CARRYRCRegClass)
+ return TM.isPPC64() ? &PPC::G8RCRegClass : &PPC::GPRCRegClass;
+ return RC;
+}
+
unsigned PPCRegisterInfo::getRegPressureLimit(const TargetRegisterClass *RC,
MachineFunction &MF) const {
const PPCFrameLowering *TFI = getFrameLowering(MF);