# RUN: llc -mtriple arm-- -run-pass=legalizer %s -o - | FileCheck %s
--- |
  define void @test_load_from_stack() { ret void }
  define void @test_load_store_64() #0 { ret void }

  define void @test_constants_s64() { ret void }

  define void @test_select_s32() { ret void }
  define void @test_select_ptr() { ret void }

  define void @test_brcond() { ret void }

  define void @test_phi_s32() { ret void }
  define void @test_phi_p0() { ret void }
  define void @test_phi_s64() #0 { ret void }
  define void @test_phi_s8() { ret void }

  @a_global = global i32 42
  define void @test_global_variable() { ret void }

  attributes #0 = { "target-features"="+vfp2" }
...
---
name:            test_load_from_stack
# CHECK-LABEL: name: test_load_from_stack
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
fixedStack:
  - { id: 0, offset: 0, size: 4, alignment: 4, isImmutable: true, isAliased: false }
  - { id: 1, offset: 4, size: 4, alignment: 4, isImmutable: true, isAliased: false }
  - { id: 2, offset: 8, size: 4, alignment: 4, isImmutable: true, isAliased: false }
  # CHECK: id: [[FRAME_INDEX:[0-9]+]], type: default, offset: 8
body:             |
  bb.0:
    liveins: $r0, $r1, $r2, $r3

    ; This is legal, so we should find it unchanged in the output
    ; CHECK: [[FIVREG:%[0-9]+]]:_(p0) = G_FRAME_INDEX %fixed-stack.[[FRAME_INDEX]]
    ; CHECK: {{%[0-9]+}}:_(s32) = G_LOAD [[FIVREG]](p0) :: (load 4)
    %0(p0) = G_FRAME_INDEX %fixed-stack.2
    %1(s32) = G_LOAD %0(p0) :: (load 4)
    $r0 = COPY %1(s32)
    BX_RET 14, $noreg, implicit $r0
...
---
name:            test_load_store_64
# CHECK-LABEL: name: test_load_store_64
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
  - { id: 4, class: _ }
  - { id: 5, class: _ }
  - { id: 6, class: _ }
body:             |
  bb.0:
    liveins: $r0

    ; These are legal, so we should find them unchanged in the output
    ; CHECK-DAG: G_STORE {{%[0-9]+}}(s64), %0(p0)
    ; CHECK-DAG: {{%[0-9]+}}:_(s64) = G_LOAD %0(p0)
    %0(p0) = COPY $r0
    %1(s64) = G_LOAD %0(p0) :: (load 8)
    G_STORE %1(s64), %0(p0) :: (store 8)
    BX_RET 14, $noreg
...
---
name:            test_constants_s64
# CHECK-LABEL: name: test_constants_s64
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
body:             |
  bb.0:
    liveins: $r0

    %0(p0) = COPY $r0

    %1(s64) = G_CONSTANT i64 17179869200 ; = 4 * 2 ^ 32 + 16
    %2(s32), %3(s32) = G_UNMERGE_VALUES %1(s64)
    G_STORE %2(s32), %0(p0) :: (store 4)
    G_STORE %3(s32), %0(p0) :: (store 4)
    ; CHECK-DAG: {{%[0-9]+}}:_(s32) = G_CONSTANT i32 4
    ; CHECK-DAG: {{%[0-9]+}}:_(s32) = G_CONSTANT i32 16
    ; CHECK-NOT: G_CONSTANT i64

    BX_RET 14, $noreg
...
---
name:            test_select_s32
# CHECK-LABEL: name: test_select_s32
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
body:             |
  bb.0:
    liveins: $r0, $r1, $r2

    %0(s32) = COPY $r0
    %1(s32) = COPY $r1
    %2(s1) = G_CONSTANT i1 1
    %3(s32) = G_SELECT %2(s1), %0, %1
    ; G_SELECT with s32 is legal, so we should find it unchanged in the output
    ; CHECK: {{%[0-9]+}}:_(s32) = G_SELECT {{%[0-9]+}}(s1), {{%[0-9]+}}, {{%[0-9]+}}
    $r0 = COPY %3(s32)
    BX_RET 14, $noreg, implicit $r0
...
---
name:            test_select_ptr
# CHECK-LABEL: name: test_select_ptr
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
body:             |
  bb.0:
    liveins: $r0, $r1, $r2

    %0(p0) = COPY $r0
    %1(p0) = COPY $r1
    %2(s1) = G_CONSTANT i1 0
    %3(p0) = G_SELECT %2(s1), %0, %1
    ; G_SELECT with p0 is legal, so we should find it unchanged in the output
    ; CHECK: {{%[0-9]+}}:_(p0) = G_SELECT {{%[0-9]+}}(s1), {{%[0-9]+}}, {{%[0-9]+}}
    $r0 = COPY %3(p0)
    BX_RET 14, $noreg, implicit $r0
...
---
name:            test_brcond
# CHECK-LABEL: name: test_brcond
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
body:             |
  bb.0:
    successors: %bb.1(0x40000000), %bb.2(0x40000000)
    liveins: $r0, $r1

    %0(s32) = COPY $r0
    %1(s32) = COPY $r1
    %2(s1) = G_ICMP intpred(sgt), %0(s32), %1
    G_BRCOND %2(s1), %bb.1
    ; G_BRCOND with s1 is legal, so we should find it unchanged in the output
    ; CHECK: G_BRCOND {{%[0-9]+}}(s1), %bb.1
    G_BR %bb.2

  bb.1:
    $r0 = COPY %1(s32)
    BX_RET 14, $noreg, implicit $r0

  bb.2:
    $r0 = COPY %0(s32)
    BX_RET 14, $noreg, implicit $r0

