blob: b630e9d1461258e5f19b6436eb278f2d9e496817 [file] [log] [blame]
Elena Demikhovsky28d7e712012-01-24 13:54:13 +00001; RUN: llc < %s -mtriple=x86_64-apple-darwin -mcpu=corei7-avx -mattr=+avx | FileCheck %s
2
3define <8 x i32> @zext_8i16_to_8i32(<8 x i16> %A) nounwind uwtable readnone ssp {
4;CHECK: zext_8i16_to_8i32
5;CHECK: vpunpckhwd
Nadav Rotem2ee746b2012-02-12 15:05:31 +00006;CHECK: ret
Elena Demikhovsky28d7e712012-01-24 13:54:13 +00007
8 %B = zext <8 x i16> %A to <8 x i32>
9 ret <8 x i32>%B
10}
11
12define <4 x i64> @zext_4i32_to_4i64(<4 x i32> %A) nounwind uwtable readnone ssp {
13;CHECK: zext_4i32_to_4i64
14;CHECK: vpunpckhdq
Nadav Rotem2ee746b2012-02-12 15:05:31 +000015;CHECK: ret
Elena Demikhovsky28d7e712012-01-24 13:54:13 +000016
17 %B = zext <4 x i32> %A to <4 x i64>
18 ret <4 x i64>%B
19}
Nadav Rotem2ee746b2012-02-12 15:05:31 +000020
21
22define <8 x i32> @zext_8i8_to_8i32(<8 x i8> %z) {
23;CHECK: zext_8i8_to_8i32
24;CHECK: vpunpckhwd
25;CHECK: vpunpcklwd
26;CHECK: vinsertf128
27;CHECK: ret
28 %t = zext <8 x i8> %z to <8 x i32>
29 ret <8 x i32> %t
30}