1# RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \ 2# RUN: | extract-section .text \ 3# RUN: | FileCheck %s -check-prefixes=MOVM32MP,MOVM32MJ 4 5#------------------------------------------------------------------------------ 6# MxMOVEM_RM is used to load a list of registers sequentially from 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# MOVM32MP: 0 1 0 0 1 1 0 0 . 1 1 1 0 1 0 0 1 19# MOVM32MP-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1 20# MOVM32MP-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0 21# --------------------------------------------------------------- 22# MOVM32MP-SAME: 0 1 0 0 1 1 0 0 . 1 1 1 0 1 0 0 1 23# MOVM32MP-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 1 1 24# MOVM32MP-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1 25name: MxMOVEM_RM_ARID 26body: | 27 bb.0: 28 MOVM32mp 1, 0, $a1 29 MOVM32mp 3, -1, $a1 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# MOVM32MJ-SAME: 0 1 0 0 1 1 0 0 . 1 1 0 1 0 0 0 1 39# MOVM32MJ-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1 40# --------------------------------------------------------------- 41# MOVM32MJ-SAME: 0 1 0 0 1 1 0 0 . 1 1 0 1 0 0 0 1 42# MOVM32MJ-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_RM_ARI 47body: | 48 bb.0: 49 MOVM32mj 1, $a1 50 MOVM32mj 3, $a1 51 52... 53