Remove unused field. Change the way unused regs. are marked and

found to consider regType info (since multiple reg types may share
the same reg class, e.g., single and double on Sparc).

llvm-svn: 7327
This commit is contained in:
Vikram S. Adve 2003-07-25 21:00:13 +00:00
parent 51fca80cc5
commit abcd8d75ff
1 changed files with 11 additions and 10 deletions

View File

@ -71,8 +71,6 @@ class PhyRegAlloc : public NonCopyable {
AddedInstrns AddedInstrAtEntry; // to store instrns added at entry
LoopInfo *LoopDepthCalc; // to calculate loop depths
std::vector<unsigned> ResColList; // A set of reserved regs if desired.
// currently not used
public:
PhyRegAlloc(Function *F, const TargetMachine& TM, FunctionLiveVarInfo *Lvi,
@ -87,11 +85,11 @@ public:
// access to register classes by class ID
//
const RegClass* getRegClassByID(unsigned int id) const {
return RegClassList[id];
return RegClassList[id];
}
RegClass* getRegClassByID(unsigned int id) {
return RegClassList[id];
}
RegClass* getRegClassByID(unsigned int id) {
return RegClassList[id]; }
private:
void addInterference(const Value *Def, const ValueSet *LVSet,
@ -134,11 +132,14 @@ private:
std::vector<MachineInstr*>& MIBef,
std::vector<MachineInstr*>& MIAft);
int getUnusedUniRegAtMI(RegClass *RC, const MachineInstr *MInst,
const ValueSet *LVSetBef);
int getUnusedUniRegAtMI(RegClass *RC, const int RegType,
const MachineInstr *MInst, const ValueSet *LVSetBef);
void setRelRegsUsedByThisInst(RegClass *RC, const MachineInstr *MInst );
int getUniRegNotUsedByThisInst(RegClass *RC, const MachineInstr *MInst);
void setRelRegsUsedByThisInst(RegClass *RC, const int RegType,
const MachineInstr *MInst );
int getUniRegNotUsedByThisInst(RegClass *RC, const int RegType,
const MachineInstr *MInst);
void addInterf4PseudoInstr(const MachineInstr *MInst);
};