From 78d63ee3136b74c7ee3eae1e7362d3b642fabf0c Mon Sep 17 00:00:00 2001 From: Ruchira Sasanka Date: Sun, 28 Oct 2001 18:14:15 +0000 Subject: [PATCH] Moved callerSaving code to machine specific classes since we have to handle %ccr reg differently. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@991 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Target/TargetRegInfo.h | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/include/llvm/Target/TargetRegInfo.h b/include/llvm/Target/TargetRegInfo.h index 9a7ef4665f2..73dc0ce1c74 100644 --- a/include/llvm/Target/TargetRegInfo.h +++ b/include/llvm/Target/TargetRegInfo.h @@ -23,7 +23,8 @@ class MachineInstr; class RegClass; class CallInst; class ReturnInst; - +class PhyRegAlloc; +class BasicBlock; //----------------------------------------------------------------------------- // class MachineRegClassInfo @@ -129,8 +130,8 @@ public: AddedInstrns *const FirstAI) const = 0; virtual void colorCallArgs(const MachineInstr *const CalI, - LiveRangeInfo& LRI, - AddedInstrns *const CallAI) const = 0; + LiveRangeInfo& LRI, AddedInstrns *const CallAI, + PhyRegAlloc &PRA) const = 0; virtual void colorRetValue(const MachineInstr *const RetI,LiveRangeInfo& LRI, AddedInstrns *const RetAI) const = 0; @@ -179,6 +180,11 @@ public: inline virtual int getInvalidRegNum() const=0; + virtual void insertCallerSavingCode(const MachineInstr *MInst, + const BasicBlock *BB, + PhyRegAlloc &PRA ) const = 0; + + //virtual void printReg(const LiveRange *const LR) const =0; MachineRegInfo() { }