From 8ee0100880ef6fd414cda4d6d04f5940aa4a1822 Mon Sep 17 00:00:00 2001 From: Misha Brukman Date: Tue, 29 Jun 2004 23:35:32 +0000 Subject: [PATCH] Only allocate non-volatile registers R13-31 (for now). git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@14500 91177308-0d34-0410-b5e6-96231b3b80d8 --- lib/Target/PowerPC/PPCRegisterInfo.td | 14 +++++++++++--- 1 file changed, 11 insertions(+), 3 deletions(-) diff --git a/lib/Target/PowerPC/PPCRegisterInfo.td b/lib/Target/PowerPC/PPCRegisterInfo.td index d6aaf4bda1c..da7152edc76 100644 --- a/lib/Target/PowerPC/PPCRegisterInfo.td +++ b/lib/Target/PowerPC/PPCRegisterInfo.td @@ -73,9 +73,17 @@ def TBL : SPR<4>; def TBU : SPR<5>; /// Register classes: one for floats and another for non-floats. -def GPRC : RegisterClass; +def GPRC : RegisterClass { + let Methods = [{ + iterator allocation_order_end(MachineFunction &MF) const { + return end()-13; // do not allocate r0-r12 + } + }]; +} + def FPRC : RegisterClass;