2009-09-09 01:54:48 +02:00
|
|
|
; RUN: llc < %s -march=x86 | grep mov | count 2
|
2008-10-13 20:13:07 +02:00
|
|
|
|
2013-03-29 22:54:00 +01:00
|
|
|
; Skip this on Windows as there is no ccosl and sret behaves differently.
|
|
|
|
; XFAIL: pc-win32
|
|
|
|
|
2008-10-13 20:13:07 +02:00
|
|
|
define void @ccosl({ x86_fp80, x86_fp80 }* noalias sret %agg.result, { x86_fp80, x86_fp80 } %z) nounwind {
|
|
|
|
entry:
|
|
|
|
%z8 = extractvalue { x86_fp80, x86_fp80 } %z, 0
|
|
|
|
%z9 = extractvalue { x86_fp80, x86_fp80 } %z, 1
|
2009-06-05 00:49:04 +02:00
|
|
|
%0 = fsub x86_fp80 0xK80000000000000000000, %z9
|
2008-10-13 20:13:07 +02:00
|
|
|
%insert = insertvalue { x86_fp80, x86_fp80 } undef, x86_fp80 %0, 0
|
|
|
|
%insert7 = insertvalue { x86_fp80, x86_fp80 } %insert, x86_fp80 %z8, 1
|
|
|
|
call void @ccoshl({ x86_fp80, x86_fp80 }* noalias sret %agg.result, { x86_fp80, x86_fp80 } %insert7) nounwind
|
|
|
|
ret void
|
|
|
|
}
|
|
|
|
|
|
|
|
declare void @ccoshl({ x86_fp80, x86_fp80 }* noalias sret, { x86_fp80, x86_fp80 }) nounwind
|