Handle another case exposed on X86.
authorChris Lattner <sabre@nondot.org>
Fri, 3 Feb 2006 23:50:46 +0000 (23:50 +0000)
committerChris Lattner <sabre@nondot.org>
Fri, 3 Feb 2006 23:50:46 +0000 (23:50 +0000)
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@25949 91177308-0d34-0410-b5e6-96231b3b80d8

lib/CodeGen/VirtRegMap.cpp

index 24640a9fe18315caf116d218c58df03a654e50c5..24457b4a63d28cce20a6cb630fc0474985907cc2 100644 (file)
@@ -274,6 +274,10 @@ public:
   /// specified physreg.  If CanClobber is true, the physreg can be modified at
   /// any time without changing the semantics of the program.
   void addAvailable(int Slot, unsigned Reg, bool CanClobber = true) {
+    // If this stack slot is thought to be available in some other physreg, 
+    // remove its record.
+    ModifyStackSlot(Slot);
+    
     PhysRegsAvailable.insert(std::make_pair(Reg, Slot));
     SpillSlotsAvailable[Slot] = (Reg << 1) | CanClobber;