xref: /llvm-project/llvm/test/CodeGen/ARM/pr60908.mir (revision 1f5e9a3502119f93cfc3a7cf67f43300f759997e)
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 2
2# RUN: llc -mtriple=armv7 -run-pass=machine-cp %s -o - | FileCheck %s
3
4# Positive test: $d15 has sub-register $s30, which should be propagated.
5---
6name:            test_d15
7tracksRegLiveness: true
8liveins:
9  - { reg: '$d15' }
10body:             |
11  bb.0.entry:
12    liveins: $d15
13
14    ; CHECK-LABEL: name: test_d15
15    ; CHECK: liveins: $d15
16    ; CHECK-NEXT: {{  $}}
17    ; CHECK-NEXT: $s0 = COPY $s30
18    ; CHECK-NEXT: BX_RET 14 /* CC::al */, $noreg, implicit killed $s0
19    renamable $d14 = COPY killed $d15
20    $s0 = COPY killed renamable $s28
21    BX_RET 14 /* CC::al */, $noreg, implicit killed $s0
22
23...
24
25# Negative test: $d18 does not have sub-registers.
26---
27name:            test_d18
28tracksRegLiveness: true
29liveins:
30  - { reg: '$d18' }
31body:             |
32  bb.0.entry:
33    liveins: $d18
34
35    ; CHECK-LABEL: name: test_d18
36    ; CHECK: liveins: $d18
37    ; CHECK-NEXT: {{  $}}
38    ; CHECK-NEXT: renamable $d14 = COPY killed $d18
39    ; CHECK-NEXT: $s0 = COPY killed renamable $s28
40    ; CHECK-NEXT: BX_RET 14 /* CC::al */, $noreg, implicit killed $s0
41    renamable $d14 = COPY killed $d18
42    $s0 = COPY killed renamable $s28
43    BX_RET 14 /* CC::al */, $noreg, implicit killed $s0
44
45...
46