This should always be signed chars, so use int8_t. This fixes a miscompile when
[llvm/stm8.git] / test / CodeGen / X86 / 2009-03-09-SpillerBug.ll
blob4224210e58f01c1b79824f8de8518ce55cbff2f1
1 ; RUN: llc < %s -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 = fsub 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*)