blob: c24167a6150d955fc088d5962b6461abd1c46660 [file] [log] [blame]
Dan Gohman0a063102009-09-08 23:54:48 +00001; RUN: llc < %s -march=x86 -mattr=+sse2 -o %t
Dan Gohman8c89a502007-08-15 13:36:28 +00002; RUN: grep movhlps %t | count 1
3; RUN: grep shufps %t | count 1
Dan Gohmanf17a25c2007-07-18 16:29:46 +00004
Evan Chengbf8b2c52008-04-05 00:30:36 +00005define void @test() nounwind {
Tanya Lattner632e88a2008-02-21 07:42:26 +00006 %tmp1 = load <4 x float>* null ; <<4 x float>> [#uses=2]
7 %tmp2 = shufflevector <4 x float> %tmp1, <4 x float> < float 1.000000e+00, float 1.000000e+00, float 1.000000e+00, float 1.000000e+00 >, <4 x i32> < i32 0, i32 1, i32 6, i32 7 > ; <<4 x float>> [#uses=1]
8 %tmp3 = shufflevector <4 x float> %tmp1, <4 x float> zeroinitializer, <4 x i32> < i32 2, i32 3, i32 6, i32 7 > ; <<4 x float>> [#uses=1]
Dan Gohman7ce405e2009-06-04 22:49:04 +00009 %tmp4 = fadd <4 x float> %tmp2, %tmp3 ; <<4 x float>> [#uses=1]
Tanya Lattner632e88a2008-02-21 07:42:26 +000010 store <4 x float> %tmp4, <4 x float>* null
11 ret void
Dan Gohmanf17a25c2007-07-18 16:29:46 +000012}
13