blob: 9ec9182e5e3c209e3d93bc1c75f012c5c0549c1f [file] [log] [blame]
Dan Gohman0a063102009-09-08 23:54:48 +00001; RUN: llc < %s | not grep movs
Dan Gohmane8b391e2008-04-12 04:36:06 +00002
3target datalayout = "e-p:32:32:32-i1:8:8-i8:8:8-i16:16:16-i32:32:32-i64:32:64-f32:32:32-f64:32:64-v64:64:64-v128:128:128-a0:0:64-f80:128:128"
4target triple = "i386-apple-darwin8"
5
6define void @ccosl({ x86_fp80, x86_fp80 }* noalias sret %agg.result, { x86_fp80, x86_fp80 }* byval align 4 %z) nounwind {
7entry:
8 %iz = alloca { x86_fp80, x86_fp80 } ; <{ x86_fp80, x86_fp80 }*> [#uses=3]
9 %tmp1 = getelementptr { x86_fp80, x86_fp80 }* %z, i32 0, i32 1 ; <x86_fp80*> [#uses=1]
10 %tmp2 = load x86_fp80* %tmp1, align 16 ; <x86_fp80> [#uses=1]
Dan Gohman7ce405e2009-06-04 22:49:04 +000011 %tmp3 = fsub x86_fp80 0xK80000000000000000000, %tmp2 ; <x86_fp80> [#uses=1]
Dan Gohmane8b391e2008-04-12 04:36:06 +000012 %tmp4 = getelementptr { x86_fp80, x86_fp80 }* %iz, i32 0, i32 1 ; <x86_fp80*> [#uses=1]
13 %real = getelementptr { x86_fp80, x86_fp80 }* %iz, i32 0, i32 0 ; <x86_fp80*> [#uses=1]
14 %tmp6 = getelementptr { x86_fp80, x86_fp80 }* %z, i32 0, i32 0 ; <x86_fp80*> [#uses=1]
15 %tmp7 = load x86_fp80* %tmp6, align 16 ; <x86_fp80> [#uses=1]
16 store x86_fp80 %tmp3, x86_fp80* %real, align 16
17 store x86_fp80 %tmp7, x86_fp80* %tmp4, align 16
18 call void @ccoshl( { x86_fp80, x86_fp80 }* noalias sret %agg.result, { x86_fp80, x86_fp80 }* byval align 4 %iz ) nounwind
19 ret void
20}
21
22declare void @ccoshl({ x86_fp80, x86_fp80 }* noalias sret , { x86_fp80, x86_fp80 }* byval align 4 ) nounwind