; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py ; RUN: llc < %s -mtriple=i386-unknown-linux-gnu -mattr=avx512dq | FileCheck %s define void @undef_cond() { ; CHECK-LABEL: undef_cond: ; CHECK: # %bb.0: ; CHECK-NEXT: retl %a_load22 = load <16 x i64>, <16 x i64>* null, align 1 %bitop = or <16 x i64> %a_load22, %v.i = load <16 x i64>, <16 x i64>* null %v1.i41 = select <16 x i1> undef, <16 x i64> %bitop, <16 x i64> %v.i store <16 x i64> %v1.i41, <16 x i64>* null ret void } define void @f_f___un_3C_unf_3E_un_3C_unf_3E_(<16 x i1> %x) { ; CHECK-LABEL: f_f___un_3C_unf_3E_un_3C_unf_3E_: ; CHECK: # %bb.0: ; CHECK-NEXT: vpmovsxbd %xmm0, %zmm0 ; CHECK-NEXT: vpslld $31, %zmm0, %zmm0 ; CHECK-NEXT: vpmovd2m %zmm0, %k1 ; CHECK-NEXT: vmovapd 0, %zmm0 ; CHECK-NEXT: vmovapd 64, %zmm1 ; CHECK-NEXT: vbroadcastsd {{.*#+}} zmm2 = [68719476736,68719476736,68719476736,68719476736,68719476736,68719476736,68719476736,68719476736] ; CHECK-NEXT: kshiftrw $8, %k1, %k2 ; CHECK-NEXT: vorpd %zmm2, %zmm1, %zmm1 {%k2} ; CHECK-NEXT: vorpd %zmm2, %zmm0, %zmm0 {%k1} ; CHECK-NEXT: vmovapd %zmm0, 0 ; CHECK-NEXT: vmovapd %zmm1, 64 ; CHECK-NEXT: vzeroupper ; CHECK-NEXT: retl %a_load22 = load <16 x i64>, <16 x i64>* null, align 1 %bitop = or <16 x i64> %a_load22, %v.i = load <16 x i64>, <16 x i64>* null %v1.i41 = select <16 x i1> %x, <16 x i64> %bitop, <16 x i64> %v.i store <16 x i64> %v1.i41, <16 x i64>* null ret void }