# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -O0 -run-pass=legalizer -global-isel-abort=1 %s -o - | FileCheck %s

--- |
  target datalayout = "e-m:o-i64:64-i128:128-n32:64-S128"
  target triple = "aarch64--"
  define void @test_combines_2() { ret void }
  define void @test_combines_3() { ret void }
  define void @test_combines_4() { ret void }
  define void @test_combines_5() { ret void }
  define void @test_combines_6() { ret void }
...

---
name:            test_combines_2
body: |
  bb.0:
    liveins: $w0

    ; Here the types don't match.
    ; CHECK-LABEL: name: test_combines_2
    ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $w0
    ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY]]
    ; CHECK: [[MV:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[COPY]](s32), [[ADD]](s32)
    ; CHECK: [[EXTRACT:%[0-9]+]]:_(s1) = G_EXTRACT [[MV]](s64), 0
    ; CHECK: [[EXTRACT1:%[0-9]+]]:_(s64) = COPY [[MV]](s64)
    %0:_(s32) = COPY $w0

    %1:_(s32) = G_ADD %0, %0
    %2:_(s64) = G_MERGE_VALUES %0, %1
    %3:_(s1) = G_EXTRACT %2, 0
    %5:_(s32) = G_ANYEXT %3
    $w0 = COPY %5
    %4:_(s64) = COPY %2
    $x0 = COPY %4
...

---
name:            test_combines_3
body: |
  bb.0:
    liveins: $w0

    ; CHECK-LABEL: name: test_combines_3
    ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $w0
    ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY]]
    ; CHECK: [[ADD1:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[ADD]]
    %0:_(s32) = COPY $w0

    %1:_(s32) = G_ADD %0, %0
    %2:_(s64) = G_MERGE_VALUES %0, %1
    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %2
    %5:_(s32) = G_ADD %3, %4
    $w0 = COPY %5
...

---
name:            test_combines_4
body: |
  bb.0:
    liveins: $x0

    ; CHECK-LABEL: name: test_combines_4
    ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $x0
    ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY [[COPY]](s64)
    ; CHECK: [[ADD:%[0-9]+]]:_(s64) = G_ADD [[COPY1]], [[COPY1]]
    %0:_(s64) = COPY $x0

    %1:_(s128) = G_MERGE_VALUES %0, %0
    %2:_(s64) = G_EXTRACT %1, 0
    %3:_(s64) = G_ADD %2, %2
    $x0 = COPY %3
...

---
name:            test_combines_5
body: |
  bb.0:
    liveins: $w0

    ; CHECK-LABEL: name: test_combines_5
    ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $w0
    ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY]]
    ; CHECK: [[ADD1:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[ADD]]
    %0:_(s32) = COPY $w0

    %1:_(s32) = G_ADD %0, %0
    %2:_(s64) = G_MERGE_VALUES %0, %1
    %6:_(s64) = COPY %2
    %7:_(s64) = COPY %6
    %8:_(s64) = COPY %7
    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %8
    %5:_(s32) = G_ADD %3, %4
    $w0 = COPY %5
...

---
name:            test_combines_6
body: |
  bb.0:
    liveins: $w0

    ; CHECK-LABEL: name: test_combines_6
    ; CHECK: [[COPY:%[0-9]+]]:_(s32) = COPY $w0
    ; CHECK: [[ADD:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[COPY]]
    ; CHECK: [[MV:%[0-9]+]]:_(s64) = G_MERGE_VALUES [[COPY]](s32), [[ADD]](s32)
    ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY [[MV]](s64)
    ; CHECK: [[COPY2:%[0-9]+]]:_(s64) = COPY [[COPY1]](s64)
    ; CHECK: [[ADD1:%[0-9]+]]:_(s32) = G_ADD [[COPY]], [[ADD]]
    ; CHECK: $w0 = COPY [[ADD1]](s32)
    ; CHECK: $x0 = COPY [[COPY2]](s64)
    %0:_(s32) = COPY $w0

    %1:_(s32) = G_ADD %0, %0
    %2:_(s64) = G_MERGE_VALUES %0, %1
    %6:_(s64) = COPY %2
    %7:_(s64) = COPY %6
    %8:_(s64) = COPY %7
    %3:_(s32), %4:_(s32) = G_UNMERGE_VALUES %8
    %5:_(s32) = G_ADD %3, %4
    $w0 = COPY %5
    $x0 = COPY %7
...