...
---
name:            test_phi_s32
# CHECK-LABEL: name: test_phi_s32
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
  - { id: 4, class: _ }
body:             |
  bb.0:
    liveins: $r0, $r1, $r2

    %0(s32) = COPY $r0
    %1(s1) = G_TRUNC %0(s32)

    %2(s32) = COPY $r1
    %3(s32) = COPY $r2

    G_BRCOND %1(s1), %bb.1
    G_BR %bb.2

  bb.1:
    G_BR %bb.2

  bb.2:
    %4(s32) = G_PHI %2(s32), %bb.0, %3(s32), %bb.1
    ; G_PHI with s32 is legal, so we should find it unchanged in the output
    ; CHECK: G_PHI {{%[0-9]+}}(s32), %bb.0, {{%[0-9]+}}(s32), %bb.1
    $r0 = COPY %4(s32)
    BX_RET 14, $noreg, implicit $r0
...
---
name:            test_phi_p0
# CHECK-LABEL: name: test_phi_p0
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
  - { id: 4, class: _ }
body:             |
  bb.0:
    liveins: $r0, $r1, $r2

    %0(s32) = COPY $r0
    %1(s1) = G_TRUNC %0(s32)

    %2(p0) = COPY $r1
    %3(p0) = COPY $r2

    G_BRCOND %1(s1), %bb.1
    G_BR %bb.2

  bb.1:
    G_BR %bb.2

  bb.2:
    %4(p0) = G_PHI %2(p0), %bb.0, %3(p0), %bb.1
    ; G_PHI with p0 is legal, so we should find it unchanged in the output
    ; CHECK: G_PHI {{%[0-9]+}}(p0), %bb.0, {{%[0-9]+}}(p0), %bb.1
    $r0 = COPY %4(p0)
    BX_RET 14, $noreg, implicit $r0
...
---
name:            test_phi_s64
# CHECK-LABEL: name: test_phi_s64
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
  - { id: 4, class: _ }
body:             |
  bb.0:
    liveins: $r0, $d0, $d1

    %0(s32) = COPY $r0
    %1(s1) = G_TRUNC %0(s32)

    %2(s64) = COPY $d0
    %3(s64) = COPY $d1

    G_BRCOND %1(s1), %bb.1
    G_BR %bb.2

  bb.1:
    G_BR %bb.2

  bb.2:
    %4(s64) = G_PHI %2(s64), %bb.0, %3(s64), %bb.1
    ; G_PHI with s64 is legal when we have floating point support, so we should
    ; find it unchanged in the output
    ; CHECK: G_PHI {{%[0-9]+}}(s64), %bb.0, {{%[0-9]+}}(s64), %bb.1
    $d0 = COPY %4(s64)
    BX_RET 14, $noreg, implicit $d0
...
---
name:            test_phi_s8
# CHECK-LABEL: name: test_phi_s8
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
  - { id: 2, class: _ }
  - { id: 3, class: _ }
  - { id: 4, class: _ }
  - { id: 5, class: _ }
  - { id: 6, class: _ }
  - { id: 7, class: _ }
body:             |
  bb.0:
    liveins: $r0, $r1, $r2

    %0(s32) = COPY $r0
    %1(s1) = G_TRUNC %0(s32)

    %2(s32) = COPY $r1
    %3(s8) = G_TRUNC %2(s32)
    ; CHECK: [[R1:%[0-9]+]]:_(s32) = COPY $r1

    %4(s32) = COPY $r2
    %5(s8) = G_TRUNC %4(s32)
    ; CHECK: [[R2:%[0-9]+]]:_(s32) = COPY $r2

    ; CHECK: [[V1:%[0-9]+]]:_(s32) = COPY [[R1]]

    G_BRCOND %1(s1), %bb.1
    G_BR %bb.2

  bb.1:
    ; CHECK: [[V2:%[0-9]+]]:_(s32) = COPY [[R2]]
    G_BR %bb.2

  bb.2:
    %6(s8) = G_PHI %3(s8), %bb.0, %5(s8), %bb.1
    ; G_PHI with s8 should widen, and all the truncs and exts should be combined
    ; away into a bunch of redundant copies
    ; CHECK: [[V:%[0-9]+]]:_(s32) = G_PHI [[V1]](s32), %bb.0, [[V2]](s32), %bb.1

    %7(s32) = G_ANYEXT %6(s8)
    $r0 = COPY %7(s32)
    ; CHECK: [[R:%[0-9]+]]:_(s32) = COPY [[V]]
    ; CHECK: $r0 = COPY [[R]](s32)
    BX_RET 14, $noreg, implicit $r0
...
---
name:            test_global_variable
# CHECK-LABEL: name: test_global_variable
legalized:       false
# CHECK: legalized: true
regBankSelected: false
selected:        false
tracksRegLiveness: true
registers:
  - { id: 0, class: _ }
  - { id: 1, class: _ }
body:             |
  bb.0:
    liveins: $r0

    %0(s32) = COPY $r0
    %1(p0) = G_GLOBAL_VALUE @a_global
    ; G_GLOBAL_VALUE is legal, so we should find it unchanged in the output
    ; CHECK: {{%[0-9]+}}:_(p0) = G_GLOBAL_VALUE @a_global
    $r0 = COPY %1(p0)
    BX_RET 14, $noreg, implicit $r0

...
