Changes in directory llvm/lib/Target/IA64:
IA64RegisterInfo.cpp updated: 1.34 -> 1.35 IA64RegisterInfo.h updated: 1.16 -> 1.17 --- Log message: Added MRegisterInfo hook to re-materialize an instruction. --- Diffs of the changes: (+12 -0) IA64RegisterInfo.cpp | 9 +++++++++ IA64RegisterInfo.h | 3 +++ 2 files changed, 12 insertions(+) Index: llvm/lib/Target/IA64/IA64RegisterInfo.cpp diff -u llvm/lib/Target/IA64/IA64RegisterInfo.cpp:1.34 llvm/lib/Target/IA64/IA64RegisterInfo.cpp:1.35 --- llvm/lib/Target/IA64/IA64RegisterInfo.cpp:1.34 Tue Feb 27 18:18:52 2007 +++ llvm/lib/Target/IA64/IA64RegisterInfo.cpp Tue Mar 20 03:08:04 2007 @@ -93,6 +93,15 @@ BuildMI(MBB, MI, TII.get(IA64::MOV), DestReg).addReg(SrcReg); } +void IA64RegisterInfo::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* IA64RegisterInfo::getCalleeSavedRegs() const { static const unsigned CalleeSavedRegs[] = { IA64::r5, 0 Index: llvm/lib/Target/IA64/IA64RegisterInfo.h diff -u llvm/lib/Target/IA64/IA64RegisterInfo.h:1.16 llvm/lib/Target/IA64/IA64RegisterInfo.h:1.17 --- llvm/lib/Target/IA64/IA64RegisterInfo.h:1.16 Tue Feb 27 18:18:52 2007 +++ llvm/lib/Target/IA64/IA64RegisterInfo.h Tue Mar 20 03:08:04 2007 @@ -44,6 +44,9 @@ unsigned DestReg, unsigned SrcReg, const TargetRegisterClass *RC) const; + void reMaterialize(MachineBasicBlock &MBB, MachineBasicBlock::iterator MI, + unsigned DestReg, const MachineInstr *Orig) const; + const unsigned *getCalleeSavedRegs() const; const TargetRegisterClass* const* getCalleeSavedRegClasses() const; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits