llvm-project/llvm/test/CodeGen/M68k/Encoding/Arith/Classes/MxExt.mir

26 lines
1.2 KiB
YAML

# RUN: llc %s -mtriple=m68k -start-after=prologepilog -O0 -filetype=obj -o - \
# RUN: | extract-section .text \
# RUN: | FileCheck %s -check-prefixes=EXT16,EXT32
#------------------------------------------------------------------------------
# MxExt sign extends data inside a register
#------------------------------------------------------------------------------
# ---------------------------------------------------------------
# F E D C B A 9 | 8 7 6 | 5 4 3 | 2 1 0
# ---------------------------------------------------------------
# 0 1 0 0 1 0 0 | OPMODE | 0 0 0 | REG
# ---------------------------------------------------------------
# EXT16: 0 1 0 0 1 0 0 0 . 1 0 0 0 0 0 0 0
# EXT16-SAME: 0 1 0 0 1 0 0 0 . 1 0 0 0 0 0 1 1
# EXT32-SAME: 0 1 0 0 1 0 0 0 . 1 1 0 0 0 0 0 0
# EXT32-SAME: 0 1 0 0 1 0 0 0 . 1 1 0 0 0 1 1 1
name: MxEXT
body: |
bb.0:
$wd0 = EXT16 $wd0, implicit-def $ccr
$wd3 = EXT16 $wd3, implicit-def $ccr
$d0 = EXT32 $d0, implicit-def $ccr
$d7 = EXT32 $d7, implicit-def $ccr