1; RUN: llc < %s -mtriple=x86_64-linux -mcpu=penryn | FileCheck %s 2 3define void @t0(<2 x i64>* %dst, <2 x i64> %src1, <2 x i64> %src2) nounwind readonly { 4; CHECK: t0 5; CHECK: pand 6; CHECK: ret 7 %cmp1 = icmp ne <2 x i64> %src1, zeroinitializer 8 %cmp2 = icmp ne <2 x i64> %src2, zeroinitializer 9 %t1 = and <2 x i1> %cmp1, %cmp2 10 %t2 = sext <2 x i1> %t1 to <2 x i64> 11 store <2 x i64> %t2, <2 x i64>* %dst 12 ret void 13} 14 15define void @t2(<3 x i64>* %dst, <3 x i64> %src1, <3 x i64> %src2) nounwind readonly { 16; CHECK: t2 17; CHECK-NOT: pand 18; CHECK: ret 19 %cmp1 = icmp ne <3 x i64> %src1, zeroinitializer 20 %cmp2 = icmp ne <3 x i64> %src2, zeroinitializer 21 %t1 = and <3 x i1> %cmp1, %cmp2 22 %t2 = sext <3 x i1> %t1 to <3 x i64> 23 store <3 x i64> %t2, <3 x i64>* %dst 24 ret void 25} 26