[llvm-branch-commits] [llvm-branch] r96250 - in /llvm/branches/Apple/Zoidberg: lib/CodeGen/DeadMachineInstructionElim.cpp test/CodeGen/ARM/remat.ll test/CodeGen/X86/2007-10-05-3AddrConvert.ll

Bob Wilson bob.wilson at apple.com
Mon Feb 15 11:20:31 PST 2010


Author: bwilson
Date: Mon Feb 15 13:20:30 2010
New Revision: 96250

URL: http://llvm.org/viewvc/llvm-project?rev=96250&view=rev
Log:
--- Merging r95816 into '.':
U    test/CodeGen/ARM/remat.ll
U    test/CodeGen/X86/2007-10-05-3AddrConvert.ll
U    lib/CodeGen/DeadMachineInstructionElim.cpp

Modified:
    llvm/branches/Apple/Zoidberg/lib/CodeGen/DeadMachineInstructionElim.cpp
    llvm/branches/Apple/Zoidberg/test/CodeGen/ARM/remat.ll
    llvm/branches/Apple/Zoidberg/test/CodeGen/X86/2007-10-05-3AddrConvert.ll

Modified: llvm/branches/Apple/Zoidberg/lib/CodeGen/DeadMachineInstructionElim.cpp
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Zoidberg/lib/CodeGen/DeadMachineInstructionElim.cpp?rev=96250&r1=96249&r2=96250&view=diff

==============================================================================
--- llvm/branches/Apple/Zoidberg/lib/CodeGen/DeadMachineInstructionElim.cpp (original)
+++ llvm/branches/Apple/Zoidberg/lib/CodeGen/DeadMachineInstructionElim.cpp Mon Feb 15 13:20:30 2010
@@ -55,7 +55,8 @@
 bool DeadMachineInstructionElim::isDead(const MachineInstr *MI) const {
   // Don't delete instructions with side effects.
   bool SawStore = false;
-  if (!MI->isSafeToMove(TII, SawStore, 0))
+  if (!MI->isSafeToMove(TII, SawStore, 0) &&
+      MI->getOpcode() != TargetInstrInfo::PHI)
     return false;
 
   // Examine each operand.

Modified: llvm/branches/Apple/Zoidberg/test/CodeGen/ARM/remat.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Zoidberg/test/CodeGen/ARM/remat.ll?rev=96250&r1=96249&r2=96250&view=diff

==============================================================================
--- llvm/branches/Apple/Zoidberg/test/CodeGen/ARM/remat.ll (original)
+++ llvm/branches/Apple/Zoidberg/test/CodeGen/ARM/remat.ll Mon Feb 15 13:20:30 2010
@@ -32,16 +32,16 @@
   br label %phi1.exit
 
 phi1.exit:                                        ; preds = %bb.i35, %bb142
-  %.pn = phi double [ %6, %bb.i35 ], [ 0.000000e+00, %bb142 ] ; <double> [#uses=0]
+  %.pn = phi double [ %6, %bb.i35 ], [ 0.000000e+00, %bb142 ] ; <double> [#uses=1]
   %9 = phi double [ %8, %bb.i35 ], [ 0.000000e+00, %bb142 ] ; <double> [#uses=1]
-  %10 = fmul double undef, %9                     ; <double> [#uses=0]
+  %10 = fmul double %.pn, %9                      ; <double> [#uses=1]
   br i1 %14, label %phi0.exit, label %bb.i
 
 bb.i:                                             ; preds = %phi1.exit
   unreachable
 
 phi0.exit:                                        ; preds = %phi1.exit
-  %11 = fsub double %4, undef                     ; <double> [#uses=1]
+  %11 = fsub double %4, %10                       ; <double> [#uses=1]
   %12 = fadd double 0.000000e+00, %11             ; <double> [#uses=1]
   store double %12, double* undef, align 4
   br label %bb142

Modified: llvm/branches/Apple/Zoidberg/test/CodeGen/X86/2007-10-05-3AddrConvert.ll
URL: http://llvm.org/viewvc/llvm-project/llvm/branches/Apple/Zoidberg/test/CodeGen/X86/2007-10-05-3AddrConvert.ll?rev=96250&r1=96249&r2=96250&view=diff

==============================================================================
--- llvm/branches/Apple/Zoidberg/test/CodeGen/X86/2007-10-05-3AddrConvert.ll (original)
+++ llvm/branches/Apple/Zoidberg/test/CodeGen/X86/2007-10-05-3AddrConvert.ll Mon Feb 15 13:20:30 2010
@@ -36,7 +36,9 @@
 
 bb107.i.i:		; preds = %bb107.i.i, %bb.i6.i
 	%q_addr.0.i.i.in = phi %struct.bnode** [ null, %bb107.i.i ], [ %4, %bb.i6.i ]		; <%struct.bnode**> [#uses=1]
-	%q_addr.0.i.i = load %struct.bnode** %q_addr.0.i.i.in		; <%struct.bnode*> [#uses=0]
+	%q_addr.0.i.i = load %struct.bnode** %q_addr.0.i.i.in		; <%struct.bnode*> [#uses=1]
+	%q_addr.1 = getelementptr %struct.anon* %0, i32 0, i32 4, i32 1
+	store %struct.bnode* %q_addr.0.i.i, %struct.bnode** %q_addr.1, align 4
 	br label %bb107.i.i
 
 bb47.loopexit.i:		; preds = %bb32.i





More information about the llvm-branch-commits mailing list