[llvm-commits] CVS: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp

Evan Cheng evan.cheng at apple.com
Wed Nov 15 12:58:28 PST 2006



Changes in directory llvm/lib/Target/Alpha:

AlphaRegisterInfo.cpp updated: 1.51 -> 1.52
---
Log message:

Properly transfer kill / dead info.

---
Diffs of the changes:  (+5 -2)

 AlphaRegisterInfo.cpp |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)


Index: llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp
diff -u llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.51 llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.52
--- llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp:1.51	Mon Nov 13 17:36:35 2006
+++ llvm/lib/Target/Alpha/AlphaRegisterInfo.cpp	Wed Nov 15 14:58:11 2006
@@ -104,6 +104,7 @@
    // Make sure this is a reg-reg copy.
    unsigned Opc = MI->getOpcode();
 
+   MachineInstr *NewMI = NULL;
    switch(Opc) {
    default:
      break;
@@ -115,18 +116,20 @@
 	 unsigned InReg = MI->getOperand(1).getReg();
 	 Opc = (Opc == Alpha::BISr) ? Alpha::STQ : 
 	   ((Opc == Alpha::CPYSS) ? Alpha::STS : Alpha::STT);
-	 return BuildMI(TII, Opc, 3).addReg(InReg).addFrameIndex(FrameIndex)
+	 NewMI = BuildMI(TII, Opc, 3).addReg(InReg).addFrameIndex(FrameIndex)
 	   .addReg(Alpha::F31);
        } else {           // load -> move
 	 unsigned OutReg = MI->getOperand(0).getReg();
 	 Opc = (Opc == Alpha::BISr) ? Alpha::LDQ : 
 	   ((Opc == Alpha::CPYSS) ? Alpha::LDS : Alpha::LDT);
-	 return BuildMI(TII, Opc, 2, OutReg).addFrameIndex(FrameIndex)
+	 NewMI = BuildMI(TII, Opc, 2, OutReg).addFrameIndex(FrameIndex)
 	   .addReg(Alpha::F31);
        }
      }
      break;
    }
+  if (NewMI)
+    NewMI->copyKillDeadInfo(MI);
   return 0;
 }
 






More information about the llvm-commits mailing list