Backing out Jim's LR spill changes. This was causing llvm-gcc bootstrapping
authorEvan Cheng <evan.cheng@apple.com>
Tue, 27 Feb 2007 02:55:29 +0000 (02:55 +0000)
committerEvan Cheng <evan.cheng@apple.com>
Tue, 27 Feb 2007 02:55:29 +0000 (02:55 +0000)
to infinite loop:
PPCMachineFunctionInfo.h updated: 1.2 -> 1.3
PPCRegisterInfo.cpp updated: 1.110 -> 1.111
PPCRegisterInfo.h updated: 1.28 -> 1.29

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@34652 91177308-0d34-0410-b5e6-96231b3b80d8

lib/Target/PowerPC/PPCMachineFunctionInfo.h
lib/Target/PowerPC/PPCRegisterInfo.cpp
lib/Target/PowerPC/PPCRegisterInfo.h

index e227456e635990cc94a58c646555188064f100ac..b3e10176d2326a26279222d9135e060cb6720148 100644 (file)
@@ -26,10 +26,6 @@ private:
   /// stored.  Also used as an anchor for instructions that need to be altered
   /// when using frame pointers (dyna_add, dyna_sub.)
   int FramePointerSaveIndex;
-  
-  /// UsesLR - Indicates whether LR is used in the current function.
-  ///
-  bool UsesLR;
 
 public:
   PPCFunctionInfo(MachineFunction& MF) 
@@ -38,9 +34,6 @@ public:
 
   int getFramePointerSaveIndex() const { return FramePointerSaveIndex; }
   void setFramePointerSaveIndex(int Idx) { FramePointerSaveIndex = Idx; }
-  
-  void setUsesLR(bool U) { UsesLR = U; }
-  bool usesLR()          { return UsesLR; }
 
 };
 
index b600c17f3ae3aa5a2f0726039b69b79ec0ad233e..a765f33489fb615bd7396cfac43e2f7e3572f820 100644 (file)
@@ -538,8 +538,8 @@ bool PPCRegisterInfo::hasFP(const MachineFunction &MF) const {
 /// usesLR - Returns if the link registers (LR) has been used in the function.
 ///
 bool PPCRegisterInfo::usesLR(MachineFunction &MF) const {
-  PPCFunctionInfo *FI = MF.getInfo<PPCFunctionInfo>();
-  return FI->usesLR();
+  const bool *PhysRegsUsed = MF.getUsedPhysregs();
+  return PhysRegsUsed[getRARegister()];
 }
 
 void PPCRegisterInfo::
@@ -874,15 +874,6 @@ void PPCRegisterInfo::determineFrameLayout(MachineFunction &MF) const {
   MFI->setStackSize(FrameSize);
 }
 
-void PPCRegisterInfo::processFunctionBeforeCalleeSavedScan(MachineFunction &MF)
-  const {
-  //  Save and clear the LR state.
-  PPCFunctionInfo *FI = MF.getInfo<PPCFunctionInfo>();
-  unsigned LR = getRARegister();
-  FI->setUsesLR(MF.isPhysRegUsed(LR));
-  MF.changePhyRegUsed(LR, false);
-}
-
 void PPCRegisterInfo::emitPrologue(MachineFunction &MF) const {
   MachineBasicBlock &MBB = MF.front();   // Prolog goes in entry BB
   MachineBasicBlock::iterator MBBI = MBB.begin();
index 5ca2d7d2a296cbc6f695e920b0c908296c28bd87..eedb62770e88e331959c2eadeac849d029974d25 100644 (file)
@@ -82,7 +82,6 @@ public:
   /// frame size.
   void determineFrameLayout(MachineFunction &MF) const;
 
-  void processFunctionBeforeCalleeSavedScan(MachineFunction &MF) const;
   void emitPrologue(MachineFunction &MF) const;
   void emitEpilogue(MachineFunction &MF, MachineBasicBlock &MBB) const;