1# RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \
2# RUN:   | extract-section .text \
3# RUN:   | FileCheck %s -check-prefixes=MOVM32PM,MOVM32JM
4
5#------------------------------------------------------------------------------
6# MxMOVEM_MR is used to store a list of register sequentially into a memory
7# location
8#------------------------------------------------------------------------------
9
10--- # ARID
11#               -------------------+---+-----------+---+-----------+-----------
12#                F   E   D   C   B | A | 9   8   7 | 6 | 5   4   3 | 2   1   0
13#               -------------------+---+-----------+---+-----------+-----------
14#                0   1   0   0   1 | D | 0   0   1 | S |    MODE   |    REG
15#               -------------------+---+-----------+---+-----------+-----------
16#                                      REGISTER LIST MASK
17#               ---------------------------------------------------------------
18# MOVM32PM:      0   1   0   0   1   0   0   0 . 1   1   1   0   1   0   0   1
19# MOVM32PM-SAME: 0   0   0   0   0   0   0   0 . 0   0   0   0   0   0   0   1
20# MOVM32PM-SAME: 0   0   0   0   0   0   0   0 . 0   0   0   0   0   0   0   0
21#               ---------------------------------------------------------------
22# MOVM32PM-SAME: 0   1   0   0   1   0   0   0 . 1   1   1   0   1   0   0   1
23# MOVM32PM-SAME: 0   0   0   0   0   0   0   0 . 0   0   0   0   0   0   1   1
24# MOVM32PM-SAME: 1   1   1   1   1   1   1   1 . 1   1   1   1   1   1   1   1
25name: MxMOVEM_MR_ARID
26body: |
27  bb.0:
28    MOVM32pm  0, $a1, 1
29    MOVM32pm -1, $a1, 3
30
31...
32--- # ARI
33#               -------------------+---+-----------+---+-----------+-----------
34#                F   E   D   C   B | A | 9   8   7 | 6 | 5   4   3 | 2   1   0
35#               -------------------+---+-----------+---+-----------+-----------
36#                0   1   0   0   1 | D | 0   0   1 | S |    MODE   |    REG
37#               -------------------+---+-----------+---+-----------+-----------
38# MOVM32JM-SAME: 0   1   0   0   1   0   0   0 . 1   1   0   1   0   0   0   1
39# MOVM32JM-SAME: 0   0   0   0   0   0   0   0 . 0   0   0   0   0   0   0   1
40#               ---------------------------------------------------------------
41# MOVM32JM-SAME: 0   1   0   0   1   0   0   0 . 1   1   0   1   0   0   0   1
42# MOVM32JM-SAME: 0   0   0   0   0   0   0   0 . 0   0   0   0   0   0   1   1
43#               ---------------------------------------------------------------
44#                                      REGISTER LIST MASK
45#               ---------------------------------------------------------------
46name: MxMOVEM_MR_ARI
47body: |
48  bb.0:
49    MOVM32jm $a1, 1
50    MOVM32jm $a1, 3
51
52...
53