diff options
author | Evan Cheng <evan.cheng@apple.com> | 2006-05-18 00:12:58 +0000 |
---|---|---|
committer | Evan Cheng <evan.cheng@apple.com> | 2006-05-18 00:12:58 +0000 |
commit | 0f3ac8d8d4ce23eb2ae6f9d850f389250874eea5 (patch) | |
tree | 9e7db7b9f132d3b72d7e901b625e6e702bab3558 /lib/Target/Sparc | |
parent | 0cfd73a9c190f335c9ae422ea145e7aae6fe2794 (diff) |
getCalleeSaveRegs and getCalleeSaveRegClasses are no long TableGen'd.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@28378 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Target/Sparc')
-rw-r--r-- | lib/Target/Sparc/Sparc.td | 3 | ||||
-rw-r--r-- | lib/Target/Sparc/SparcRegisterInfo.cpp | 12 | ||||
-rw-r--r-- | lib/Target/Sparc/SparcRegisterInfo.h | 4 |
3 files changed, 16 insertions, 3 deletions
diff --git a/lib/Target/Sparc/Sparc.td b/lib/Target/Sparc/Sparc.td index 38b03a4c0d..1646e0e1f9 100644 --- a/lib/Target/Sparc/Sparc.td +++ b/lib/Target/Sparc/Sparc.td @@ -75,9 +75,6 @@ def : Proc<"ultrasparc3-vis", [FeatureV9, FeatureV8Deprecated, FeatureVIS]>; //===----------------------------------------------------------------------===// def Sparc : Target { - // FIXME: Specify callee-saved registers - let CalleeSavedRegisters = []; - // Pull in Instruction Info: let InstructionSet = SparcInstrInfo; } diff --git a/lib/Target/Sparc/SparcRegisterInfo.cpp b/lib/Target/Sparc/SparcRegisterInfo.cpp index 88cbc9c769..7331ebdbff 100644 --- a/lib/Target/Sparc/SparcRegisterInfo.cpp +++ b/lib/Target/Sparc/SparcRegisterInfo.cpp @@ -103,6 +103,18 @@ MachineInstr *SparcRegisterInfo::foldMemoryOperand(MachineInstr* MI, return 0; } +const unsigned* SparcRegisterInfo::getCalleeSaveRegs() const { + static const unsigned CalleeSaveRegs[] = { 0 }; + return CalleeSaveRegs; +} + +const TargetRegisterClass* const* +SparcRegisterInfo::getCalleeSaveRegClasses() const { + static const TargetRegisterClass * const CalleeSaveRegClasses[] = { 0 }; + return CalleeSaveRegClasses; +} + + void SparcRegisterInfo:: eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const { diff --git a/lib/Target/Sparc/SparcRegisterInfo.h b/lib/Target/Sparc/SparcRegisterInfo.h index 176e93491b..bbb11f86de 100644 --- a/lib/Target/Sparc/SparcRegisterInfo.h +++ b/lib/Target/Sparc/SparcRegisterInfo.h @@ -46,6 +46,10 @@ struct SparcRegisterInfo : public SparcGenRegisterInfo { unsigned OpNum, int FrameIndex) const; + const unsigned *getCalleeSaveRegs() const; + + const TargetRegisterClass* const* getCalleeSaveRegClasses() const; + void eliminateCallFramePseudoInstr(MachineFunction &MF, MachineBasicBlock &MBB, MachineBasicBlock::iterator I) const; |