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