39 lines · plain
1# RUN: llvm-mc -disassemble -triple thumbv7 2>&1 | FileCheck %s2# XFAIL: *3 4#------------------------------------------------------------------------------5# Undefined encodings for ldrexd/strexd6#------------------------------------------------------------------------------7 8# FIXME: "ldrexd r8, r8, [r2]"9# Rt == Rt2 is UNPREDICTABLE10 11[0xd2 0xe8 0x7f 0x88]12# CHECK: potentially undefined instruction encoding13# CHECK-NEXT: [0xd2 0xe8 0x7f 0x88]14 15# Opcode=2127 Name=t2STREXB Format=ARM_FORMAT_THUMBFRM(25)16# 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 0 17# -------------------------------------------------------------------------------------------------18# | 1: 1: 1: 0| 1: 0: 0: 0| 1: 1: 0: 0| 0: 0: 1: 0| 1: 0: 0: 0| 1: 1: 1: 1| 0: 1: 0: 0| 0: 0: 1: 0|19# -------------------------------------------------------------------------------------------------20#21# if d == n || d == t then UNPREDICTABLE22 23[0xc2 0xe8 0x42 0x8f]24# CHECK: potentially undefined instruction encoding25# CHECK-NEXT: [0xc2 0xe8 0x42 0x8f]26 27# Opcode=2128 Name=t2STREXD Format=ARM_FORMAT_THUMBFRM(25)28# 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 16 15 14 13 12 11 10 9 8 7 6 5 4 3 2 1 029# -------------------------------------------------------------------------------------------------30# | 1: 1: 1: 0| 1: 0: 0: 0| 1: 1: 0: 0| 0: 0: 1: 0| 0: 1: 1: 1| 1: 0: 0: 0| 0: 1: 1: 1| 1: 0: 0: 0|31# -------------------------------------------------------------------------------------------------32#33# if d == n || d == t || d == t2 then UNPREDICTABLE34 35# FIXME: should be unpredictable since it's "strexd r8, r7, r8, [r2]"36[0xc2 0xe8 0x78 0x78]37# CHECK: potentially undefined instruction encoding38# CHECK-NEXT: [0xc2 0xe8 0x78 0x78]39