summaryrefslogtreecommitdiffstats
path: root/llvm
diff options
context:
space:
mode:
authorDale Johannesen <dalej@apple.com>2010-02-16 21:53:27 +0000
committerDale Johannesen <dalej@apple.com>2010-02-16 21:53:27 +0000
commit1b967bf0e41f573e97412c65779b9300ba36a25e (patch)
tree44bec6194da4375eb7fd2ba1271c506ae7ce33d4 /llvm
parent7585580ccc1ca3ec70ab828743000b6e4c2365a6 (diff)
downloadbcm5719-llvm-1b967bf0e41f573e97412c65779b9300ba36a25e.tar.gz
bcm5719-llvm-1b967bf0e41f573e97412c65779b9300ba36a25e.zip
Really reserve R2 on PPC Darwin. PR 6314.
llvm-svn: 96399
Diffstat (limited to 'llvm')
-rw-r--r--llvm/lib/Target/PowerPC/PPCRegisterInfo.td12
1 files changed, 4 insertions, 8 deletions
diff --git a/llvm/lib/Target/PowerPC/PPCRegisterInfo.td b/llvm/lib/Target/PowerPC/PPCRegisterInfo.td
index 049e893e82e..1cb7340c9c2 100644
--- a/llvm/lib/Target/PowerPC/PPCRegisterInfo.td
+++ b/llvm/lib/Target/PowerPC/PPCRegisterInfo.td
@@ -287,10 +287,8 @@ def GPRC : RegisterClass<"PPC", [i32], 32,
GPRCClass::allocation_order_begin(const MachineFunction &MF) const {
// 32-bit SVR4 ABI: r2 is reserved for the OS.
// 64-bit SVR4 ABI: r2 is reserved for the TOC pointer.
- if (!MF.getTarget().getSubtarget<PPCSubtarget>().isDarwin())
- return begin()+1;
-
- return begin();
+ // Darwin: R2 is reserved for CR save/restore sequence.
+ return begin()+1;
}
GPRCClass::iterator
GPRCClass::allocation_order_end(const MachineFunction &MF) const {
@@ -325,10 +323,8 @@ def G8RC : RegisterClass<"PPC", [i64], 64,
G8RCClass::iterator
G8RCClass::allocation_order_begin(const MachineFunction &MF) const {
// 64-bit SVR4 ABI: r2 is reserved for the TOC pointer.
- if (!MF.getTarget().getSubtarget<PPCSubtarget>().isDarwin())
- return begin()+1;
-
- return begin();
+ // Darwin: r2 is reserved for CR save/restore sequence.
+ return begin()+1;
}
G8RCClass::iterator
G8RCClass::allocation_order_end(const MachineFunction &MF) const {
OpenPOWER on IntegriCloud