1; RUN: llc < %s -march=x86-64 2 3define <8 x i32> @a(<8 x i32> %a) nounwind { 4 %b = trunc <8 x i32> %a to <8 x i16> 5 %c = sext <8 x i16> %b to <8 x i32> 6 ret <8 x i32> %c 7} 8 9define <3 x i32> @b(<3 x i32> %a) nounwind { 10 %b = trunc <3 x i32> %a to <3 x i16> 11 %c = sext <3 x i16> %b to <3 x i32> 12 ret <3 x i32> %c 13} 14 15define <1 x i32> @c(<1 x i32> %a) nounwind { 16 %b = trunc <1 x i32> %a to <1 x i16> 17 %c = sext <1 x i16> %b to <1 x i32> 18 ret <1 x i32> %c 19} 20 21define <8 x i32> @d(<8 x i32> %a) nounwind { 22 %b = trunc <8 x i32> %a to <8 x i16> 23 %c = zext <8 x i16> %b to <8 x i32> 24 ret <8 x i32> %c 25} 26 27define <3 x i32> @e(<3 x i32> %a) nounwind { 28 %b = trunc <3 x i32> %a to <3 x i16> 29 %c = zext <3 x i16> %b to <3 x i32> 30 ret <3 x i32> %c 31} 32 33define <1 x i32> @f(<1 x i32> %a) nounwind { 34 %b = trunc <1 x i32> %a to <1 x i16> 35 %c = zext <1 x i16> %b to <1 x i32> 36 ret <1 x i32> %c 37} 38