# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py
# RUN: llc -march=aarch64 -run-pass=legalizer %s -o - | FileCheck %s
---
name:            test_simple
body:             |
  ; CHECK-LABEL: name: test_simple
  ; CHECK: bb.0.entry:
  ; CHECK:   successors: %bb.1(0x80000000)
  ; CHECK:   [[COPY:%[0-9]+]]:_(s64) = COPY $x0
  ; CHECK:   [[TRUNC:%[0-9]+]]:_(s1) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[TRUNC1:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[INTTOPTR:%[0-9]+]]:_(p0) = G_INTTOPTR [[COPY]](s64)
  ; CHECK:   [[PTRTOINT:%[0-9]+]]:_(s64) = G_PTRTOINT [[INTTOPTR]](p0)
  ; CHECK:   $x0 = COPY [[PTRTOINT]](s64)
  ; CHECK:   G_BRCOND [[TRUNC]](s1), %bb.1
  ; CHECK: bb.1:
  ; CHECK:   [[TRUNC2:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[TRUNC3:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[SELECT:%[0-9]+]]:_(s32) = G_SELECT [[TRUNC]](s1), [[TRUNC2]], [[TRUNC3]]
  ; CHECK:   [[COPY1:%[0-9]+]]:_(s32) = COPY [[SELECT]](s32)
  ; CHECK:   $w0 = COPY [[COPY1]](s32)
  ; CHECK:   [[TRUNC4:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[TRUNC5:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[SELECT1:%[0-9]+]]:_(s32) = G_SELECT [[TRUNC]](s1), [[TRUNC4]], [[TRUNC5]]
  ; CHECK:   [[COPY2:%[0-9]+]]:_(s32) = COPY [[SELECT1]](s32)
  ; CHECK:   $w0 = COPY [[COPY2]](s32)
  ; CHECK:   [[TRUNC6:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[TRUNC7:%[0-9]+]]:_(s32) = G_TRUNC [[COPY]](s64)
  ; CHECK:   [[SELECT2:%[0-9]+]]:_(s32) = G_SELECT [[TRUNC]](s1), [[TRUNC6]], [[TRUNC7]]
  ; CHECK:   [[COPY3:%[0-9]+]]:_(s32) = COPY [[SELECT2]](s32)
  ; CHECK:   $w0 = COPY [[COPY3]](s32)
  ; CHECK:   [[SELECT3:%[0-9]+]]:_(s32) = G_SELECT [[TRUNC]](s1), [[TRUNC1]], [[TRUNC1]]
  ; CHECK:   [[SELECT4:%[0-9]+]]:_(s64) = G_SELECT [[TRUNC]](s1), [[COPY]], [[COPY]]
  ; CHECK:   $x0 = COPY [[SELECT4]](s64)
  ; CHECK:   [[BITCAST:%[0-9]+]]:_(<2 x s32>) = G_BITCAST [[COPY]](s64)
  ; CHECK:   [[BITCAST1:%[0-9]+]]:_(s64) = G_BITCAST [[BITCAST]](<2 x s32>)
  ; CHECK:   $x0 = COPY [[BITCAST1]](s64)
  ; CHECK:   [[BITCAST2:%[0-9]+]]:_(s32) = G_BITCAST [[SELECT3]](s32)
  ; CHECK:   $w0 = COPY [[BITCAST2]](s32)
  ; CHECK:   [[BITCAST3:%[0-9]+]]:_(<4 x s8>) = G_BITCAST [[TRUNC1]](s32)
  ; CHECK:   [[BITCAST4:%[0-9]+]]:_(s32) = G_BITCAST [[BITCAST3]](<4 x s8>)
  ; CHECK:   $w0 = COPY [[BITCAST4]](s32)
  ; CHECK:   [[BITCAST5:%[0-9]+]]:_(<2 x s16>) = G_BITCAST [[TRUNC1]](s32)
  ; CHECK:   [[BITCAST6:%[0-9]+]]:_(s32) = G_BITCAST [[BITCAST5]](<2 x s16>)
  ; CHECK:   $w0 = COPY [[BITCAST6]](s32)
  bb.0.entry:
    successors: %bb.1(0x80000000)

    %0:_(s64) = COPY $x0
    %1:_(s1) = G_TRUNC %0(s64)
    %2:_(s8) = G_TRUNC %0(s64)
    %3:_(s16) = G_TRUNC %0(s64)
    %4:_(s32) = G_TRUNC %0(s64)
    %5:_(p0) = G_INTTOPTR %0(s64)
    %6:_(s64) = G_PTRTOINT %5(p0)
    $x0 = COPY %6(s64)
    G_BRCOND %1(s1), %bb.1

  bb.1:
    %7:_(s1) = G_SELECT %1(s1), %1, %1
    %17:_(s32) = G_ANYEXT %7(s1)
    $w0 = COPY %17(s32)
    %8:_(s8) = G_SELECT %1(s1), %2, %2
    %18:_(s32) = G_ANYEXT %8(s8)
    $w0 = COPY %18(s32)
    %9:_(s16) = G_SELECT %1(s1), %3, %3
    %19:_(s32) = G_ANYEXT %9(s16)
    $w0 = COPY %19(s32)
    %10:_(s32) = G_SELECT %1(s1), %4, %4
    %11:_(s64) = G_SELECT %1(s1), %0, %0
    $x0 = COPY %11(s64)
    %12:_(<2 x s32>) = G_BITCAST %0(s64)
    %13:_(s64) = G_BITCAST %12(<2 x s32>)
    $x0 = COPY %13(s64)
    %14:_(s32) = G_BITCAST %10(s32)
    $w0 = COPY %14(s32)
    %15:_(<4 x s8>) = G_BITCAST %4(s32)
    %20:_(s32) = G_BITCAST %15(<4 x s8>)
    $w0 = COPY %20(s32)
    %16:_(<2 x s16>) = G_BITCAST %4(s32)
    %21:_(s32) = G_BITCAST %16(<2 x s16>)
    $w0 = COPY %21(s32)

...
---
name:            bitcast128
body:             |
  bb.0:
    liveins: $x0, $x1

    ; CHECK-LABEL: name: bitcast128
    ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $x0
    ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY $x1
    ; CHECK: [[MV:%[0-9]+]]:_(s128) = G_MERGE_VALUES [[COPY]](s64), [[COPY1]](s64)
    ; CHECK: [[BITCAST:%[0-9]+]]:_(<2 x s64>) = G_BITCAST [[MV]](s128)
    ; CHECK: $q0 = COPY [[BITCAST]](<2 x s64>)
    ; CHECK: RET_ReallyLR implicit $q0
    %0:_(s64) = COPY $x0
    %1:_(s64) = COPY $x1
    %3:_(s128) = G_MERGE_VALUES %0(s64), %1(s64)
    %2:_(<2 x s64>) = G_BITCAST %3(s128)
    $q0 = COPY %2(<2 x s64>)
    RET_ReallyLR implicit $q0

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

    ; CHECK-LABEL: name: testExtOfCopyOfTrunc
    ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $x0
    ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY [[COPY]](s64)
    ; CHECK: $x0 = COPY [[COPY1]](s64)
    ; CHECK: RET_ReallyLR implicit $x0
    %0:_(s64) = COPY $x0
    %1:_(s1) = G_TRUNC %0(s64)
    %2:_(s1) = COPY %1(s1)
    %3:_(s64) = G_ANYEXT %2(s1)
    $x0 = COPY %3(s64)
    RET_ReallyLR implicit $x0

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

    ; CHECK-LABEL: name: testExtOf2CopyOfTrunc
    ; CHECK: [[COPY:%[0-9]+]]:_(s64) = COPY $x0
    ; CHECK: [[COPY1:%[0-9]+]]:_(s64) = COPY [[COPY]](s64)
    ; CHECK: $x0 = COPY [[COPY1]](s64)
    ; CHECK: RET_ReallyLR implicit $x0
    %0:_(s64) = COPY $x0
    %1:_(s1) = G_TRUNC %0(s64)
    %2:_(s1) = COPY %1(s1)
    %4:_(s1) = COPY %2(s1)
    %3:_(s64) = G_ANYEXT %4(s1)
    $x0 = COPY %3(s64)
    RET_ReallyLR implicit $x0

...
