[llvm] a65b5dd - [M68k][test] Migrate MC tests related to MOVEM instruciton
Min-Yih Hsu via llvm-commits
llvm-commits at lists.llvm.org
Tue Aug 24 13:12:08 PDT 2021
Author: Min-Yih Hsu
Date: 2021-08-24T13:09:53-07:00
New Revision: a65b5ddd3333fd492ae12e8a3eb83247174acae9
URL: https://github.com/llvm/llvm-project/commit/a65b5ddd3333fd492ae12e8a3eb83247174acae9
DIFF: https://github.com/llvm/llvm-project/commit/a65b5ddd3333fd492ae12e8a3eb83247174acae9.diff
LOG: [M68k][test] Migrate MC tests related to MOVEM instruciton
Since we're now supporting the (correct) assembly syntax for MOVEM since
47f52f989b06. The remaining MOVEM MC tests can not be migrated into
test/MC/M68k.
Added:
llvm/test/MC/M68k/Data/Classes/MxMOVEM_MR.s
llvm/test/MC/M68k/Data/Classes/MxMOVEM_RM.s
Modified:
Removed:
llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_MR.mir
llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_RM.mir
################################################################################
diff --git a/llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_MR.mir b/llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_MR.mir
deleted file mode 100644
index 6581a71313bd3..0000000000000
--- a/llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_MR.mir
+++ /dev/null
@@ -1,52 +0,0 @@
-# RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \
-# RUN: | extract-section .text \
-# RUN: | FileCheck %s -check-prefixes=MOVM32PM,MOVM32JM
-
-#------------------------------------------------------------------------------
-# MxMOVEM_MR is used to store a list of register sequentially into a memory
-# location
-#------------------------------------------------------------------------------
-
---- # ARID
-# -------------------+---+-----------+---+-----------+-----------
-# F E D C B | A | 9 8 7 | 6 | 5 4 3 | 2 1 0
-# -------------------+---+-----------+---+-----------+-----------
-# 0 1 0 0 1 | D | 0 0 1 | S | MODE | REG
-# -------------------+---+-----------+---+-----------+-----------
-# REGISTER LIST MASK
-# ---------------------------------------------------------------
-# MOVM32PM: 0 1 0 0 1 0 0 0 . 1 1 1 0 1 0 0 1
-# MOVM32PM-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1
-# MOVM32PM-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0
-# ---------------------------------------------------------------
-# MOVM32PM-SAME: 0 1 0 0 1 0 0 0 . 1 1 1 0 1 0 0 1
-# MOVM32PM-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 1 1
-# MOVM32PM-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
-name: MxMOVEM_MR_ARID
-body: |
- bb.0:
- MOVM32pm 0, $a1, 1
- MOVM32pm -1, $a1, 3
-
-...
---- # ARI
-# -------------------+---+-----------+---+-----------+-----------
-# F E D C B | A | 9 8 7 | 6 | 5 4 3 | 2 1 0
-# -------------------+---+-----------+---+-----------+-----------
-# 0 1 0 0 1 | D | 0 0 1 | S | MODE | REG
-# -------------------+---+-----------+---+-----------+-----------
-# MOVM32JM-SAME: 0 1 0 0 1 0 0 0 . 1 1 0 1 0 0 0 1
-# MOVM32JM-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1
-# ---------------------------------------------------------------
-# MOVM32JM-SAME: 0 1 0 0 1 0 0 0 . 1 1 0 1 0 0 0 1
-# MOVM32JM-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 1 1
-# ---------------------------------------------------------------
-# REGISTER LIST MASK
-# ---------------------------------------------------------------
-name: MxMOVEM_MR_ARI
-body: |
- bb.0:
- MOVM32jm $a1, 1
- MOVM32jm $a1, 3
-
-...
diff --git a/llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_RM.mir b/llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_RM.mir
deleted file mode 100644
index e29b6c9d08c84..0000000000000
--- a/llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxMOVEM_RM.mir
+++ /dev/null
@@ -1,52 +0,0 @@
-# RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \
-# RUN: | extract-section .text \
-# RUN: | FileCheck %s -check-prefixes=MOVM32MP,MOVM32MJ
-
-#------------------------------------------------------------------------------
-# MxMOVEM_RM is used to load a list of registers sequentially from a memory
-# location
-#------------------------------------------------------------------------------
-
---- # ARID
-# -------------------+---+-----------+---+-----------+-----------
-# F E D C B | A | 9 8 7 | 6 | 5 4 3 | 2 1 0
-# -------------------+---+-----------+---+-----------+-----------
-# 0 1 0 0 1 | D | 0 0 1 | S | MODE | REG
-# -------------------+---+-----------+---+-----------+-----------
-# REGISTER LIST MASK
-# ---------------------------------------------------------------
-# MOVM32MP: 0 1 0 0 1 1 0 0 . 1 1 1 0 1 0 0 1
-# MOVM32MP-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1
-# MOVM32MP-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0
-# ---------------------------------------------------------------
-# MOVM32MP-SAME: 0 1 0 0 1 1 0 0 . 1 1 1 0 1 0 0 1
-# MOVM32MP-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 1 1
-# MOVM32MP-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
-name: MxMOVEM_RM_ARID
-body: |
- bb.0:
- MOVM32mp 1, 0, $a1
- MOVM32mp 3, -1, $a1
-
-...
---- # ARI
-# -------------------+---+-----------+---+-----------+-----------
-# F E D C B | A | 9 8 7 | 6 | 5 4 3 | 2 1 0
-# -------------------+---+-----------+---+-----------+-----------
-# 0 1 0 0 1 | D | 0 0 1 | S | MODE | REG
-# -------------------+---+-----------+---+-----------+-----------
-# MOVM32MJ-SAME: 0 1 0 0 1 1 0 0 . 1 1 0 1 0 0 0 1
-# MOVM32MJ-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 1
-# ---------------------------------------------------------------
-# MOVM32MJ-SAME: 0 1 0 0 1 1 0 0 . 1 1 0 1 0 0 0 1
-# MOVM32MJ-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 1 1
-# ---------------------------------------------------------------
-# REGISTER LIST MASK
-# ---------------------------------------------------------------
-name: MxMOVEM_RM_ARI
-body: |
- bb.0:
- MOVM32mj 1, $a1
- MOVM32mj 3, $a1
-
-...
diff --git a/llvm/test/MC/M68k/Data/Classes/MxMOVEM_MR.s b/llvm/test/MC/M68k/Data/Classes/MxMOVEM_MR.s
new file mode 100644
index 0000000000000..dd27728007952
--- /dev/null
+++ b/llvm/test/MC/M68k/Data/Classes/MxMOVEM_MR.s
@@ -0,0 +1,16 @@
+; RUN: llvm-mc -triple=m68k -show-encoding %s | FileCheck %s
+
+; CHECK: movem.l %d0, (0,%a1)
+; CHECK-SAME: encoding: [0x48,0xe9,0x00,0x01,0x00,0x00]
+movem.l %d0, (0,%a1)
+; CHECK: movem.l %d0-%d1, (-1,%a1)
+; CHECK-SAME: encoding: [0x48,0xe9,0x00,0x03,0xff,0xff]
+movem.l %d0-%d1, (-1,%a1)
+
+; CHECK: movem.l %d0, (%a1)
+; CHECK-SAME: encoding: [0x48,0xd1,0x00,0x01]
+movem.l %d0, (%a1)
+; CHECK: movem.l %d0-%d1, (%a1)
+; CHECK-SAME: encoding: [0x48,0xd1,0x00,0x03]
+movem.l %d0-%d1, (%a1)
+
diff --git a/llvm/test/MC/M68k/Data/Classes/MxMOVEM_RM.s b/llvm/test/MC/M68k/Data/Classes/MxMOVEM_RM.s
new file mode 100644
index 0000000000000..cda3ac2b51a66
--- /dev/null
+++ b/llvm/test/MC/M68k/Data/Classes/MxMOVEM_RM.s
@@ -0,0 +1,16 @@
+; RUN: llvm-mc -triple=m68k -show-encoding %s | FileCheck %s
+
+; CHECK: movem.l (0,%a1), %d0
+; CHECK-SAME: encoding: [0x4c,0xe9,0x00,0x01,0x00,0x00]
+movem.l (0,%a1), %d0
+; CHECK: movem.l (-1,%a1), %d0-%d1
+; CHECK-SAME: encoding: [0x4c,0xe9,0x00,0x03,0xff,0xff]
+movem.l (-1,%a1), %d0-%d1
+
+; CHECK: movem.l (%a1), %d0
+; CHECK-SAME: encoding: [0x4c,0xd1,0x00,0x01]
+movem.l (%a1), %d0
+; CHECK: movem.l (%a1), %d0-%d1
+; CHECK-SAME: encoding: [0x4c,0xd1,0x00,0x03]
+movem.l (%a1), %d0-%d1
+
More information about the llvm-commits
mailing list