In some rare cases, the register allocator can spill registers but end up not utilizi...
[llvm/msp430.git] / test / CodeGen / X86 / 2009-03-09-SpillerBug.ll
blob14bdcc302775734f7ad260b2931bd9595797458d
1 ; RUN: llvm-as < %s | llc -mtriple=i386-pc-linux-gnu
2 ; PR3706
4 define void @__mulxc3(x86_fp80 %b) nounwind {
5 entry:
6         %call = call x86_fp80 @y(x86_fp80* null, x86_fp80* null)                ; <x86_fp80> [#uses=0]
7         %cmp = fcmp ord x86_fp80 %b, 0xK00000000000000000000            ; <i1> [#uses=1]
8         %sub = sub x86_fp80 %b, %b              ; <x86_fp80> [#uses=1]
9         %cmp7 = fcmp uno x86_fp80 %sub, 0xK00000000000000000000         ; <i1> [#uses=1]
10         %and12 = and i1 %cmp7, %cmp             ; <i1> [#uses=1]
11         %and = zext i1 %and12 to i32            ; <i32> [#uses=1]
12         %conv9 = sitofp i32 %and to x86_fp80            ; <x86_fp80> [#uses=1]
13         store x86_fp80 %conv9, x86_fp80* null
14         store x86_fp80 %b, x86_fp80* null
15         ret void
18 declare x86_fp80 @y(x86_fp80*, x86_fp80*)