1 # RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \
2 # RUN: | extract-section .text \
3 # RUN: | FileCheck %s -check-prefixes=MOV8FD,MOV32FR,MOV8PD,MOV32PR,MOV8JD,MOV32JR
5 #------------------------------------------------------------------------------
6 # MxMove_MR is used for moving data from register to memory
7 #------------------------------------------------------------------------------
10 # ---------------------------+-----------+-----------+-----------
11 # F E | D C | B A 9 | 8 7 6 | 5 4 3 | 2 1 0
12 # -------+-------+-----------+-----------+-----------+-----------
13 # | | DESTINATION | SOURCE
14 # 0 0 | SIZE | REG | MODE | MODE | REG
15 # -------+-------+-----------+-----------+-----------+-----------
16 # MOV8FD: 0 0 0 1 0 0 0 1 . 1 0 0 0 0 0 0 0
17 # MOV8FD-SAME: 0 0 0 1 1 0 0 0 . 0 0 0 0 0 0 0 0
18 # ---------------------------------------------------------------
19 # MOV8FD-SAME: 0 0 0 1 0 0 0 1 . 1 0 0 0 0 0 0 0
20 # MOV8FD-SAME: 0 0 0 1 1 0 0 0 . 1 1 1 1 1 1 1 1
21 # ---------------------------------------------------------------
22 # MOV32FR-SAME: 0 0 1 0 0 0 1 1 . 1 0 0 0 0 0 0 0
23 # MOV32FR-SAME: 0 0 0 1 1 0 0 0 . 0 0 0 0 0 0 0 0
24 # ---------------------------------------------------------------
25 # MOV32FR-SAME: 0 0 1 0 0 1 0 1 . 1 0 0 0 0 0 0 1
26 # MOV32FR-SAME: 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0
27 # ---+-----------+---+-------+---+-------------------------------
28 # BRIEF DA | REG | L | SCALE | 0 | DISPLACEMENT
29 # ---+-----------+---+-------+---+-------------------------------
33 MOV8fd 0, $a0, $d1, $bd0, implicit-def $ccr
34 MOV8fd -1, $a0, $d1, $bd0, implicit-def $ccr
35 MOV32fr 0, $a1, $d1, $d0, implicit-def $ccr
36 MOV32fr 0, $a2, $a2, $d1, implicit-def $ccr
40 # ---------------------------+-----------+-----------+-----------
41 # F E | D C | B A 9 | 8 7 6 | 5 4 3 | 2 1 0
42 # -------+-------+-----------+-----------+-----------+-----------
43 # | | DESTINATION | SOURCE
44 # 0 0 | SIZE | REG | MODE | MODE | REG
45 # -------+-------+-----------+-----------+-----------+-----------
46 # MOV8PD-SAME: 0 0 0 1 0 0 0 1 . 0 1 0 0 0 0 0 0
47 # MOV8PD-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0
48 # ---------------------------------------------------------------
49 # MOV32PR-SAME: 0 0 1 0 0 0 1 1 . 0 1 0 0 0 0 0 0
50 # MOV32PR-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
51 # ---------------------------------------------------------------
52 # MOV32PR-SAME: 0 0 1 0 0 0 1 1 . 0 1 0 0 1 0 0 0
53 # MOV32PR-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
57 MOV8pd 0, $a0, $bd0, implicit-def $ccr
58 MOV32pr -1, $a1, $d0, implicit-def $ccr
59 MOV32pr -1, $a1, $a0, implicit-def $ccr
63 # ---------------------------+-----------+-----------+-----------
64 # F E | D C | B A 9 | 8 7 6 | 5 4 3 | 2 1 0
65 # -------+-------+-----------+-----------+-----------+-----------
66 # | | DESTINATION | SOURCE
67 # 0 0 | SIZE | REG | MODE | MODE | REG
68 # -------+-------+-----------+-----------+-----------+-----------
69 # MOV8JD-SAME: 0 0 0 1 0 0 0 0 . 1 0 0 0 0 0 0 0
70 # ---------------------------------------------------------------
71 # MOV32JR-SAME: 0 0 1 0 0 0 1 0 . 1 0 0 0 0 0 1 1
72 # ---------------------------------------------------------------
73 # MOV32JR-SAME: 0 0 1 0 0 0 1 0 . 1 0 0 0 1 1 0 0
77 MOV8jd $a0, $bd0, implicit-def $ccr
78 MOV32jr $a1, $d3, implicit-def $ccr
79 MOV32jr $a1, $a4, implicit-def $ccr