# RUN: llc -mtriple=x86_64-linux-gnu -mattr=+avx                -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=AVX
# RUN: llc -mtriple=x86_64-linux-gnu -mattr=+avx512f,+avx512vl  -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s --check-prefix=ALL --check-prefix=AVX512VL
--- |
  define void @test_insert_128_idx0() {
    ret void
  }

  define void @test_insert_128_idx0_undef() {
    ret void
  }

  define void @test_insert_128_idx1() {
    ret void
  }

  define void @test_insert_128_idx1_undef() {
    ret void
  }

...
---
name:            test_insert_128_idx0
# ALL-LABEL: name:  test_insert_128_idx0
alignment:       4
legalized:       true
regBankSelected: true
registers:
  - { id: 0, class: vecr }
  - { id: 1, class: vecr }
  - { id: 2, class: vecr }
# AVX:               %0:vr256 = COPY $ymm0
# AVX-NEXT:          %1:vr128 = COPY $xmm1
# AVX-NEXT:          %2:vr256 = VINSERTF128rr %0, %1, 0
# AVX-NEXT:          $ymm0 = COPY %2
# AVX-NEXT:          RET 0, implicit $ymm0
#
# AVX512VL:          %0:vr256x = COPY $ymm0
# AVX512VL-NEXT:     %1:vr128x = COPY $xmm1
# AVX512VL-NEXT:     %2:vr256x = VINSERTF32x4Z256rr %0, %1, 0
# AVX512VL-NEXT:     $ymm0 = COPY %2
# AVX512VL-NEXT:     RET 0, implicit $ymm0
body:             |
  bb.1 (%ir-block.0):
    liveins: $ymm0, $ymm1

    %0(<8 x s32>) = COPY $ymm0
    %1(<4 x s32>) = COPY $xmm1
    %2(<8 x s32>) = G_INSERT %0(<8 x s32>), %1(<4 x s32>), 0
    $ymm0 = COPY %2(<8 x s32>)
    RET 0, implicit $ymm0

...
---
name:            test_insert_128_idx0_undef
# ALL-LABEL: name:  test_insert_128_idx0_undef
alignment:       4
legalized:       true
regBankSelected: true
registers:
  - { id: 0, class: vecr }
  - { id: 1, class: vecr }
  - { id: 2, class: vecr }
# AVX:               %1:vr128 = COPY $xmm1
# AVX-NEXT:          undef %2.sub_xmm:vr256 = COPY %1
# AVX-NEXT:          $ymm0 = COPY %2
# AVX-NEXT:          RET 0, implicit $ymm0
#
# AVX512VL:          %1:vr128x = COPY $xmm1
# AVX512VL-NEXT:     undef %2.sub_xmm:vr256x = COPY %1
# AVX512VL-NEXT:     $ymm0 = COPY %2
# AVX512VL-NEXT:     RET 0, implicit $ymm0
body:             |
  bb.1 (%ir-block.0):
    liveins: $ymm0, $ymm1

    %0(<8 x s32>) = IMPLICIT_DEF
    %1(<4 x s32>) = COPY $xmm1
    %2(<8 x s32>) = G_INSERT %0(<8 x s32>), %1(<4 x s32>), 0
    $ymm0 = COPY %2(<8 x s32>)
    RET 0, implicit $ymm0

...
---
name:            test_insert_128_idx1
# ALL-LABEL: name:  test_insert_128_idx1
alignment:       4
legalized:       true
regBankSelected: true
registers:
  - { id: 0, class: vecr }
  - { id: 1, class: vecr }
  - { id: 2, class: vecr }
# AVX:               %0:vr256 = COPY $ymm0
# AVX-NEXT:          %1:vr128 = COPY $xmm1
# AVX-NEXT:          %2:vr256 = VINSERTF128rr %0, %1, 1
# AVX-NEXT:          $ymm0 = COPY %2
# AVX-NEXT:          RET 0, implicit $ymm0
#
# AVX512VL:          %0:vr256x = COPY $ymm0
# AVX512VL-NEXT:     %1:vr128x = COPY $xmm1
# AVX512VL-NEXT:     %2:vr256x = VINSERTF32x4Z256rr %0, %1, 1
# AVX512VL-NEXT:     $ymm0 = COPY %2
# AVX512VL-NEXT:     RET 0, implicit $ymm0
body:             |
  bb.1 (%ir-block.0):
    liveins: $ymm0, $ymm1

    %0(<8 x s32>) = COPY $ymm0
    %1(<4 x s32>) = COPY $xmm1
    %2(<8 x s32>) = G_INSERT %0(<8 x s32>), %1(<4 x s32>), 128
    $ymm0 = COPY %2(<8 x s32>)
    RET 0, implicit $ymm0
...
---
name:            test_insert_128_idx1_undef
# ALL-LABEL: name:  test_insert_128_idx1_undef
alignment:       4
legalized:       true
regBankSelected: true
registers:
  - { id: 0, class: vecr }
  - { id: 1, class: vecr }
  - { id: 2, class: vecr }
# AVX:               %0:vr256 = IMPLICIT_DEF
# AVX-NEXT:          %1:vr128 = COPY $xmm1
# AVX-NEXT:          %2:vr256 = VINSERTF128rr %0, %1, 1
# AVX-NEXT:          $ymm0 = COPY %2
# AVX-NEXT:          RET 0, implicit $ymm0
#
# AVX512VL:          %0:vr256x = IMPLICIT_DEF
# AVX512VL-NEXT:     %1:vr128x = COPY $xmm1
# AVX512VL-NEXT:     %2:vr256x = VINSERTF32x4Z256rr %0, %1, 1
# AVX512VL-NEXT:     $ymm0 = COPY %2
# AVX512VL-NEXT:     RET 0, implicit $ymm0
body:             |
  bb.1 (%ir-block.0):
    liveins: $ymm0, $ymm1

    %0(<8 x s32>) = IMPLICIT_DEF
    %1(<4 x s32>) = COPY $xmm1
    %2(<8 x s32>) = G_INSERT %0(<8 x s32>), %1(<4 x s32>), 128
    $ymm0 = COPY %2(<8 x s32>)
    RET 0, implicit $ymm0
...
