From 06faeee041dc2f24f2fd657ecc1bb5647d64fd40 Mon Sep 17 00:00:00 2001 From: Ruchira Sasanka Date: Sun, 30 Sep 2001 23:19:09 +0000 Subject: [PATCH] added suggesting color suppor git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@672 91177308-0d34-0410-b5e6-96231b3b80d8 --- include/llvm/Target/TargetRegInfo.h | 31 ++++++++++++++++++++++------- 1 file changed, 24 insertions(+), 7 deletions(-) diff --git a/include/llvm/Target/TargetRegInfo.h b/include/llvm/Target/TargetRegInfo.h index aab0980e18e..b66c1b780b7 100644 --- a/include/llvm/Target/TargetRegInfo.h +++ b/include/llvm/Target/TargetRegInfo.h @@ -20,6 +20,9 @@ class Instruction; class LiveRange; class AddedInstrns; class MachineInstr; +class RegClass; +class CallInst; +class ReturnInst; //----------------------------------------------------------------------------- @@ -114,17 +117,31 @@ public: //virtual unsigned getRCIDOfMachineOp (const MachineOperand &MO) const = 0; - virtual void colorArgs(const Method *const Meth, + virtual void suggestRegs4MethodArgs(const Method *const Meth, LiveRangeInfo & LRI) const = 0; - virtual void colorCallArgs(vector & CallInstrList, - LiveRangeInfo& LRI, - AddedInstrMapType& AddedInstrMap ) const = 0 ; + virtual void suggestRegs4CallArgs(const CallInst *const CallI, + LiveRangeInfo& LRI, vector RCL) const = 0; - virtual void colorRetArg(vector & - RetInstrList, LiveRangeInfo& LRI, - AddedInstrMapType &AddedInstrMap) const =0; + virtual void suggestReg4RetValue(const ReturnInst *const RetI, + LiveRangeInfo& LRI) const = 0; + + + virtual void colorMethodArgs(const Method *const Meth, LiveRangeInfo& LRI, + AddedInstrns *const FirstAI) const = 0; + + virtual void colorCallArgs(const CallInst *const CalI, LiveRangeInfo& LRI, + AddedInstrns *const CallAI) const = 0; + + virtual void colorRetValue(const ReturnInst *const RetI, LiveRangeInfo& LRI, + AddedInstrns *const RetAI) const = 0; + + + + virtual bool handleSpecialMInstr(const MachineInstr * MInst, + LiveRangeInfo& LRI, vector RCL) const = 0; + // returns the reg used for pushing the address when a method is called. // This can be used for other purposes between calls virtual unsigned getCallAddressReg() const = 0;