; NOTE: Assertions have been autogenerated by utils/update_llc_test_checks.py
; RUN: llc -O3 --x86-asm-syntax=intel -mtriple=x86_64-grtev4-linux-gnu -march=x86-64 -mattr=avx < %s | FileCheck %s

define void @extracter0([4 x <4 x i1>] %matrix) {
; CHECK-LABEL: extracter0:
; CHECK:       # %bb.0:
; CHECK-NEXT:    push rbp
; CHECK-NEXT:    .cfi_def_cfa_offset 16
; CHECK-NEXT:    push r14
; CHECK-NEXT:    .cfi_def_cfa_offset 24
; CHECK-NEXT:    push rbx
; CHECK-NEXT:    .cfi_def_cfa_offset 32
; CHECK-NEXT:    .cfi_offset rbx, -32
; CHECK-NEXT:    .cfi_offset r14, -24
; CHECK-NEXT:    .cfi_offset rbp, -16
; CHECK-NEXT:    vpslld xmm0, xmm0, 31
; CHECK-NEXT:    vmovmskps edi, xmm0
; CHECK-NEXT:    mov ebp, edi
; CHECK-NEXT:    shr bpl, 3
; CHECK-NEXT:    mov r14d, edi
; CHECK-NEXT:    and r14b, 4
; CHECK-NEXT:    shr r14b, 2
; CHECK-NEXT:    mov ebx, edi
; CHECK-NEXT:    and bl, 2
; CHECK-NEXT:    shr bl
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, bl
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, r14b
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, bpl
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    pop rbx
; CHECK-NEXT:    .cfi_def_cfa_offset 24
; CHECK-NEXT:    pop r14
; CHECK-NEXT:    .cfi_def_cfa_offset 16
; CHECK-NEXT:    pop rbp
; CHECK-NEXT:    .cfi_def_cfa_offset 8
; CHECK-NEXT:    ret
  %1 = extractvalue [4 x <4 x i1>] %matrix, 0
  %2 = extractelement <4 x i1> %1, i64 0
  %3 = extractelement <4 x i1> %1, i64 1
  %4 = extractelement <4 x i1> %1, i64 2
  %5 = extractelement <4 x i1> %1, i64 3
  call void @print_i1(i1 %2)
  call void @print_i1(i1 %3)
  call void @print_i1(i1 %4)
  call void @print_i1(i1 %5)
  ret void
}

define void @extracter1([4 x <4 x i1>] %matrix) {
; CHECK-LABEL: extracter1:
; CHECK:       # %bb.0:
; CHECK-NEXT:    push rbp
; CHECK-NEXT:    .cfi_def_cfa_offset 16
; CHECK-NEXT:    push r15
; CHECK-NEXT:    .cfi_def_cfa_offset 24
; CHECK-NEXT:    push r14
; CHECK-NEXT:    .cfi_def_cfa_offset 32
; CHECK-NEXT:    push r13
; CHECK-NEXT:    .cfi_def_cfa_offset 40
; CHECK-NEXT:    push r12
; CHECK-NEXT:    .cfi_def_cfa_offset 48
; CHECK-NEXT:    push rbx
; CHECK-NEXT:    .cfi_def_cfa_offset 56
; CHECK-NEXT:    push rax
; CHECK-NEXT:    .cfi_def_cfa_offset 64
; CHECK-NEXT:    .cfi_offset rbx, -56
; CHECK-NEXT:    .cfi_offset r12, -48
; CHECK-NEXT:    .cfi_offset r13, -40
; CHECK-NEXT:    .cfi_offset r14, -32
; CHECK-NEXT:    .cfi_offset r15, -24
; CHECK-NEXT:    .cfi_offset rbp, -16
; CHECK-NEXT:    vpslld xmm1, xmm1, 31
; CHECK-NEXT:    vmovmskps ebp, xmm1
; CHECK-NEXT:    mov eax, ebp
; CHECK-NEXT:    shr al, 3
; CHECK-NEXT:    mov byte ptr [rsp + 7], al # 1-byte Spill
; CHECK-NEXT:    mov r15d, ebp
; CHECK-NEXT:    and r15b, 4
; CHECK-NEXT:    shr r15b, 2
; CHECK-NEXT:    mov r13d, ebp
; CHECK-NEXT:    and r13b, 2
; CHECK-NEXT:    shr r13b
; CHECK-NEXT:    vpslld xmm0, xmm0, 31
; CHECK-NEXT:    vmovmskps edi, xmm0
; CHECK-NEXT:    mov r12d, edi
; CHECK-NEXT:    shr r12b, 3
; CHECK-NEXT:    mov ebx, edi
; CHECK-NEXT:    and bl, 4
; CHECK-NEXT:    shr bl, 2
; CHECK-NEXT:    mov r14d, edi
; CHECK-NEXT:    and r14b, 2
; CHECK-NEXT:    shr r14b
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, r14b
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, bl
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, r12b
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    mov edi, ebp
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, r13b
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, r15b
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    movzx edi, byte ptr [rsp + 7] # 1-byte Folded Reload
; CHECK-NEXT:    call print_i1
; CHECK-NEXT:    add rsp, 8
; CHECK-NEXT:    .cfi_def_cfa_offset 56
; CHECK-NEXT:    pop rbx
; CHECK-NEXT:    .cfi_def_cfa_offset 48
; CHECK-NEXT:    pop r12
; CHECK-NEXT:    .cfi_def_cfa_offset 40
; CHECK-NEXT:    pop r13
; CHECK-NEXT:    .cfi_def_cfa_offset 32
; CHECK-NEXT:    pop r14
; CHECK-NEXT:    .cfi_def_cfa_offset 24
; CHECK-NEXT:    pop r15
; CHECK-NEXT:    .cfi_def_cfa_offset 16
; CHECK-NEXT:    pop rbp
; CHECK-NEXT:    .cfi_def_cfa_offset 8
; CHECK-NEXT:    ret
  %1 = extractvalue [4 x <4 x i1>] %matrix, 0
  %2 = extractelement <4 x i1> %1, i64 0
  %3 = extractelement <4 x i1> %1, i64 1
  %4 = extractelement <4 x i1> %1, i64 2
  %5 = extractelement <4 x i1> %1, i64 3
  call void @print_i1(i1 %2)
  call void @print_i1(i1 %3)
  call void @print_i1(i1 %4)
  call void @print_i1(i1 %5)
  %6 = extractvalue [4 x <4 x i1>] %matrix, 1
  %7 = extractelement <4 x i1> %6, i64 0
  %8 = extractelement <4 x i1> %6, i64 1
  %9 = extractelement <4 x i1> %6, i64 2
  %10 = extractelement <4 x i1> %6, i64 3
  call void @print_i1(i1 %7)
  call void @print_i1(i1 %8)
  call void @print_i1(i1 %9)
  call void @print_i1(i1 %10)
  ret void
}

declare void @print_i1(i1)
