xref: /aosp_15_r20/external/llvm/test/CodeGen/X86/2009-02-12-SpillerBug.ll (revision 9880d6810fe72a1726cb53787c6711e909410d58)
1*9880d681SAndroid Build Coastguard Worker; RUN: llc < %s -march=x86 -mtriple=i386-apple-darwin8
2*9880d681SAndroid Build Coastguard Worker; PR3561
3*9880d681SAndroid Build Coastguard Worker
4*9880d681SAndroid Build Coastguard Workerdefine hidden void @__mulxc3({ x86_fp80, x86_fp80 }* noalias nocapture sret %agg.result, x86_fp80 %a, x86_fp80 %b, x86_fp80 %c, x86_fp80 %d) nounwind {
5*9880d681SAndroid Build Coastguard Workerentry:
6*9880d681SAndroid Build Coastguard Worker	%0 = fmul x86_fp80 %b, %d		; <x86_fp80> [#uses=1]
7*9880d681SAndroid Build Coastguard Worker	%1 = fsub x86_fp80 0xK00000000000000000000, %0		; <x86_fp80> [#uses=1]
8*9880d681SAndroid Build Coastguard Worker	%2 = fadd x86_fp80 0xK00000000000000000000, 0xK00000000000000000000		; <x86_fp80> [#uses=1]
9*9880d681SAndroid Build Coastguard Worker	%3 = fcmp uno x86_fp80 %1, 0xK00000000000000000000		; <i1> [#uses=1]
10*9880d681SAndroid Build Coastguard Worker	%4 = fcmp uno x86_fp80 %2, 0xK00000000000000000000		; <i1> [#uses=1]
11*9880d681SAndroid Build Coastguard Worker	%or.cond = and i1 %3, %4		; <i1> [#uses=1]
12*9880d681SAndroid Build Coastguard Worker	br i1 %or.cond, label %bb47, label %bb71
13*9880d681SAndroid Build Coastguard Worker
14*9880d681SAndroid Build Coastguard Workerbb47:		; preds = %entry
15*9880d681SAndroid Build Coastguard Worker	%5 = fcmp uno x86_fp80 %a, 0xK00000000000000000000		; <i1> [#uses=1]
16*9880d681SAndroid Build Coastguard Worker	br i1 %5, label %bb60, label %bb62
17*9880d681SAndroid Build Coastguard Worker
18*9880d681SAndroid Build Coastguard Workerbb60:		; preds = %bb47
19*9880d681SAndroid Build Coastguard Worker	%6 = tail call x86_fp80 @copysignl(x86_fp80 0xK00000000000000000000, x86_fp80 %a) nounwind readnone		; <x86_fp80> [#uses=0]
20*9880d681SAndroid Build Coastguard Worker	br label %bb62
21*9880d681SAndroid Build Coastguard Worker
22*9880d681SAndroid Build Coastguard Workerbb62:		; preds = %bb60, %bb47
23*9880d681SAndroid Build Coastguard Worker	unreachable
24*9880d681SAndroid Build Coastguard Worker
25*9880d681SAndroid Build Coastguard Workerbb71:		; preds = %entry
26*9880d681SAndroid Build Coastguard Worker	ret void
27*9880d681SAndroid Build Coastguard Worker}
28*9880d681SAndroid Build Coastguard Worker
29*9880d681SAndroid Build Coastguard Workerdeclare x86_fp80 @copysignl(x86_fp80, x86_fp80) nounwind readnone
30