Changes in directory llvm/lib/Target/Sparc:
SparcRegisterInfo.cpp updated: 1.57 -> 1.58 SparcRegisterInfo.h updated: 1.22 -> 1.23 --- Log message: Added MRegisterInfo hook to re-materialize an instruction. --- Diffs of the changes: (+12 -0) SparcRegisterInfo.cpp | 9 +++++++++ SparcRegisterInfo.h | 3 +++ 2 files changed, 12 insertions(+) Index: llvm/lib/Target/Sparc/SparcRegisterInfo.cpp diff -u llvm/lib/Target/Sparc/SparcRegisterInfo.cpp:1.57 llvm/lib/Target/Sparc/SparcRegisterInfo.cpp:1.58 --- llvm/lib/Target/Sparc/SparcRegisterInfo.cpp:1.57 Tue Feb 27 18:20:02 2007 +++ llvm/lib/Target/Sparc/SparcRegisterInfo.cpp Tue Mar 20 03:08:48 2007 @@ -77,6 +77,15 @@ assert (0 && "Can't copy this register"); } +void SparcRegisterInfo::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); +} + MachineInstr *SparcRegisterInfo::foldMemoryOperand(MachineInstr* MI, unsigned OpNum, int FI) const { Index: llvm/lib/Target/Sparc/SparcRegisterInfo.h diff -u llvm/lib/Target/Sparc/SparcRegisterInfo.h:1.22 llvm/lib/Target/Sparc/SparcRegisterInfo.h:1.23 --- llvm/lib/Target/Sparc/SparcRegisterInfo.h:1.22 Tue Feb 27 18:20:02 2007 +++ llvm/lib/Target/Sparc/SparcRegisterInfo.h Tue Mar 20 03:08:48 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; + virtual MachineInstr* foldMemoryOperand(MachineInstr* MI, unsigned OpNum, int FrameIndex) const; _______________________________________________ llvm-commits mailing list llvm-commits@cs.uiuc.edu http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits