mirror of
https://github.com/RPCSX/llvm.git
synced 2024-12-14 07:31:47 +00:00
Arranged stack frame - needs furhter organization
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@1108 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
parent
0d3ea0268f
commit
51bc0e7994
@ -151,10 +151,13 @@ class PhyRegAlloc
|
||||
//vector<const Instruction *> CallInstrList; // a list of all call instrs
|
||||
//vector<const Instruction *> RetInstrList; // a list of all return instrs
|
||||
|
||||
|
||||
AddedInstrMapType AddedInstrMap; // to store instrns added in this phase
|
||||
|
||||
RegStackOffsets StackOffsets;
|
||||
|
||||
vector<const MachineInstr *> PhiInstList; // a list of all phi instrs
|
||||
|
||||
//------- private methods ---------------------------------------------------
|
||||
|
||||
void addInterference(const Value *const Def, const LiveVarSet *const LVSet,
|
||||
@ -194,6 +197,7 @@ class PhyRegAlloc
|
||||
void setRegsUsedByThisInst(RegClass *RC, const MachineInstr *MInst );
|
||||
int getRegNotUsedByThisInst(RegClass *RC, const MachineInstr *MInst);
|
||||
|
||||
void PhyRegAlloc::insertPhiEleminateInstrns();
|
||||
|
||||
public:
|
||||
|
||||
@ -206,6 +210,20 @@ class PhyRegAlloc
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
|
||||
What to do:
|
||||
|
||||
* Insert IntCCReg checking code to insertCallerSaving
|
||||
* add methods like cpCCReg2Mem & cpMem2CCReg (these will accept an array
|
||||
and push back or push_front the instr according to PUSH_BACK, PUSH_FRONT
|
||||
flags
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -151,10 +151,13 @@ class PhyRegAlloc
|
||||
//vector<const Instruction *> CallInstrList; // a list of all call instrs
|
||||
//vector<const Instruction *> RetInstrList; // a list of all return instrs
|
||||
|
||||
|
||||
AddedInstrMapType AddedInstrMap; // to store instrns added in this phase
|
||||
|
||||
RegStackOffsets StackOffsets;
|
||||
|
||||
vector<const MachineInstr *> PhiInstList; // a list of all phi instrs
|
||||
|
||||
//------- private methods ---------------------------------------------------
|
||||
|
||||
void addInterference(const Value *const Def, const LiveVarSet *const LVSet,
|
||||
@ -194,6 +197,7 @@ class PhyRegAlloc
|
||||
void setRegsUsedByThisInst(RegClass *RC, const MachineInstr *MInst );
|
||||
int getRegNotUsedByThisInst(RegClass *RC, const MachineInstr *MInst);
|
||||
|
||||
void PhyRegAlloc::insertPhiEleminateInstrns();
|
||||
|
||||
public:
|
||||
|
||||
@ -206,6 +210,20 @@ class PhyRegAlloc
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
|
||||
What to do:
|
||||
|
||||
* Insert IntCCReg checking code to insertCallerSaving
|
||||
* add methods like cpCCReg2Mem & cpMem2CCReg (these will accept an array
|
||||
and push back or push_front the instr according to PUSH_BACK, PUSH_FRONT
|
||||
flags
|
||||
|
||||
*/
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user