xref: /llvm-project/llvm/test/CodeGen/RISCV/cm_mvas_mvsa.mir (revision 775bd60363353b78657967c80f0f109cdb65cf8f)
1# NOTE: Assertions have been autogenerated by utils/update_mir_test_checks.py UTC_ARGS: --version 4
2# RUN: llc -mtriple=riscv32 -verify-machineinstrs -run-pass=riscv-move-merge -simplify-mir -o - %s | FileCheck -check-prefixes=CHECK32I %s
3# RUN: llc -mtriple=riscv32 -mattr=+zcmp -verify-machineinstrs -run-pass=riscv-move-merge -simplify-mir -o - %s | FileCheck -check-prefixes=CHECK32ZCMP %s
4# RUN: llc -mtriple=riscv64 -verify-machineinstrs -run-pass=riscv-move-merge -simplify-mir -o - %s | FileCheck -check-prefixes=CHECK64I %s
5# RUN: llc -mtriple=riscv64 -mattr=+zcmp -verify-machineinstrs -run-pass=riscv-move-merge -simplify-mir -o - %s | FileCheck -check-prefixes=CHECK64ZCMP %s
6---
7name: zcmp_mv
8tracksRegLiveness: true
9body: |
10  bb.0:
11    liveins: $x11, $x10
12    ; CHECK32I-LABEL: name: zcmp_mv
13    ; CHECK32I: liveins: $x11, $x10
14    ; CHECK32I-NEXT: {{  $}}
15    ; CHECK32I-NEXT: $x8 = ADDI $x11, 0
16    ; CHECK32I-NEXT: $x9 = ADDI $x10, 0
17    ; CHECK32I-NEXT: $x10 = ADDI killed $x9, 0
18    ; CHECK32I-NEXT: $x11 = ADDI $x8, 0
19    ; CHECK32I-NEXT: PseudoRET
20    ;
21    ; CHECK32ZCMP-LABEL: name: zcmp_mv
22    ; CHECK32ZCMP: liveins: $x11, $x10
23    ; CHECK32ZCMP-NEXT: {{  $}}
24    ; CHECK32ZCMP-NEXT: $x9, $x8 = CM_MVSA01 implicit $x10, implicit $x11
25    ; CHECK32ZCMP-NEXT: CM_MVA01S killed $x9, $x8, implicit-def $x10, implicit-def $x11
26    ; CHECK32ZCMP-NEXT: PseudoRET
27    ;
28    ; CHECK64I-LABEL: name: zcmp_mv
29    ; CHECK64I: liveins: $x11, $x10
30    ; CHECK64I-NEXT: {{  $}}
31    ; CHECK64I-NEXT: $x8 = ADDI $x11, 0
32    ; CHECK64I-NEXT: $x9 = ADDI $x10, 0
33    ; CHECK64I-NEXT: $x10 = ADDI killed $x9, 0
34    ; CHECK64I-NEXT: $x11 = ADDI $x8, 0
35    ; CHECK64I-NEXT: PseudoRET
36    ;
37    ; CHECK64ZCMP-LABEL: name: zcmp_mv
38    ; CHECK64ZCMP: liveins: $x11, $x10
39    ; CHECK64ZCMP-NEXT: {{  $}}
40    ; CHECK64ZCMP-NEXT: $x9, $x8 = CM_MVSA01 implicit $x10, implicit $x11
41    ; CHECK64ZCMP-NEXT: CM_MVA01S killed $x9, $x8, implicit-def $x10, implicit-def $x11
42    ; CHECK64ZCMP-NEXT: PseudoRET
43    $x8 = ADDI $x11, 0
44    $x9 = ADDI $x10, 0
45    $x10 = ADDI killed $x9, 0
46    $x11 = ADDI $x8, 0
47    PseudoRET
48...
49