89 lines
4.3 KiB
YAML
89 lines
4.3 KiB
YAML
# RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \
|
|
# RUN: | extract-section .text \
|
|
# RUN: | FileCheck %s -check-prefixes=CALLK,CALLQ,CALLB,CALLJ
|
|
|
|
#------------------------------------------------------------------------------
|
|
# MxCALL pushes address of the next instruction and jumps to the location
|
|
#------------------------------------------------------------------------------
|
|
|
|
--- # MxCALL_PCI
|
|
# ---------------------------------------+-----------+-----------
|
|
# F E D C B A 9 8 7 6 | 5 4 3 | 2 1 0
|
|
# ---------------------------------------+-----------+-----------
|
|
# 0 1 0 0 1 1 1 0 1 0 | MODE | REG
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLK: 0 1 0 0 1 1 1 0 . 1 0 1 1 1 0 1 1
|
|
# CALLK-SAME: 1 0 0 0 1 0 0 0 . 0 0 0 0 0 0 0 0
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLK-SAME: 0 1 0 0 1 1 1 0 . 1 0 1 1 1 0 1 1
|
|
# CALLK-SAME: 1 0 0 0 1 0 0 0 . 1 1 1 1 1 1 1 1
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLK-SAME: 0 1 0 0 1 1 1 0 . 1 0 1 1 1 0 1 1
|
|
# CALLK-SAME: 1 0 0 0 1 0 0 0 . 0 0 1 0 1 0 1 0
|
|
# ---+-----------+---+-------+---+-------------------------------
|
|
# BRIEF DA | REG | L | SCALE | 0 | DISPLACEMENT
|
|
# ---+-----------+---+-------+---+-------------------------------
|
|
name: MxCALL_PCI
|
|
body: |
|
|
bb.0:
|
|
CALLk 0, $a0
|
|
CALLk -1, $a0
|
|
CALLk 42, $a0
|
|
|
|
...
|
|
--- # MxCALL_PCD
|
|
# ---------------------------------------+-----------+-----------
|
|
# F E D C B A 9 8 7 6 | 5 4 3 | 2 1 0
|
|
# ---------------------------------------+-----------+-----------
|
|
# 0 1 0 0 1 1 1 0 1 0 | MODE | REG
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLQ-SAME: 0 1 0 0 1 1 1 0 . 1 0 1 1 1 0 1 0
|
|
# CALLQ-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLQ-SAME: 0 1 0 0 1 1 1 0 . 1 0 1 1 1 0 1 0
|
|
# CALLQ-SAME: 0 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
|
|
name: MxCALL_PCD
|
|
body: |
|
|
bb.0:
|
|
CALLq 0
|
|
CALLq 32767
|
|
|
|
...
|
|
--- # MxCALL_ABS
|
|
# ---------------------------------------+-----------+-----------
|
|
# F E D C B A 9 8 7 6 | 5 4 3 | 2 1 0
|
|
# ---------------------------------------+-----------+-----------
|
|
# 0 1 0 0 1 1 1 0 1 0 | MODE | REG
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLB-SAME: 0 1 0 0 1 1 1 0 . 1 0 1 1 1 0 0 1
|
|
# CALLB-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0
|
|
# CALLB-SAME: 0 0 0 0 0 0 0 0 . 0 0 1 0 1 0 1 0
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLB-SAME: 0 1 0 0 1 1 1 0 . 1 0 1 1 1 0 0 1
|
|
# CALLB-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
|
|
# CALLB-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
|
|
name: MxCALL_ABS
|
|
body: |
|
|
bb.0:
|
|
CALLb 42
|
|
CALLb -1
|
|
|
|
...
|
|
--- # MxCALL_ARI
|
|
# ---------------------------------------+-----------+-----------
|
|
# F E D C B A 9 8 7 6 | 5 4 3 | 2 1 0
|
|
# ---------------------------------------+-----------+-----------
|
|
# 0 1 0 0 1 1 1 0 1 0 | MODE | REG
|
|
# ---------------------------------------+-----------+-----------
|
|
# CALLJ-SAME: 0 1 0 0 1 1 1 0 . 1 0 0 1 0 0 0 0
|
|
# CALLJ-SAME: 0 1 0 0 1 1 1 0 . 1 0 0 1 0 0 0 1
|
|
# CALLJ-SAME: 0 1 0 0 1 1 1 0 . 1 0 0 1 0 0 1 0
|
|
name: MxCALL_ARI
|
|
body: |
|
|
bb.0:
|
|
CALLj $a0
|
|
CALLj $a1
|
|
CALLj $a2
|
|
|
|
...
|