; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc -mtriple=x86_64-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512dq < %s | FileCheck %s --check-prefix=X86-64
; RUN: llc -mtriple=i386-unknown-unknown -mattr=+avx512f,+avx512bw,+avx512dq < %s | FileCheck %s --check-prefix=X86-32

define void @test_fcmp_storefloat(i1 %cond, ptr %fptr, float %f1, float %f2, float %f3, float %f4, float %f5, float %f6) {
; X86-64-LABEL: test_fcmp_storefloat:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB0_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    vcmpeqss %xmm3, %xmm2, %k1
; X86-64-NEXT:    jmp .LBB0_3
; X86-64-NEXT:  .LBB0_2: # %else
; X86-64-NEXT:    vcmpeqss %xmm5, %xmm4, %k1
; X86-64-NEXT:  .LBB0_3: # %exit
; X86-64-NEXT:    vmovss %xmm0, %xmm1, %xmm1 {%k1}
; X86-64-NEXT:    vmovss %xmm1, (%rsi)
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_fcmp_storefloat:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-32-NEXT:    vmovss {{.*#+}} xmm1 = mem[0],zero,zero,zero
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB0_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    vmovss {{.*#+}} xmm2 = mem[0],zero,zero,zero
; X86-32-NEXT:    vcmpeqss {{[0-9]+}}(%esp), %xmm2, %k1
; X86-32-NEXT:    jmp .LBB0_3
; X86-32-NEXT:  .LBB0_2: # %else
; X86-32-NEXT:    vmovss {{.*#+}} xmm2 = mem[0],zero,zero,zero
; X86-32-NEXT:    vcmpeqss {{[0-9]+}}(%esp), %xmm2, %k1
; X86-32-NEXT:  .LBB0_3: # %exit
; X86-32-NEXT:    vmovss %xmm1, %xmm0, %xmm0 {%k1}
; X86-32-NEXT:    vmovss %xmm0, (%eax)
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %cmp1 = fcmp oeq float %f3, %f4
  br label %exit

else:
  %cmp2 = fcmp oeq float %f5, %f6
  br label %exit

exit:
  %val = phi i1 [%cmp1, %if], [%cmp2, %else]
  %selected = select i1 %val, float %f1, float %f2
  store float %selected, ptr %fptr
  ret void
}

define void @test_fcmp_storei1(i1 %cond, ptr %fptr, ptr %iptr, float %f1, float %f2, float %f3, float %f4) {
; X86-64-LABEL: test_fcmp_storei1:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB1_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    vcmpeqss %xmm1, %xmm0, %k0
; X86-64-NEXT:    kmovb %k0, (%rdx)
; X86-64-NEXT:    retq
; X86-64-NEXT:  .LBB1_2: # %else
; X86-64-NEXT:    vcmpeqss %xmm3, %xmm2, %k0
; X86-64-NEXT:    kmovb %k0, (%rdx)
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_fcmp_storei1:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB1_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-32-NEXT:    vcmpeqss {{[0-9]+}}(%esp), %xmm0, %k0
; X86-32-NEXT:    kmovb %k0, (%eax)
; X86-32-NEXT:    retl
; X86-32-NEXT:  .LBB1_2: # %else
; X86-32-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-32-NEXT:    vcmpeqss {{[0-9]+}}(%esp), %xmm0, %k0
; X86-32-NEXT:    kmovb %k0, (%eax)
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %cmp1 = fcmp oeq float %f1, %f2
  br label %exit

else:
  %cmp2 = fcmp oeq float %f3, %f4
  br label %exit

exit:
  %val = phi i1 [%cmp1, %if], [%cmp2, %else]
  store i1 %val, ptr %iptr
  ret void
}

define void @test_load_add(i1 %cond, ptr %fptr, ptr %iptr1, ptr %iptr2, float %f1, float %f2)  {
; X86-64-LABEL: test_load_add:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB2_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    movzbl (%rdx), %eax
; X86-64-NEXT:    xorb (%rcx), %al
; X86-64-NEXT:    jmp .LBB2_3
; X86-64-NEXT:  .LBB2_2: # %else
; X86-64-NEXT:    movzbl (%rcx), %eax
; X86-64-NEXT:  .LBB2_3: # %exit
; X86-64-NEXT:    kmovd %eax, %k1
; X86-64-NEXT:    vmovss %xmm0, %xmm1, %xmm1 {%k1}
; X86-64-NEXT:    vmovss %xmm1, (%rsi)
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_load_add:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-32-NEXT:    vmovss {{.*#+}} xmm1 = mem[0],zero,zero,zero
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB2_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %edx
; X86-32-NEXT:    movzbl (%edx), %edx
; X86-32-NEXT:    xorb (%ecx), %dl
; X86-32-NEXT:    jmp .LBB2_3
; X86-32-NEXT:  .LBB2_2: # %else
; X86-32-NEXT:    movzbl (%ecx), %edx
; X86-32-NEXT:  .LBB2_3: # %exit
; X86-32-NEXT:    kmovd %edx, %k1
; X86-32-NEXT:    vmovss %xmm1, %xmm0, %xmm0 {%k1}
; X86-32-NEXT:    vmovss %xmm0, (%eax)
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %loaded1 = load i1, ptr %iptr1
  %loaded2if = load i1, ptr %iptr2
  %added = add i1 %loaded1, %loaded2if
  br label %exit

else:
  %loaded2else = load i1, ptr %iptr2
  br label %exit

exit:
  %val = phi i1 [%added, %if], [%loaded2else, %else]
  %selected = select i1 %val, float %f1, float %f2
  store float %selected, ptr %fptr
  ret void
}

define void @test_load_i1(i1 %cond, ptr %fptr, ptr %iptr1, ptr %iptr2, float %f1, float %f2)  {
; X86-64-LABEL: test_load_i1:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB3_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    kmovb (%rdx), %k1
; X86-64-NEXT:    jmp .LBB3_3
; X86-64-NEXT:  .LBB3_2: # %else
; X86-64-NEXT:    kmovb (%rcx), %k1
; X86-64-NEXT:  .LBB3_3: # %exit
; X86-64-NEXT:    vmovss %xmm0, %xmm1, %xmm1 {%k1}
; X86-64-NEXT:    vmovss %xmm1, (%rsi)
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_load_i1:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    vmovss {{.*#+}} xmm0 = mem[0],zero,zero,zero
; X86-32-NEXT:    vmovss {{.*#+}} xmm1 = mem[0],zero,zero,zero
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB3_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    jmp .LBB3_3
; X86-32-NEXT:  .LBB3_2: # %else
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:  .LBB3_3: # %exit
; X86-32-NEXT:    kmovb (%ecx), %k1
; X86-32-NEXT:    vmovss %xmm1, %xmm0, %xmm0 {%k1}
; X86-32-NEXT:    vmovss %xmm0, (%eax)
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %loaded1 = load i1, ptr %iptr1
  br label %exit

else:
  %loaded2 = load i1, ptr %iptr2
  br label %exit

exit:
  %val = phi i1 [%loaded1, %if], [%loaded2, %else]
  %selected = select i1 %val, float %f1, float %f2
  store float %selected, ptr %fptr
  ret void
}

define void @test_loadi1_storei1(i1 %cond, ptr %iptr1, ptr %iptr2, ptr %iptr3)  {
; X86-64-LABEL: test_loadi1_storei1:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB4_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    movzbl (%rsi), %eax
; X86-64-NEXT:    jmp .LBB4_3
; X86-64-NEXT:  .LBB4_2: # %else
; X86-64-NEXT:    movzbl (%rdx), %eax
; X86-64-NEXT:  .LBB4_3: # %exit
; X86-64-NEXT:    andb $1, %al
; X86-64-NEXT:    movb %al, (%rcx)
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_loadi1_storei1:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB4_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    jmp .LBB4_3
; X86-32-NEXT:  .LBB4_2: # %else
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:  .LBB4_3: # %exit
; X86-32-NEXT:    movzbl (%ecx), %ecx
; X86-32-NEXT:    andb $1, %cl
; X86-32-NEXT:    movb %cl, (%eax)
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %loaded1 = load i1, ptr %iptr1
  br label %exit

else:
  %loaded2 = load i1, ptr %iptr2
  br label %exit

exit:
  %val = phi i1 [%loaded1, %if], [%loaded2, %else]
  store i1 %val, ptr %iptr3
  ret void
}

define void @test_shl1(i1 %cond, ptr %ptr1, ptr %ptr2, <8 x float> %fvec1, <8 x float> %fvec2, ptr %fptrvec) {
; X86-64-LABEL: test_shl1:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-64-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB5_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    kmovb (%rsi), %k0
; X86-64-NEXT:    kaddb %k0, %k0, %k1
; X86-64-NEXT:    jmp .LBB5_3
; X86-64-NEXT:  .LBB5_2: # %else
; X86-64-NEXT:    kmovb (%rdx), %k1
; X86-64-NEXT:  .LBB5_3: # %exit
; X86-64-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-64-NEXT:    vmovaps %ymm1, (%rcx)
; X86-64-NEXT:    vzeroupper
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_shl1:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-32-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB5_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k0
; X86-32-NEXT:    kaddb %k0, %k0, %k1
; X86-32-NEXT:    jmp .LBB5_3
; X86-32-NEXT:  .LBB5_2: # %else
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k1
; X86-32-NEXT:  .LBB5_3: # %exit
; X86-32-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-32-NEXT:    vmovaps %ymm1, (%eax)
; X86-32-NEXT:    vzeroupper
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %loaded1 = load i8, ptr %ptr1
  %shifted = shl i8 %loaded1, 1
  br label %exit

else:
  %loaded2 = load i8, ptr %ptr2
  br label %exit

exit:
  %val = phi i8 [%shifted, %if], [%loaded2, %else]
  %mask = bitcast i8 %val to <8 x i1>
  %selected = select <8 x i1> %mask, <8 x float> %fvec1, <8 x float> %fvec2
  store <8 x float> %selected, ptr %fptrvec
  ret void
}

define void @test_shr1(i1 %cond, ptr %ptr1, ptr %ptr2, <8 x float> %fvec1, <8 x float> %fvec2, ptr %fptrvec) {
; X86-64-LABEL: test_shr1:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-64-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB6_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    kmovb (%rsi), %k0
; X86-64-NEXT:    kshiftrb $1, %k0, %k1
; X86-64-NEXT:    jmp .LBB6_3
; X86-64-NEXT:  .LBB6_2: # %else
; X86-64-NEXT:    kmovb (%rdx), %k1
; X86-64-NEXT:  .LBB6_3: # %exit
; X86-64-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-64-NEXT:    vmovaps %ymm1, (%rcx)
; X86-64-NEXT:    vzeroupper
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_shr1:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-32-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB6_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k0
; X86-32-NEXT:    kshiftrb $1, %k0, %k1
; X86-32-NEXT:    jmp .LBB6_3
; X86-32-NEXT:  .LBB6_2: # %else
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k1
; X86-32-NEXT:  .LBB6_3: # %exit
; X86-32-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-32-NEXT:    vmovaps %ymm1, (%eax)
; X86-32-NEXT:    vzeroupper
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %loaded1 = load i8, ptr %ptr1
  %shifted = lshr i8 %loaded1, 1
  br label %exit

else:
  %loaded2 = load i8, ptr %ptr2
  br label %exit

exit:
  %val = phi i8 [%shifted, %if], [%loaded2, %else]
  %mask = bitcast i8 %val to <8 x i1>
  %selected = select <8 x i1> %mask, <8 x float> %fvec1, <8 x float> %fvec2
  store <8 x float> %selected, ptr %fptrvec
  ret void
}

define void @test_shr2(i1 %cond, ptr %ptr1, ptr %ptr2, <8 x float> %fvec1, <8 x float> %fvec2, ptr %fptrvec) {
; X86-64-LABEL: test_shr2:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-64-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB7_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    kmovb (%rsi), %k0
; X86-64-NEXT:    kshiftrb $2, %k0, %k1
; X86-64-NEXT:    jmp .LBB7_3
; X86-64-NEXT:  .LBB7_2: # %else
; X86-64-NEXT:    kmovb (%rdx), %k1
; X86-64-NEXT:  .LBB7_3: # %exit
; X86-64-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-64-NEXT:    vmovaps %ymm1, (%rcx)
; X86-64-NEXT:    vzeroupper
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_shr2:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-32-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB7_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k0
; X86-32-NEXT:    kshiftrb $2, %k0, %k1
; X86-32-NEXT:    jmp .LBB7_3
; X86-32-NEXT:  .LBB7_2: # %else
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k1
; X86-32-NEXT:  .LBB7_3: # %exit
; X86-32-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-32-NEXT:    vmovaps %ymm1, (%eax)
; X86-32-NEXT:    vzeroupper
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %loaded1 = load i8, ptr %ptr1
  %shifted = lshr i8 %loaded1, 2
  br label %exit

else:
  %loaded2 = load i8, ptr %ptr2
  br label %exit

exit:
  %val = phi i8 [%shifted, %if], [%loaded2, %else]
  %mask = bitcast i8 %val to <8 x i1>
  %selected = select <8 x i1> %mask, <8 x float> %fvec1, <8 x float> %fvec2
  store <8 x float> %selected, ptr %fptrvec
  ret void
}

define void @test_shl(i1 %cond, ptr %ptr1, ptr %ptr2, <8 x float> %fvec1, <8 x float> %fvec2, ptr %fptrvec) {
; X86-64-LABEL: test_shl:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-64-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB8_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    kmovb (%rsi), %k0
; X86-64-NEXT:    kshiftlb $6, %k0, %k1
; X86-64-NEXT:    jmp .LBB8_3
; X86-64-NEXT:  .LBB8_2: # %else
; X86-64-NEXT:    kmovb (%rdx), %k1
; X86-64-NEXT:  .LBB8_3: # %exit
; X86-64-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-64-NEXT:    vmovaps %ymm1, (%rcx)
; X86-64-NEXT:    vzeroupper
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_shl:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-32-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB8_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k0
; X86-32-NEXT:    kshiftlb $6, %k0, %k1
; X86-32-NEXT:    jmp .LBB8_3
; X86-32-NEXT:  .LBB8_2: # %else
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    kmovb (%ecx), %k1
; X86-32-NEXT:  .LBB8_3: # %exit
; X86-32-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-32-NEXT:    vmovaps %ymm1, (%eax)
; X86-32-NEXT:    vzeroupper
; X86-32-NEXT:    retl
entry:
  br i1 %cond, label %if, label %else

if:
  %loaded1 = load i8, ptr %ptr1
  %shifted = shl i8 %loaded1, 6
  br label %exit

else:
  %loaded2 = load i8, ptr %ptr2
  br label %exit

exit:
  %val = phi i8 [%shifted, %if], [%loaded2, %else]
  %mask = bitcast i8 %val to <8 x i1>
  %selected = select <8 x i1> %mask, <8 x float> %fvec1, <8 x float> %fvec2
  store <8 x float> %selected, ptr %fptrvec
  ret void
}

define void @test_add(i1 %cond, ptr %ptr1, ptr %ptr2, <8 x float> %fvec1, <8 x float> %fvec2, ptr %fptrvec) {
; X86-64-LABEL: test_add:
; X86-64:       # %bb.0: # %entry
; X86-64-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-64-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-64-NEXT:    kmovb (%rsi), %k0
; X86-64-NEXT:    kmovb (%rdx), %k1
; X86-64-NEXT:    testb $1, %dil
; X86-64-NEXT:    je .LBB9_2
; X86-64-NEXT:  # %bb.1: # %if
; X86-64-NEXT:    kandb %k1, %k0, %k1
; X86-64-NEXT:    jmp .LBB9_3
; X86-64-NEXT:  .LBB9_2: # %else
; X86-64-NEXT:    kaddb %k1, %k0, %k1
; X86-64-NEXT:  .LBB9_3: # %exit
; X86-64-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-64-NEXT:    vmovaps %ymm1, (%rcx)
; X86-64-NEXT:    vzeroupper
; X86-64-NEXT:    retq
;
; X86-32-LABEL: test_add:
; X86-32:       # %bb.0: # %entry
; X86-32-NEXT:    # kill: def $ymm1 killed $ymm1 def $zmm1
; X86-32-NEXT:    # kill: def $ymm0 killed $ymm0 def $zmm0
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %eax
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %ecx
; X86-32-NEXT:    movl {{[0-9]+}}(%esp), %edx
; X86-32-NEXT:    kmovb (%edx), %k0
; X86-32-NEXT:    kmovb (%ecx), %k1
; X86-32-NEXT:    testb $1, {{[0-9]+}}(%esp)
; X86-32-NEXT:    je .LBB9_2
; X86-32-NEXT:  # %bb.1: # %if
; X86-32-NEXT:    kandb %k1, %k0, %k1
; X86-32-NEXT:    jmp .LBB9_3
; X86-32-NEXT:  .LBB9_2: # %else
; X86-32-NEXT:    kaddb %k1, %k0, %k1
; X86-32-NEXT:  .LBB9_3: # %exit
; X86-32-NEXT:    vmovaps %zmm0, %zmm1 {%k1}
; X86-32-NEXT:    vmovaps %ymm1, (%eax)
; X86-32-NEXT:    vzeroupper
; X86-32-NEXT:    retl
entry:
  %loaded1 = load i8, ptr %ptr1
  %loaded2 = load i8, ptr %ptr2
  br i1 %cond, label %if, label %else

if:
  %and = and i8 %loaded1, %loaded2
  br label %exit

else:
  %add = add i8 %loaded1, %loaded2
  br label %exit

exit:
  %val = phi i8 [%and, %if], [%add, %else]
  %mask = bitcast i8 %val to <8 x i1>
  %selected = select <8 x i1> %mask, <8 x float> %fvec1, <8 x float> %fvec2
  store <8 x float> %selected, ptr %fptrvec
  ret void
}
