| # NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py |
| # RUN: llc -o - %s -mtriple=riscv32 -simplify-mir \ |
| # RUN: -run-pass=machine-cp | FileCheck --check-prefix=RV32 %s |
| # RUN: llc -o - %s -mtriple=riscv64 -simplify-mir \ |
| # RUN: -run-pass=machine-cp | FileCheck --check-prefix=RV64 %s |
| |
| --- | |
| define void @foo() { |
| entry: |
| ret void |
| } |
| ... |
| --- |
| name: foo |
| body: | |
| bb.0.entry: |
| liveins: $v28_v29_v30, $v8_v9, $v1 |
| ; RV32-LABEL: name: foo |
| ; RV32: liveins: $v28_v29_v30, $v8_v9, $v1 |
| ; RV32-NEXT: {{ $}} |
| ; RV32-NEXT: renamable $v4_v5_v6_v7_v8_v9_v10_v11 = COPY killed renamable $v0_v1_v2_v3_v4_v5_v6_v7 |
| ; RV32-NEXT: renamable $v28 = COPY renamable $v8, implicit killed $v28_v29_v30, implicit-def $v28_v29_v30 |
| ; RV32-NEXT: PseudoRET implicit $v28 |
| ; RV64-LABEL: name: foo |
| ; RV64: liveins: $v28_v29_v30, $v8_v9, $v1 |
| ; RV64-NEXT: {{ $}} |
| ; RV64-NEXT: renamable $v4_v5_v6_v7_v8_v9_v10_v11 = COPY killed renamable $v0_v1_v2_v3_v4_v5_v6_v7 |
| ; RV64-NEXT: renamable $v28 = COPY renamable $v8, implicit killed $v28_v29_v30, implicit-def $v28_v29_v30 |
| ; RV64-NEXT: PseudoRET implicit $v28 |
| renamable $v8 = COPY renamable $v1, implicit killed $v8_v9, implicit-def $v8_v9 |
| renamable $v4_v5_v6_v7_v8_v9_v10_v11 = COPY killed renamable $v0_v1_v2_v3_v4_v5_v6_v7 |
| renamable $v28 = COPY renamable $v8, implicit killed $v28_v29_v30, implicit-def $v28_v29_v30 |
| PseudoRET implicit $v28 |
| ... |