In some rare cases, the register allocator can spill registers but end up not utilizi...
[llvm/msp430.git] / test / CodeGen / X86 / 2007-10-12-SpillerUnfold1.ll
blob3a3c113773805338076840beead9a0737194f324
1 ; RUN: llvm-as < %s | llc -march=x86 -mattr=+sse2 | grep addss | not grep esp
3 define fastcc void @fht(float* %fz, i16 signext  %n) {
4 entry:
5         br i1 true, label %bb171.preheader, label %bb431
7 bb171.preheader:                ; preds = %entry
8         %tmp176 = add float 0.000000e+00, 1.000000e+00          ; <float> [#uses=2]
9         %gi.1 = getelementptr float* %fz, i32 0         ; <float*> [#uses=2]
10         %tmp240 = load float* %gi.1, align 4            ; <float> [#uses=1]
11         %tmp242 = sub float %tmp240, 0.000000e+00               ; <float> [#uses=2]
12         %tmp251 = getelementptr float* %fz, i32 0               ; <float*> [#uses=1]
13         %tmp252 = load float* %tmp251, align 4          ; <float> [#uses=1]
14         %tmp258 = getelementptr float* %fz, i32 0               ; <float*> [#uses=2]
15         %tmp259 = load float* %tmp258, align 4          ; <float> [#uses=2]
16         %tmp261 = mul float %tmp259, %tmp176            ; <float> [#uses=1]
17         %tmp262 = sub float 0.000000e+00, %tmp261               ; <float> [#uses=2]
18         %tmp269 = mul float %tmp252, %tmp176            ; <float> [#uses=1]
19         %tmp276 = mul float %tmp259, 0.000000e+00               ; <float> [#uses=1]
20         %tmp277 = add float %tmp269, %tmp276            ; <float> [#uses=2]
21         %tmp281 = getelementptr float* %fz, i32 0               ; <float*> [#uses=1]
22         %tmp282 = load float* %tmp281, align 4          ; <float> [#uses=2]
23         %tmp284 = sub float %tmp282, %tmp277            ; <float> [#uses=1]
24         %tmp291 = add float %tmp282, %tmp277            ; <float> [#uses=1]
25         %tmp298 = sub float 0.000000e+00, %tmp262               ; <float> [#uses=1]
26         %tmp305 = add float 0.000000e+00, %tmp262               ; <float> [#uses=1]
27         %tmp315 = mul float 0.000000e+00, %tmp291               ; <float> [#uses=1]
28         %tmp318 = mul float 0.000000e+00, %tmp298               ; <float> [#uses=1]
29         %tmp319 = add float %tmp315, %tmp318            ; <float> [#uses=1]
30         %tmp329 = add float 0.000000e+00, %tmp319               ; <float> [#uses=1]
31         store float %tmp329, float* null, align 4
32         %tmp336 = sub float %tmp242, 0.000000e+00               ; <float> [#uses=1]
33         store float %tmp336, float* %tmp258, align 4
34         %tmp343 = add float %tmp242, 0.000000e+00               ; <float> [#uses=1]
35         store float %tmp343, float* null, align 4
36         %tmp355 = mul float 0.000000e+00, %tmp305               ; <float> [#uses=1]
37         %tmp358 = mul float 0.000000e+00, %tmp284               ; <float> [#uses=1]
38         %tmp359 = add float %tmp355, %tmp358            ; <float> [#uses=1]
39         %tmp369 = add float 0.000000e+00, %tmp359               ; <float> [#uses=1]
40         store float %tmp369, float* %gi.1, align 4
41         ret void
43 bb431:          ; preds = %entry
44         ret void