| Evan Cheng | ea8530d | 2008-02-13 03:23:53 +0000 | [diff] [blame] | 1 | ; RUN: llvm-as < %s | llc -mtriple=i686-apple-darwin -mattr=+sse2 -coalescer-commute-instrs | not grep movaps | 
|  | 2 | ; PR1877 | 
|  | 3 |  | 
|  | 4 | @NNTOT = weak global i32 0		; <i32*> [#uses=1] | 
|  | 5 | @G = weak global float 0.000000e+00		; <float*> [#uses=1] | 
|  | 6 |  | 
|  | 7 | define void @runcont(i32* %source) nounwind  { | 
|  | 8 | entry: | 
|  | 9 | %tmp10 = load i32* @NNTOT, align 4		; <i32> [#uses=1] | 
|  | 10 | br label %bb | 
|  | 11 |  | 
|  | 12 | bb:		; preds = %bb, %entry | 
|  | 13 | %neuron.0 = phi i32 [ 0, %entry ], [ %indvar.next, %bb ]		; <i32> [#uses=2] | 
|  | 14 | %thesum.0 = phi float [ 0.000000e+00, %entry ], [ %tmp6, %bb ]		; <float> [#uses=1] | 
|  | 15 | %tmp2 = getelementptr i32* %source, i32 %neuron.0		; <i32*> [#uses=1] | 
|  | 16 | %tmp3 = load i32* %tmp2, align 4		; <i32> [#uses=1] | 
|  | 17 | %tmp34 = sitofp i32 %tmp3 to float		; <float> [#uses=1] | 
|  | 18 | %tmp6 = add float %tmp34, %thesum.0		; <float> [#uses=2] | 
|  | 19 | %indvar.next = add i32 %neuron.0, 1		; <i32> [#uses=2] | 
|  | 20 | %exitcond = icmp eq i32 %indvar.next, %tmp10		; <i1> [#uses=1] | 
|  | 21 | br i1 %exitcond, label %bb13, label %bb | 
|  | 22 |  | 
|  | 23 | bb13:		; preds = %bb | 
|  | 24 | volatile store float %tmp6, float* @G, align 4 | 
|  | 25 | ret void | 
|  | 26 | } |