• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1# RUN: llvm-mc -disassemble -triple thumbv7 2>&1 | FileCheck %s
2# XFAIL: *
3
4#------------------------------------------------------------------------------
5# Undefined encodings for ldrexd/strexd
6#------------------------------------------------------------------------------
7
8# FIXME: "ldrexd r8, r8, [r2]"
9# Rt == Rt2 is UNPREDICTABLE
10
11[0xd2 0xe8 0x7f 0x88]
12# CHECK: potentially undefined instruction encoding
13# 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 UNPREDICTABLE
22
23[0xc2 0xe8 0x42 0x8f]
24# CHECK: potentially undefined instruction encoding
25# 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  0
29# -------------------------------------------------------------------------------------------------
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 UNPREDICTABLE
34
35# FIXME: should be unpredictable since it's "strexd r8, r7, r8, [r2]"
36[0xc2 0xe8 0x78 0x78]
37# CHECK: potentially undefined instruction encoding
38# CHECK-NEXT: [0xc2 0xe8 0x78 0x78]
39