[llvm-commits] CVS: llvm/lib/Target/Sparc/SparcRegisterInfo.cpp SparcRegisterInfo.h
Evan Cheng
evan.cheng at apple.com
Sat Feb 17 03:06:31 PST 2007
Changes in directory llvm/lib/Target/Sparc:
SparcRegisterInfo.cpp updated: 1.51 -> 1.52
SparcRegisterInfo.h updated: 1.17 -> 1.18
---
Log message:
Added getReservedRegs().
---
Diffs of the changes: (+19 -0)
SparcRegisterInfo.cpp | 17 +++++++++++++++++
SparcRegisterInfo.h | 2 ++
2 files changed, 19 insertions(+)
Index: llvm/lib/Target/Sparc/SparcRegisterInfo.cpp
diff -u llvm/lib/Target/Sparc/SparcRegisterInfo.cpp:1.51 llvm/lib/Target/Sparc/SparcRegisterInfo.cpp:1.52
--- llvm/lib/Target/Sparc/SparcRegisterInfo.cpp:1.51 Mon Jan 22 18:56:45 2007
+++ llvm/lib/Target/Sparc/SparcRegisterInfo.cpp Sat Feb 17 05:06:00 2007
@@ -20,6 +20,7 @@
#include "llvm/CodeGen/MachineLocation.h"
#include "llvm/Target/TargetInstrInfo.h"
#include "llvm/Type.h"
+#include "llvm/ADT/BitVector.h"
#include "llvm/ADT/STLExtras.h"
using namespace llvm;
@@ -116,6 +117,22 @@
return CalleeSavedRegs;
}
+BitVector SparcRegisterInfo::getReservedRegs(const MachineFunction &MF) const {
+ BitVector Reserved(getNumRegs());
+ Reserved.set(SP::G2);
+ Reserved.set(SP::G3);
+ Reserved.set(SP::G4);
+ Reserved.set(SP::O6);
+ Reserved.set(SP::I6);
+ Reserved.set(SP::I7);
+ Reserved.set(SP::G0);
+ Reserved.set(SP::G5);
+ Reserved.set(SP::G6);
+ Reserved.set(SP::G7);
+ return Reserved;
+}
+
+
const TargetRegisterClass* const*
SparcRegisterInfo::getCalleeSavedRegClasses() const {
static const TargetRegisterClass * const CalleeSavedRegClasses[] = { 0 };
Index: llvm/lib/Target/Sparc/SparcRegisterInfo.h
diff -u llvm/lib/Target/Sparc/SparcRegisterInfo.h:1.17 llvm/lib/Target/Sparc/SparcRegisterInfo.h:1.18
--- llvm/lib/Target/Sparc/SparcRegisterInfo.h:1.17 Mon Jan 22 18:56:45 2007
+++ llvm/lib/Target/Sparc/SparcRegisterInfo.h Sat Feb 17 05:06:00 2007
@@ -52,6 +52,8 @@
const TargetRegisterClass* const* getCalleeSavedRegClasses() const;
+ BitVector getReservedRegs(const MachineFunction &MF) const;
+
bool hasFP(const MachineFunction &MF) const;
void eliminateCallFramePseudoInstr(MachineFunction &MF,
More information about the llvm-commits
mailing list