# RUN: llc -mtriple=x86_64-linux-gnu                                  -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s --check-prefixes=ALL,NO_AVX512VL,SSE
# RUN: llc -mtriple=x86_64-linux-gnu -mattr=+avx                      -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s --check-prefixes=ALL,NO_AVX512VL,AVX
# RUN: llc -mtriple=x86_64-linux-gnu -mattr=+avx512f                  -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s --check-prefixes=ALL,NO_AVX512VL,AVX512F
# RUN: llc -mtriple=x86_64-linux-gnu -mattr=+avx512f -mattr=+avx512vl -run-pass=instruction-select -verify-machineinstrs %s -o - | FileCheck %s --check-prefixes=ALL,AVX512VL

--- |
  define i64 @test_add_i64(i64 %arg1, i64 %arg2) {
    %ret = add i64 %arg1, %arg2
    ret i64 %ret
  }

  define i32 @test_add_i32(i32 %arg1, i32 %arg2) {
    %ret = add i32 %arg1, %arg2
    ret i32 %ret
  }

  define i16 @test_add_i16(i16 %arg1, i16 %arg2) {
    %ret = add i16 %arg1, %arg2
    ret i16 %ret
  }

  define i8 @test_add_i8(i8 %arg1, i8 %arg2) {
    %ret = add i8 %arg1, %arg2
    ret i8 %ret
  }

  define <4 x i32> @test_add_v4i32(<4 x i32> %arg1, <4 x i32> %arg2) {
    %ret = add <4 x i32> %arg1, %arg2
    ret <4 x i32> %ret
  }

  define <4 x float>  @test_add_v4f32(<4 x float> %arg1, <4 x float>  %arg2) {
    %ret = fadd <4 x float>  %arg1, %arg2
    ret <4 x float>  %ret
  }
...

---
name:            test_add_i64
# ALL-LABEL: name:            test_add_i64
legalized:       true
regBankSelected: true
registers:
  - { id: 0, class: gpr }
  - { id: 1, class: gpr }
  - { id: 2, class: gpr }
# ALL:      %0:gr64 = COPY $rdi
# ALL-NEXT: %1:gr64 = COPY $rsi
# ALL-NEXT: %2:gr64 = ADD64rr %0, %1
body:             |
  bb.1 (%ir-block.0):
    liveins: $edi, $esi

    %0(s64) = COPY $rdi
    %1(s64) = COPY $rsi
    %2(s64) = G_ADD %0, %1
    $rax = COPY %2(s64)

...

---
name:            test_add_i32
# ALL-LABEL: name:            test_add_i32
legalized:       true
regBankSelected: true
registers:
  - { id: 0, class: gpr }
  - { id: 1, class: gpr }
  - { id: 2, class: gpr }
# ALL:      %0:gr32 = COPY $edi
# ALL-NEXT: %1:gr32 = COPY $esi
# ALL-NEXT: %2:gr32 = ADD32rr %0, %1
body:             |
  bb.1 (%ir-block.0):
    liveins: $edi, $esi

    %0(s32) = COPY $edi
    %1(s32) = COPY $esi
    %2(s32) = G_ADD %0, %1
    $eax = COPY %2(s32)

...
---
name:            test_add_i16
# ALL-LABEL: name:            test_add_i16
alignment:       16
legalized:       true
regBankSelected: true
selected:        false
registers:
  - { id: 0, class: gpr }
  - { id: 1, class: gpr }
  - { id: 2, class: gpr }
# ALL: %0:gr16 = COPY $di
# ALL: %1:gr16 = COPY $si
# ALL: %2:gr16 = ADD16rr %0, %1, implicit-def $eflags
body:             |
  bb.1 (%ir-block.0):
    liveins: $edi, $esi

    %0(s16) = COPY $di
    %1(s16) = COPY $si
    %2(s16) = G_ADD %0, %1
    $ax = COPY %2(s16)
    RET 0, implicit $ax

...
---
name:            test_add_i8
# ALL-LABEL: name:            test_add_i8
alignment:       16
legalized:       true
regBankSelected: true
selected:        false
registers:
  - { id: 0, class: gpr }
  - { id: 1, class: gpr }
  - { id: 2, class: gpr }
# ALL: %0:gr8 = COPY $dil
# ALL: %1:gr8 = COPY $sil
# ALL: %2:gr8 = ADD8rr %0, %1, implicit-def $eflags
body:             |
  bb.1 (%ir-block.0):
    liveins: $edi, $esi

    %0(s8) = COPY $dil
    %1(s8) = COPY $sil
    %2(s8) = G_ADD %0, %1
    $al = COPY %2(s8)
    RET 0, implicit $al

...
---
name:            test_add_v4i32
# ALL-LABEL: name:            test_add_v4i32
alignment:       16
legalized:       true
regBankSelected: true
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: vecr }
  - { id: 1, class: vecr }
  - { id: 2, class: vecr }
# NO_AVX512VL:   %0:vr128 = COPY $xmm0
# NO_AVX512VL:   %1:vr128 = COPY $xmm1
# SSE-NEXT:      %2:vr128 = PADDDrr %0, %1
# AVX-NEXT:      %2:vr128 = VPADDDrr %0, %1
# AVX512F-NEXT:  %2:vr128 = VPADDDrr %0, %1
# AVX512VL:      %0:vr128x = COPY $xmm0
# AVX512VL:      %1:vr128x = COPY $xmm1
# AVX512VL-NEXT: %2:vr128x = VPADDDZ128rr %0, %1
body:             |
  bb.1 (%ir-block.0):
    liveins: $xmm0, $xmm1

    %0(<4 x s32>) = COPY $xmm0
    %1(<4 x s32>) = COPY $xmm1
    %2(<4 x s32>) = G_ADD %0, %1
    $xmm0 = COPY %2(<4 x s32>)
    RET 0, implicit $xmm0

...
---
name:            test_add_v4f32
# ALL-LABEL: name:            test_add_v4f32
alignment:       16
legalized:       true
regBankSelected: true
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: vecr }
  - { id: 1, class: vecr }
  - { id: 2, class: vecr }
# SSE:           %0:vr128 = COPY $xmm0
# SSE-NEXT:      %1:vr128 = COPY $xmm1
# SSE-NEXT:      %2:vr128 = nofpexcept ADDPSrr %0, %1
# AVX:           %0:vr128 = COPY $xmm0
# AVX-NEXT:      %1:vr128 = COPY $xmm1
# AVX-NEXT:      %2:vr128 = nofpexcept VADDPSrr %0, %1
# AVX512F:       %0:vr128 = COPY $xmm0
# AVX512F-NEXT:  1:vr128 = COPY $xmm1
# AVX512F-NEXT:  %2:vr128 = nofpexcept VADDPSrr %0, %1
# AVX512VL:      %0:vr128x = COPY $xmm0
# AVX512VL-NEXT: %1:vr128x = COPY $xmm1
# AVX512VL-NEXT: %2:vr128x = nofpexcept VADDPSZ128rr %0, %1
body:             |
  bb.1 (%ir-block.0):
    liveins: $xmm0, $xmm1

    %0(<4 x s32>) = COPY $xmm0
    %1(<4 x s32>) = COPY $xmm1
    %2(<4 x s32>) = G_FADD %0, %1
    $xmm0 = COPY %2(<4 x s32>)
    RET 0, implicit $xmm0

...
