summaryrefslogtreecommitdiff
path: root/lib/Target/PowerPC/PPCRegisterInfo.cpp
diff options
context:
space:
mode:
authorEvan Cheng <evan.cheng@apple.com>2009-02-06 17:43:24 +0000
committerEvan Cheng <evan.cheng@apple.com>2009-02-06 17:43:24 +0000
commit770bcc7b15adbc978800db70dbb1c3c22913b52c (patch)
treee317f90aef4028cdfe21d50f117245426cb2b4e0 /lib/Target/PowerPC/PPCRegisterInfo.cpp
parent84fbac580941548a6ab1121ed3b0ffdc4e2bc080 (diff)
downloadllvm-770bcc7b15adbc978800db70dbb1c3c22913b52c.tar.gz
llvm-770bcc7b15adbc978800db70dbb1c3c22913b52c.tar.bz2
llvm-770bcc7b15adbc978800db70dbb1c3c22913b52c.tar.xz
Move getPointerRegClass from TargetInstrInfo to TargetRegisterInfo.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@63938 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/PowerPC/PPCRegisterInfo.cpp')
-rw-r--r--lib/Target/PowerPC/PPCRegisterInfo.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/lib/Target/PowerPC/PPCRegisterInfo.cpp b/lib/Target/PowerPC/PPCRegisterInfo.cpp
index c5c9defd9d..18936918a9 100644
--- a/lib/Target/PowerPC/PPCRegisterInfo.cpp
+++ b/lib/Target/PowerPC/PPCRegisterInfo.cpp
@@ -137,6 +137,15 @@ PPCRegisterInfo::PPCRegisterInfo(const PPCSubtarget &ST,
ImmToIdxMap[PPC::ADDI8] = PPC::ADD8; ImmToIdxMap[PPC::STD_32] = PPC::STDX_32;
}
+/// getPointerRegClass - Return the register class to use to hold pointers.
+/// This is used for addressing modes.
+const TargetRegisterClass *PPCRegisterInfo::getPointerRegClass() const {
+ if (Subtarget.isPPC64())
+ return &PPC::G8RCRegClass;
+ else
+ return &PPC::GPRCRegClass;
+}
+
const unsigned*
PPCRegisterInfo::getCalleeSavedRegs(const MachineFunction *MF) const {
// 32-bit Darwin calling convention.