Stackmap shadows should consider call returns a branch target.
[oota-llvm.git] / test / CodeGen / X86 / complex-fca.ll
1 ; RUN: llc < %s -march=x86 | grep mov | count 2
2
3 ; Skip this on Windows as there is no ccosl and sret behaves differently.
4 ; XFAIL: pc-win32
5
6 define void @ccosl({ x86_fp80, x86_fp80 }* noalias sret %agg.result, { x86_fp80, x86_fp80 } %z) nounwind {
7 entry:
8         %z8 = extractvalue { x86_fp80, x86_fp80 } %z, 0
9         %z9 = extractvalue { x86_fp80, x86_fp80 } %z, 1
10         %0 = fsub x86_fp80 0xK80000000000000000000, %z9
11         %insert = insertvalue { x86_fp80, x86_fp80 } undef, x86_fp80 %0, 0
12         %insert7 = insertvalue { x86_fp80, x86_fp80 } %insert, x86_fp80 %z8, 1
13         call void @ccoshl({ x86_fp80, x86_fp80 }* noalias sret %agg.result, { x86_fp80, x86_fp80 } %insert7) nounwind
14         ret void
15 }
16
17 declare void @ccoshl({ x86_fp80, x86_fp80 }* noalias sret, { x86_fp80, x86_fp80 }) nounwind