Added MRegisterInfo hook to re-materialize an instruction.
[oota-llvm.git] / lib / Target / Alpha / AlphaRegisterInfo.cpp
index aea7c6da51460a897b63faf9e07ccebe1268797e..8dd8b1769a7f1906b0a69ddfa7f85dbc5ea32164 100644 (file)
@@ -155,6 +155,15 @@ void AlphaRegisterInfo::copyRegToReg(MachineBasicBlock &MBB,
   }
 }
 
+void AlphaRegisterInfo::reMaterialize(MachineBasicBlock &MBB,
+                                      MachineBasicBlock::iterator I,
+                                      unsigned DestReg,
+                                      const MachineInstr *Orig) const {
+  MachineInstr *MI = Orig->clone();
+  MI->getOperand(0).setReg(DestReg);
+  MBB.insert(I, MI);
+}
+
 const unsigned* AlphaRegisterInfo::getCalleeSavedRegs() const {
   static const unsigned CalleeSavedRegs[] = {
     Alpha::R9, Alpha::R10,