[llvm-commits] CVS: llvm/lib/Target/PowerPC/PowerPCInstrInfo.td

Chris Lattner lattner at cs.uiuc.edu
Tue Feb 15 12:27:04 PST 2005



Changes in directory llvm/lib/Target/PowerPC:

PowerPCInstrInfo.td updated: 1.49 -> 1.50
---
Log message:

Fix a problem where the PPC backend lost track of the fact that it had
to save and restore the LR register on entry and exit of a leaf function
that needed to access globals or the constant pool.  This should hopefully
fix oscar from sending the PPC tester spinning out of control.


---
Diffs of the changes:  (+3 -1)

 PowerPCInstrInfo.td |    4 +++-
 1 files changed, 3 insertions(+), 1 deletion(-)


Index: llvm/lib/Target/PowerPC/PowerPCInstrInfo.td
diff -u llvm/lib/Target/PowerPC/PowerPCInstrInfo.td:1.49 llvm/lib/Target/PowerPC/PowerPCInstrInfo.td:1.50
--- llvm/lib/Target/PowerPC/PowerPCInstrInfo.td:1.49	Thu Dec 16 10:31:57 2004
+++ llvm/lib/Target/PowerPC/PowerPCInstrInfo.td	Tue Feb 15 14:26:49 2005
@@ -53,7 +53,9 @@
 def ADJCALLSTACKUP : Pseudo<(ops), "; ADJCALLSTACKUP">;
 }
 def IMPLICIT_DEF : Pseudo<(ops), "; IMPLICIT_DEF">;
-def MovePCtoLR : Pseudo<(ops piclabel:$label), "bl $label">;
+
+let Defs = [LR] in
+  def MovePCtoLR : Pseudo<(ops piclabel:$label), "bl $label">;
 
 let isBranch = 1, isTerminator = 1 in {
   def COND_BRANCH : Pseudo<(ops), "; COND_BRANCH">;






More information about the llvm-commits mailing list