[llvm-commits] CVS: llvm/lib/Target/IA64/IA64RegisterInfo.cpp IA64RegisterInfo.h

Evan Cheng evan.cheng at apple.com
Tue Mar 20 01:08:21 PDT 2007



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;






More information about the llvm-commits mailing list