llvm-project/llvm/test/CodeGen/M68k/Encoding/Data/Classes/MxLEA.mir

66 lines
3.4 KiB
YAML

# RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \
# RUN: | extract-section .text \
# RUN: | FileCheck %s -check-prefixes=LEA32Q,LEA32F,LEA32P
#------------------------------------------------------------------------------
# MxLEA is used to calculate effective address and load it into a address reg
#------------------------------------------------------------------------------
--- # PCD
# ---------------------------------------------------------------
# F E D C | B A 9 | 8 7 6 | 5 4 3 | 2 1 0
# ---------------------------------------------------------------
# 0 1 0 0 | DST REG | 1 1 1 | MODE | REG
# ---------------------------------------------------------------
# LEA32Q: 0 1 0 0 0 0 0 1 . 1 1 1 1 1 0 1 0
# LEA32Q-SAME: 0 0 0 0 0 0 0 0 . 0 0 0 0 0 0 0 0
# ---------------------------------------------------------------
# LEA32Q-SAME: 0 1 0 0 0 0 0 1 . 1 1 1 1 1 0 1 0
# LEA32Q-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
name: MxLEA_PCD
body: |
bb.0:
$a0 = LEA32q 0, implicit-def $ccr
$a0 = LEA32q -1, implicit-def $ccr
...
--- # ARII
# ---------------------------------------------------------------
# F E D C | B A 9 | 8 7 6 | 5 4 3 | 2 1 0
# ---------------------------------------------------------------
# 0 1 0 0 | DST REG | 1 1 1 | MODE | REG
# ---------------------------------------------------------------
# LEA32F-SAME: 0 1 0 0 0 0 0 1 . 1 1 1 1 0 0 0 1
# LEA32F-SAME: 0 0 0 1 1 0 0 0 . 0 0 0 0 0 0 0 0
# ---------------------------------------------------------------
# LEA32F-SAME: 0 1 0 0 0 0 1 1 . 1 1 1 1 0 0 1 0
# LEA32F-SAME: 1 0 1 0 1 0 0 0 . 0 0 0 0 0 0 0 0
# ---+-----------+---+-------+---+-------------------------------
# BRIEF DA | REG | L | SCALE | 0 | DISPLACEMENT
# ---+-----------+---+-------+---+-------------------------------
name: MxLEA_ARII
body: |
bb.0:
$a0 = LEA32f 0, $a1, $d1, implicit-def $ccr
$a1 = LEA32f 0, $a2, $a2, implicit-def $ccr
...
--- # ARID
# ---------------------------------------------------------------
# F E D C | B A 9 | 8 7 6 | 5 4 3 | 2 1 0
# ---------------------------------------------------------------
# 0 1 0 0 | DST REG | 1 1 1 | MODE | REG
# ---------------------------------------------------------------
# LEA32P-SAME: 0 1 0 0 0 0 0 1 . 1 1 1 0 1 0 0 1
# LEA32P-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
# ---------------------------------------------------------------
# LEA32P-SAME: 0 1 0 0 0 0 0 1 . 1 1 1 0 1 0 0 1
# LEA32P-SAME: 1 1 1 1 1 1 1 1 . 1 1 1 1 1 1 1 1
name: MxLEA_ARID
body: |
bb.0:
$a0 = LEA32p -1, $a1, implicit-def $ccr
$a0 = LEA32p -1, $a1, implicit-def $ccr
...