]> git.ipfire.org Git - thirdparty/binutils-gdb.git/commitdiff
This commit was manufactured by cvs2svn to create branch
authornobody <>
Tue, 5 Aug 2003 09:39:32 +0000 (09:39 +0000)
committernobody <>
Tue, 5 Aug 2003 09:39:32 +0000 (09:39 +0000)
'carlton_dictionary-branch'.

Cherrypick from master 2003-08-05 09:39:31 UTC Nick Clifton <nickc@redhat.com> 'Add new Dutch translation.':
    bfd/elf32-am33lin.c
    config/gettext.m4
    config/progtest.m4
    gdb/amd64fbsd-nat.c
    gdb/amd64fbsd-tdep.c
    gdb/cli/cli-logging.c
    gdb/config/i386/fbsd64.mh
    gdb/config/i386/fbsd64.mt
    gdb/config/i386/nm-fbsd64.h
    gdb/config/i386/nm-nto.h
    gdb/config/i386/nto.mh
    gdb/doc/annotate.texinfo
    gdb/nto-procfs.c
    gdb/sparc-tdep.h
    gdb/testsuite/gdb.asm/m68k.inc
    gdb/testsuite/gdb.base/annota3.c
    gdb/testsuite/gdb.base/annota3.exp
    gdb/testsuite/gdb.base/complex.c
    gdb/testsuite/gdb.base/complex.exp
    gdb/testsuite/gdb.base/gdb1250.c
    gdb/testsuite/gdb.base/gdb1250.exp
    gdb/testsuite/gdb.c++/annota3.cc
    gdb/testsuite/gdb.c++/annota3.exp
    gdb/testsuite/gdb.disasm/t01_mov.exp
    gdb/testsuite/gdb.disasm/t01_mov.s
    gdb/testsuite/gdb.disasm/t02_mova.exp
    gdb/testsuite/gdb.disasm/t02_mova.s
    gdb/testsuite/gdb.disasm/t03_add.exp
    gdb/testsuite/gdb.disasm/t03_add.s
    gdb/testsuite/gdb.disasm/t04_sub.exp
    gdb/testsuite/gdb.disasm/t04_sub.s
    gdb/testsuite/gdb.disasm/t05_cmp.exp
    gdb/testsuite/gdb.disasm/t05_cmp.s
    gdb/testsuite/gdb.disasm/t06_ari2.exp
    gdb/testsuite/gdb.disasm/t06_ari2.s
    gdb/testsuite/gdb.disasm/t07_ari3.exp
    gdb/testsuite/gdb.disasm/t07_ari3.s
    gdb/testsuite/gdb.disasm/t08_or.exp
    gdb/testsuite/gdb.disasm/t08_or.s
    gdb/testsuite/gdb.disasm/t09_xor.exp
    gdb/testsuite/gdb.disasm/t09_xor.s
    gdb/testsuite/gdb.disasm/t10_and.exp
    gdb/testsuite/gdb.disasm/t10_and.s
    gdb/testsuite/gdb.disasm/t11_logs.exp
    gdb/testsuite/gdb.disasm/t11_logs.s
    gdb/testsuite/gdb.disasm/t12_bit.exp
    gdb/testsuite/gdb.disasm/t12_bit.s
    gdb/testsuite/gdb.disasm/t13_otr.exp
    gdb/testsuite/gdb.disasm/t13_otr.s
    gdb/testsuite/gdb.threads/tls-main.c
    gdb/testsuite/gdb.threads/tls-shared.c
    gdb/testsuite/gdb.threads/tls-shared.exp
    gdb/testsuite/gdb.threads/tls.c
    gdb/testsuite/gdb.threads/tls.exp
    gdb/user-regs.c
    gdb/user-regs.h
    gdb/x86-64-linux-tdep.h
    opcodes/po/nl.po

58 files changed:
bfd/elf32-am33lin.c [new file with mode: 0644]
config/gettext.m4 [new file with mode: 0644]
config/progtest.m4 [new file with mode: 0644]
gdb/amd64fbsd-nat.c [new file with mode: 0644]
gdb/amd64fbsd-tdep.c [new file with mode: 0644]
gdb/cli/cli-logging.c [new file with mode: 0644]
gdb/config/i386/fbsd64.mh [new file with mode: 0644]
gdb/config/i386/fbsd64.mt [new file with mode: 0644]
gdb/config/i386/nm-fbsd64.h [new file with mode: 0644]
gdb/config/i386/nm-nto.h [new file with mode: 0644]
gdb/config/i386/nto.mh [new file with mode: 0644]
gdb/doc/annotate.texinfo [new file with mode: 0644]
gdb/nto-procfs.c [new file with mode: 0644]
gdb/sparc-tdep.h [new file with mode: 0644]
gdb/testsuite/gdb.asm/m68k.inc [new file with mode: 0644]
gdb/testsuite/gdb.base/annota3.c [new file with mode: 0644]
gdb/testsuite/gdb.base/annota3.exp [new file with mode: 0644]
gdb/testsuite/gdb.base/complex.c [new file with mode: 0644]
gdb/testsuite/gdb.base/complex.exp [new file with mode: 0644]
gdb/testsuite/gdb.base/gdb1250.c [new file with mode: 0644]
gdb/testsuite/gdb.base/gdb1250.exp [new file with mode: 0644]
gdb/testsuite/gdb.c++/annota3.cc [new file with mode: 0644]
gdb/testsuite/gdb.c++/annota3.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t01_mov.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t01_mov.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t02_mova.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t02_mova.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t03_add.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t03_add.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t04_sub.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t04_sub.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t05_cmp.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t05_cmp.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t06_ari2.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t06_ari2.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t07_ari3.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t07_ari3.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t08_or.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t08_or.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t09_xor.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t09_xor.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t10_and.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t10_and.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t11_logs.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t11_logs.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t12_bit.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t12_bit.s [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t13_otr.exp [new file with mode: 0644]
gdb/testsuite/gdb.disasm/t13_otr.s [new file with mode: 0644]
gdb/testsuite/gdb.threads/tls-main.c [new file with mode: 0644]
gdb/testsuite/gdb.threads/tls-shared.c [new file with mode: 0644]
gdb/testsuite/gdb.threads/tls-shared.exp [new file with mode: 0644]
gdb/testsuite/gdb.threads/tls.c [new file with mode: 0644]
gdb/testsuite/gdb.threads/tls.exp [new file with mode: 0644]
gdb/user-regs.c [new file with mode: 0644]
gdb/user-regs.h [new file with mode: 0644]
gdb/x86-64-linux-tdep.h [new file with mode: 0644]
opcodes/po/nl.po [new file with mode: 0644]

diff --git a/bfd/elf32-am33lin.c b/bfd/elf32-am33lin.c
new file mode 100644 (file)
index 0000000..4cc2230
--- /dev/null
@@ -0,0 +1,35 @@
+/* Matsushita AM33/2.0 support for 32-bit GNU/Linux ELF
+   Copyright 2001
+   Free Software Foundation, Inc.
+
+   This file is part of BFD, the Binary File Descriptor library.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+
+#define elf_symbol_leading_char 0
+
+#define TARGET_LITTLE_SYM      bfd_elf32_am33lin_vec
+#define TARGET_LITTLE_NAME     "elf32-am33lin"
+#define ELF_ARCH               bfd_arch_mn10300
+#define ELF_MACHINE_CODE       EM_MN10300
+#define ELF_MACHINE_ALT1       EM_CYGNUS_MN10300
+#define ELF_MAXPAGESIZE                0x1000
+
+/* Rename global functions.  */
+#define _bfd_mn10300_elf_merge_private_bfd_data  _bfd_am33_elf_merge_private_bfd_data
+#define _bfd_mn10300_elf_object_p                _bfd_am33_elf_object_p
+#define _bfd_mn10300_elf_final_write_processing  _bfd_am33_elf_final_write_processing
+
+#include "elf-m10300.c"
diff --git a/config/gettext.m4 b/config/gettext.m4
new file mode 100644 (file)
index 0000000..a704307
--- /dev/null
@@ -0,0 +1,66 @@
+# intl sister-directory configuration rules.
+#
+
+# The idea behind this macro is that there's no need to repeat all the
+# autoconf probes done by the intl directory - it's already done them
+# for us.  In fact, there's no need even to look at the cache for the
+# answers.  All we need to do is nab a few pieces of information.
+# The intl directory is set up to make this easy, by generating a
+# small file which can be sourced as a shell script; then we produce
+# the necessary substitutions and definitions for this directory.
+
+AC_DEFUN(ZW_GNU_GETTEXT_SISTER_DIR,
+[# If we haven't got the data from the intl directory,
+# assume NLS is disabled.
+USE_NLS=no     AC_SUBST(USE_NLS)
+LIBINTL=       AC_SUBST(LIBINTL)
+LIBINTL_DEP=   AC_SUBST(LIBINTL_DEP)
+INCINTL=       AC_SUBST(INCINTL)
+XGETTEXT=      AC_SUBST(XGETTEXT)
+GMSGFMT=       AC_SUBST(GMSGFMT)
+POSUB=         AC_SUBST(POSUB)
+if test -f ../intl/config.intl; then
+  . ../intl/config.intl
+fi
+AC_MSG_CHECKING([whether NLS is requested])
+if test x"$USE_NLS" != xyes; then
+  AC_MSG_RESULT(no)
+else
+  AC_MSG_RESULT(yes)
+  AC_DEFINE(ENABLE_NLS, 1, 
+ [Define to 1 if translation of program messages to the 
+  user's native language is requested.])
+
+  AC_MSG_CHECKING(for catalogs to be installed)
+  # Look for .po and .gmo files in the source directory.
+  CATALOGS=  AC_SUBST(CATALOGS)
+  XLINGUAS=
+  for cat in $srcdir/po/*.gmo $srcdir/po/*.po; do
+    # If there aren't any .gmo files the shell will give us the
+    # literal string "../path/to/srcdir/po/*.gmo" which has to be
+    # weeded out.
+    case "$cat" in *\**)
+      continue;;
+    esac
+    # The quadruple backslash is collapsed to a double backslash
+    # by the backticks, then collapsed again by the double quotes,
+    # leaving us with one backslash in the sed expression (right
+    # before the dot that mustn't act as a wildcard).
+    cat=`echo $cat | sed -e "s!$srcdir/!!" -e "s!\\\\.po!.gmo!"`
+    lang=`echo $cat | sed -e 's!po/!!' -e "s!\\\\.gmo!!"`
+    # The user is allowed to set LINGUAS to a list of languages to
+    # install catalogs for.  If it's empty that means "all of them."
+    if test "x$LINGUAS" = x; then
+      CATALOGS="$CATALOGS $cat"
+      XLINGUAS="$XLINGUAS $lang"
+    else
+      case "$LINGUAS" in *$lang*)
+        CATALOGS="$CATALOGS $cat"
+        XLINGUAS="$XLINGUAS $lang"
+        ;;
+      esac
+    fi
+  done
+  LINGUAS="$XLINGUAS"
+  AC_MSG_RESULT($LINGUAS)
+fi])
diff --git a/config/progtest.m4 b/config/progtest.m4
new file mode 100644 (file)
index 0000000..8fe527c
--- /dev/null
@@ -0,0 +1,91 @@
+# progtest.m4 serial 3 (gettext-0.12)
+dnl Copyright (C) 1996-2003 Free Software Foundation, Inc.
+dnl This file is free software, distributed under the terms of the GNU
+dnl General Public License.  As a special exception to the GNU General
+dnl Public License, this file may be distributed as part of a program
+dnl that contains a configuration script generated by Autoconf, under
+dnl the same distribution terms as the rest of that program.
+dnl
+dnl This file can can be used in projects which are not available under
+dnl the GNU General Public License or the GNU Library General Public
+dnl License but which still want to provide support for the GNU gettext
+dnl functionality.
+dnl Please note that the actual code of the GNU gettext library is covered
+dnl by the GNU Library General Public License, and the rest of the GNU
+dnl gettext package package is covered by the GNU General Public License.
+dnl They are *not* in the public domain.
+
+dnl Authors:
+dnl   Ulrich Drepper <drepper@cygnus.com>, 1996.
+
+# Search path for a program which passes the given test.
+
+dnl AM_PATH_PROG_WITH_TEST(VARIABLE, PROG-TO-CHECK-FOR,
+dnl   TEST-PERFORMED-ON-FOUND_PROGRAM [, VALUE-IF-NOT-FOUND [, PATH]])
+AC_DEFUN([AM_PATH_PROG_WITH_TEST],
+[
+# Prepare PATH_SEPARATOR.
+# The user is always right.
+if test "${PATH_SEPARATOR+set}" != set; then
+  echo "#! /bin/sh" >conf$$.sh
+  echo  "exit 0"   >>conf$$.sh
+  chmod +x conf$$.sh
+  if (PATH="/nonexistent;."; conf$$.sh) >/dev/null 2>&1; then
+    PATH_SEPARATOR=';'
+  else
+    PATH_SEPARATOR=:
+  fi
+  rm -f conf$$.sh
+fi
+
+# Find out how to test for executable files. Don't use a zero-byte file,
+# as systems may use methods other than mode bits to determine executability.
+cat >conf$$.file <<_ASEOF
+#! /bin/sh
+exit 0
+_ASEOF
+chmod +x conf$$.file
+if test -x conf$$.file >/dev/null 2>&1; then
+  ac_executable_p="test -x"
+else
+  ac_executable_p="test -f"
+fi
+rm -f conf$$.file
+
+# Extract the first word of "$2", so it can be a program name with args.
+set dummy $2; ac_word=[$]2
+AC_MSG_CHECKING([for $ac_word])
+AC_CACHE_VAL(ac_cv_path_$1,
+[case "[$]$1" in
+  [[\\/]]* | ?:[[\\/]]*)
+    ac_cv_path_$1="[$]$1" # Let the user override the test with a path.
+    ;;
+  *)
+    ac_save_IFS="$IFS"; IFS=$PATH_SEPARATOR
+    for ac_dir in ifelse([$5], , $PATH, [$5]); do
+      IFS="$ac_save_IFS"
+      test -z "$ac_dir" && ac_dir=.
+      for ac_exec_ext in '' $ac_executable_extensions; do
+        if $ac_executable_p "$ac_dir/$ac_word$ac_exec_ext"; then
+          if [$3]; then
+            ac_cv_path_$1="$ac_dir/$ac_word$ac_exec_ext"
+            break 2
+          fi
+        fi
+      done
+    done
+    IFS="$ac_save_IFS"
+dnl If no 4th arg is given, leave the cache variable unset,
+dnl so AC_PATH_PROGS will keep looking.
+ifelse([$4], , , [  test -z "[$]ac_cv_path_$1" && ac_cv_path_$1="$4"
+])dnl
+    ;;
+esac])dnl
+$1="$ac_cv_path_$1"
+if test ifelse([$4], , [-n "[$]$1"], ["[$]$1" != "$4"]); then
+  AC_MSG_RESULT([$]$1)
+else
+  AC_MSG_RESULT(no)
+fi
+AC_SUBST($1)dnl
+])
diff --git a/gdb/amd64fbsd-nat.c b/gdb/amd64fbsd-nat.c
new file mode 100644 (file)
index 0000000..7880e58
--- /dev/null
@@ -0,0 +1,300 @@
+/* Native-dependent code for FreeBSD/amd64.
+   Copyright 2003 Free Software Foundation, Inc.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#include "defs.h"
+#include "inferior.h"
+#include "regcache.h"
+
+#include "gdb_assert.h"
+#include <signal.h>
+#include <stddef.h>
+#include <sys/types.h>
+#include <sys/ptrace.h>
+#include <sys/sysctl.h>
+#include <machine/reg.h>
+
+#ifdef HAVE_SYS_PROCFS_H
+#include <sys/procfs.h>
+#endif
+
+#ifndef HAVE_GREGSET_T
+typedef struct reg gregset_t;
+#endif
+
+#ifndef HAVE_FPREGSET_T
+typedef struct fpreg fpregset_t;
+#endif
+
+#include "gregset.h"
+#include "x86-64-tdep.h"
+\f
+
+/* Offset to the gregset_t location where REG is stored.  */
+#define REG_OFFSET(reg) offsetof (gregset_t, reg)
+
+/* At reg_offset[REGNO] you'll find the offset to the gregset_t
+   location where the GDB register REGNO is stored.  Unsupported
+   registers are marked with `-1'.  */
+static int reg_offset[] =
+{
+  REG_OFFSET (r_rax),
+  REG_OFFSET (r_rbx),
+  REG_OFFSET (r_rcx),
+  REG_OFFSET (r_rdx),
+  REG_OFFSET (r_rsi),
+  REG_OFFSET (r_rdi),
+  REG_OFFSET (r_rbp),
+  REG_OFFSET (r_rsp),
+  REG_OFFSET (r_r8),
+  REG_OFFSET (r_r9),
+  REG_OFFSET (r_r10),
+  REG_OFFSET (r_r11),
+  REG_OFFSET (r_r12),
+  REG_OFFSET (r_r13),
+  REG_OFFSET (r_r14),
+  REG_OFFSET (r_r15),
+  REG_OFFSET (r_rip),
+  REG_OFFSET (r_rflags),
+  -1,
+  -1,
+  -1,
+  -1
+};
+
+#define REG_ADDR(regset, regno) ((char *) (regset) + reg_offset[regno])
+
+/* Macro to determine if a register is fetched with PT_GETREGS.  */
+#define GETREGS_SUPPLIES(regno) \
+  ((0 <= (regno) && (regno) < X86_64_NUM_GREGS))
+\f
+
+/* Transfering the registers between GDB, inferiors and core files.  */
+
+/* Fill GDB's register array with the general-purpose register values
+   in *GREGSETP.  */
+
+void
+supply_gregset (gregset_t *gregsetp)
+{
+  int i;
+
+  for (i = 0; i < X86_64_NUM_GREGS; i++)
+    {
+      if (reg_offset[i] == -1)
+       supply_register (i, NULL);
+      else
+       supply_register (i, REG_ADDR (gregsetp, i));
+    }
+}
+
+/* Fill register REGNO (if it is a general-purpose register) in
+   *GREGSETPS with the value in GDB's register array.  If REGNO is -1,
+   do this for all registers.  */
+
+void
+fill_gregset (gregset_t *gregsetp, int regno)
+{
+  int i;
+
+  for (i = 0; i < X86_64_NUM_GREGS; i++)
+    if ((regno == -1 || regno == i) && reg_offset[i] != -1)
+      regcache_collect (i, REG_ADDR (gregsetp, i));
+}
+
+/* Fill GDB's register array with the floating-point register values
+   in *FPREGSETP.  */
+
+void
+supply_fpregset (fpregset_t *fpregsetp)
+{
+  x86_64_supply_fxsave ((char *) fpregsetp);
+}
+
+/* Fill register REGNO (if it is a floating-point register) in
+   *FPREGSETP with the value in GDB's register array.  If REGNO is -1,
+   do this for all registers.  */
+
+void
+fill_fpregset (fpregset_t *fpregsetp, int regno)
+{
+  x86_64_fill_fxsave ((char *) fpregsetp, regno);
+}
+
+/* Fetch register REGNO from the inferior.  If REGNO is -1, do this
+   for all registers (including the floating point registers).  */
+
+void
+fetch_inferior_registers (int regno)
+{
+  if (regno == -1 || GETREGS_SUPPLIES (regno))
+    {
+      gregset_t gregs;
+
+      if (ptrace (PT_GETREGS, PIDGET (inferior_ptid),
+                 (PTRACE_ARG3_TYPE) &gregs, 0) == -1)
+       perror_with_name ("Couldn't get registers");
+
+      supply_gregset (&gregs);
+      if (regno != -1)
+       return;
+    }
+
+  if (regno == -1 || regno >= FP0_REGNUM)
+    {
+      fpregset_t fpregs;
+
+      if (ptrace (PT_GETFPREGS, PIDGET (inferior_ptid),
+                 (PTRACE_ARG3_TYPE) &fpregs, 0) == -1)
+       perror_with_name ("Couldn't get floating point status");
+
+      supply_fpregset (&fpregs);
+    }
+}
+
+/* Store register REGNO back into the inferior.  If REGNO is -1, do
+   this for all registers (including the floating point registers).  */
+
+void
+store_inferior_registers (int regno)
+{
+  if (regno == -1 || GETREGS_SUPPLIES (regno))
+    {
+      gregset_t gregs;
+
+      if (ptrace (PT_GETREGS, PIDGET (inferior_ptid),
+                  (PTRACE_ARG3_TYPE) &gregs, 0) == -1)
+        perror_with_name ("Couldn't get registers");
+
+      fill_gregset (&gregs, regno);
+
+      if (ptrace (PT_SETREGS, PIDGET (inferior_ptid),
+                 (PTRACE_ARG3_TYPE) &gregs, 0) == -1)
+        perror_with_name ("Couldn't write registers");
+
+      if (regno != -1)
+       return;
+    }
+
+  if (regno == -1 || regno >= FP0_REGNUM)
+    {
+      fpregset_t fpregs;
+
+      if (ptrace (PT_GETFPREGS, PIDGET (inferior_ptid),
+                 (PTRACE_ARG3_TYPE) &fpregs, 0) == -1)
+       perror_with_name ("Couldn't get floating point status");
+
+      fill_fpregset (&fpregs, regno);
+  
+      if (ptrace (PT_SETFPREGS, PIDGET (inferior_ptid),
+                 (PTRACE_ARG3_TYPE) &fpregs, 0) == -1)
+       perror_with_name ("Couldn't write floating point status");
+    }
+}
+\f
+
+/* Provide a prototype to silence -Wmissing-prototypes.  */
+void _initialize_amd64fbsd_nat (void);
+
+void
+_initialize_am64fbsd_nat (void)
+{
+  int offset;
+
+  /* To support the recognition of signal handlers, i386bsd-tdep.c
+     hardcodes some constants.  Inclusion of this file means that we
+     are compiling a native debugger, which means that we can use the
+     system header files and sysctl(3) to get at the relevant
+     information.  */
+
+  extern int amd64fbsd_sc_reg_offset[];
+#define SC_REG_OFFSET amd64fbsd_sc_reg_offset
+
+  /* We only check the program counter, stack pointer and frame
+     pointer since these members of `struct sigcontext' are essential
+     for providing backtraces.  */
+
+#define SC_RIP_OFFSET SC_REG_OFFSET[X86_64_RIP_REGNUM]
+#define SC_RSP_OFFSET SC_REG_OFFSET[X86_64_RSP_REGNUM]
+#define SC_RBP_OFFSET SC_REG_OFFSET[X86_64_RBP_REGNUM]
+
+  /* Override the default value for the offset of the program counter
+     in the sigcontext structure.  */
+  offset = offsetof (struct sigcontext, sc_rip);
+
+  if (SC_RIP_OFFSET != offset)
+    {
+      warning ("\
+offsetof (struct sigcontext, sc_rip) yields %d instead of %d.\n\
+Please report this to <bug-gdb@gnu.org>.", 
+              offset, SC_RIP_OFFSET);
+    }
+
+  SC_RIP_OFFSET = offset;
+
+  /* Likewise for the stack pointer.  */
+  offset = offsetof (struct sigcontext, sc_rsp);
+
+  if (SC_RSP_OFFSET != offset)
+    {
+      warning ("\
+offsetof (struct sigcontext, sc_rsp) yields %d instead of %d.\n\
+Please report this to <bug-gdb@gnu.org>.",
+              offset, SC_RSP_OFFSET);
+    }
+
+  SC_RSP_OFFSET = offset;
+
+  /* And the frame pointer.  */
+  offset = offsetof (struct sigcontext, sc_rbp);
+
+  if (SC_RBP_OFFSET != offset)
+    {
+      warning ("\
+offsetof (struct sigcontext, sc_rbp) yields %d instead of %d.\n\
+Please report this to <bug-gdb@gnu.org>.",
+              offset, SC_RBP_OFFSET);
+    }
+
+  SC_RBP_OFFSET = offset;
+
+  /* FreeBSD provides a kern.ps_strings sysctl that we can use to
+     locate the sigtramp.  That way we can still recognize a sigtramp
+     if its location is changed in a new kernel.  Of course this is
+     still based on the assumption that the sigtramp is placed
+     directly under the location where the program arguments and
+     environment can be found.  */
+  {
+    int mib[2];
+    int ps_strings;
+    size_t len;
+
+    extern CORE_ADDR amd64fbsd_sigtramp_start;
+    extern CORE_ADDR amd64fbsd_sigtramp_end;
+
+    mib[0] = CTL_KERN;
+    mib[1] = KERN_PS_STRINGS;
+    len = sizeof (ps_strings);
+    if (sysctl (mib, 2, &ps_strings, &len, NULL, 0) == 0)
+      {
+       amd64fbsd_sigtramp_start = ps_strings - 32;
+       amd64fbsd_sigtramp_end = ps_strings;
+      }
+  }
+}
diff --git a/gdb/amd64fbsd-tdep.c b/gdb/amd64fbsd-tdep.c
new file mode 100644 (file)
index 0000000..e72c140
--- /dev/null
@@ -0,0 +1,108 @@
+/* Target-dependent code for FreeBSD/amd64.
+   Copyright 2003 Free Software Foundation, Inc.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#include "defs.h"
+#include "arch-utils.h"
+#include "frame.h"
+#include "gdbcore.h"
+#include "regcache.h"
+#include "osabi.h"
+
+#include "gdb_string.h"
+
+#include "x86-64-tdep.h"
+
+/* Support for signal handlers.  */
+
+/* Assuming NEXT_FRAME is for a frame following a BSD sigtramp
+   routine, return the address of the associated sigcontext structure.  */
+
+static CORE_ADDR
+amd64fbsd_sigcontext_addr (struct frame_info *next_frame)
+{
+  char buf[8];
+  CORE_ADDR sp;
+
+  frame_unwind_register (next_frame, X86_64_RSP_REGNUM, buf);
+  sp = extract_unsigned_integer (buf, 8);
+
+  return read_memory_unsigned_integer (sp + 16, 8);
+}
+\f
+/* FreeBSD 5.1-RELEASE or later.  */
+
+/* Location of the signal trampoline.  */
+CORE_ADDR amd64fbsd_sigtramp_start = 0x7fffffffc0;
+CORE_ADDR amd64fbsd_sigtramp_end = 0x7fffffffe0;
+
+/* From <machine/signal.h>.  */
+int amd64fbsd_sc_reg_offset[X86_64_NUM_GREGS] =
+{
+  24 + 14 * 8,                 /* %rax */
+  24 + 11 * 8,                 /* %rbx */
+  24 + 13 * 8,                 /* %rcx */
+  24 + 12 * 8,                 /* %rdx */
+  24 + 9 * 8,                  /* %rsi */
+  24 + 8 * 8,                  /* %rdi */
+  24 + 10 * 8,                 /* %rbp */
+  24 + 20 * 8,                 /* %rsp */
+  24 + 7 * 8,                  /* %r8 */
+  24 + 6 * 8,                  /* %r9 */
+  24 + 5 * 8,                  /* %r10 */
+  24 + 4 * 8,                  /* %r11 */
+  24 + 3 * 8,                  /* %r12 */
+  24 + 2 * 8,                  /* %r13 */
+  24 + 1 * 8,                  /* %r14 */
+  24 + 0 * 8,                  /* %r15 */
+  24 + 17 * 8,                 /* %rip */
+  24 + 19 * 8,                 /* %eflags */
+  -1,                          /* %ds */
+  -1,                          /* %es */
+  -1,                          /* %fs */
+  -1                           /* %gs */
+};
+
+void
+amd64fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch)
+{
+  struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
+
+  /* Obviously FreeBSD is BSD-based.  */
+  i386bsd_init_abi (info, gdbarch);
+
+  x86_64_init_abi (info, gdbarch);
+
+  tdep->sigtramp_start = amd64fbsd_sigtramp_start;
+  tdep->sigtramp_end = amd64fbsd_sigtramp_start;
+  tdep->sigcontext_addr = amd64fbsd_sigcontext_addr;
+  tdep->sc_reg_offset = amd64fbsd_sc_reg_offset;
+  tdep->sc_num_regs = X86_64_NUM_GREGS;
+}
+\f
+
+/* Provide a prototype to silence -Wmissing-prototypes.  */
+void _initialize_amd64fbsd_tdep (void);
+
+void
+_initialize_amd64fbsd_tdep (void)
+{
+  gdbarch_register_osabi (bfd_arch_i386, bfd_mach_x86_64,
+                         GDB_OSABI_FREEBSD_ELF, amd64fbsd_init_abi);
+}
diff --git a/gdb/cli/cli-logging.c b/gdb/cli/cli-logging.c
new file mode 100644 (file)
index 0000000..db34b0d
--- /dev/null
@@ -0,0 +1,205 @@
+/* Command-line output logging for GDB, the GNU debugger.
+
+   Copyright 2003
+   Free Software Foundation, Inc.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#include "defs.h"
+#include "gdbcmd.h"
+#include "ui-out.h"
+
+#include "gdb_string.h"
+
+/* These hold the pushed copies of the gdb output files.
+   If NULL then nothing has yet been pushed.  */
+struct saved_output_files
+{
+  struct ui_file *out;
+  struct ui_file *err;
+  struct ui_file *log;
+  struct ui_file *targ;
+};
+static struct saved_output_files saved_output;
+static char *saved_filename;
+
+static char *logging_filename;
+int logging_overwrite, logging_redirect;
+
+/* If we've pushed output files, close them and pop them.  */
+static void
+pop_output_files (void)
+{
+  /* Only delete one of the files -- they are all set to the same
+     value.  */
+  ui_file_delete (gdb_stdout);
+  gdb_stdout = saved_output.out;
+  gdb_stderr = saved_output.err;
+  gdb_stdlog = saved_output.log;
+  gdb_stdtarg = saved_output.targ;
+  saved_output.out = NULL;
+  saved_output.err = NULL;
+  saved_output.log = NULL;
+  saved_output.targ = NULL;
+
+  ui_out_redirect (uiout, NULL);
+}
+
+/* This is a helper for the `set logging' command.  */
+static void
+handle_redirections (int from_tty)
+{
+  struct ui_file *output;
+
+  if (saved_filename != NULL)
+    {
+      fprintf_unfiltered (gdb_stdout, "Already logging to %s.\n",
+                         saved_filename);
+      return;
+    }
+
+  output = gdb_fopen (logging_filename, logging_overwrite ? "w" : "a");
+  if (output == NULL)
+    perror_with_name ("set logging");
+
+  /* Redirects everything to gdb_stdout while this is running.  */
+  if (!logging_redirect)
+    {
+      output = tee_file_new (gdb_stdout, 0, output, 1);
+      if (output == NULL)
+       perror_with_name ("set logging");
+      if (from_tty)
+       fprintf_unfiltered (gdb_stdout, "Copying output to %s.\n",
+                           logging_filename);
+    }
+  else if (from_tty)
+    fprintf_unfiltered (gdb_stdout, "Redirecting output to %s.\n",
+                       logging_filename);
+
+  saved_filename = xstrdup (logging_filename);
+  saved_output.out = gdb_stdout;
+  saved_output.err = gdb_stderr;
+  saved_output.log = gdb_stdlog;
+  saved_output.targ = gdb_stdtarg;
+
+  gdb_stdout = output;
+  gdb_stderr = output;
+  gdb_stdlog = output;
+  gdb_stdtarg = output;
+
+  if (ui_out_redirect (uiout, gdb_stdout) < 0)
+    warning ("Current output protocol does not support redirection");
+}
+
+static void
+set_logging_on (char *args, int from_tty)
+{
+  char *rest = args;
+  if (rest && *rest)
+    {
+      xfree (logging_filename);
+      logging_filename = xstrdup (rest);
+    }
+  handle_redirections (from_tty);
+}
+
+static void 
+set_logging_off (char *args, int from_tty)
+{
+  if (saved_filename == NULL)
+    return;
+
+  pop_output_files ();
+  if (from_tty)
+    fprintf_unfiltered (gdb_stdout, "Done logging to %s.\n", saved_filename);
+  xfree (saved_filename);
+  saved_filename = NULL;
+}
+
+static void
+set_logging_command (char *args, int from_tty)
+{
+  printf_unfiltered ("\"set logging\" lets you log output to a file.\n");
+  printf_unfiltered ("Usage: set logging on [FILENAME]\n");
+  printf_unfiltered ("       set logging off\n");
+  printf_unfiltered ("       set logging file FILENAME\n");
+  printf_unfiltered ("       set logging overwrite [on|off]\n");
+  printf_unfiltered ("       set logging redirect [on|off]\n");
+}
+
+void
+show_logging_command (char *args, int from_tty)
+{
+  if (saved_filename)
+    printf_unfiltered ("Currently logging to \"%s\".\n", saved_filename);
+  if (saved_filename == NULL
+      || strcmp (logging_filename, saved_filename) != 0)
+    printf_unfiltered ("Future logs will be written to %s.\n",
+                      logging_filename);
+
+  if (logging_overwrite)
+    printf_unfiltered ("Logs will overwrite the log file.\n");
+  else
+    printf_unfiltered ("Logs will be appended to the log file.\n");
+
+  if (logging_redirect)
+    printf_unfiltered ("Output will be sent only to the log file.\n");
+  else
+    printf_unfiltered ("Output will be logged and displayed.\n");
+}
+
+void
+_initialize_cli_logging (void)
+{
+  static struct cmd_list_element *set_logging_cmdlist, *show_logging_cmdlist;
+
+  
+  add_prefix_cmd ("logging", class_support, set_logging_command,
+                 "Set logging options", &set_logging_cmdlist,
+                 "set logging ", 0, &setlist);
+  add_prefix_cmd ("logging", class_support, show_logging_command,
+                 "Show logging options", &show_logging_cmdlist,
+                 "show logging ", 0, &showlist);
+  add_setshow_boolean_cmd ("overwrite", class_support, &logging_overwrite,
+                          "Set whether logging overwrites or appends "
+                          "to the log file.\n",
+                          "Show whether logging overwrites or appends "
+                          "to the log file.\n",
+                          NULL, NULL, &set_logging_cmdlist, &show_logging_cmdlist);
+  add_setshow_boolean_cmd ("redirect", class_support, &logging_redirect,
+                          "Set the logging output mode.\n"
+                          "If redirect is off, output will go to both the "
+                          "screen and the log file.\n"
+                          "If redirect is on, output will go only to the log "
+                          "file.",
+                          "Show the logging output mode.\n"
+                          "If redirect is off, output will go to both the "
+                          "screen and the log file.\n"
+                          "If redirect is on, output will go only to the log "
+                          "file.",
+                          NULL, NULL, &set_logging_cmdlist, &show_logging_cmdlist);
+  add_setshow_cmd ("file", class_support, var_filename, &logging_filename,
+                  "Set the current logfile.", "Show the current logfile.",
+                  NULL, NULL, &set_logging_cmdlist, &show_logging_cmdlist);
+  add_cmd ("on", class_support, set_logging_on,
+          "Enable logging.", &set_logging_cmdlist);
+  add_cmd ("off", class_support, set_logging_off,
+          "Disable logging.", &set_logging_cmdlist);
+
+  logging_filename = xstrdup ("gdb.txt");
+}
diff --git a/gdb/config/i386/fbsd64.mh b/gdb/config/i386/fbsd64.mh
new file mode 100644 (file)
index 0000000..a1a79a3
--- /dev/null
@@ -0,0 +1,7 @@
+# Host: FreeBSD/amd64
+
+XM_FILE= xm-i386.h
+
+NAT_FILE= nm-fbsd64.h
+# NOTE: Do not spread NATDEPFILES over several lines - it hurts BSD make.
+NATDEPFILES= fork-child.o infptrace.o inftarg.o solib.o solib-svr4.o solib-legacy.o corelow.o core-regset.o amd64fbsd-nat.o gcore.o fbsd-proc.o
diff --git a/gdb/config/i386/fbsd64.mt b/gdb/config/i386/fbsd64.mt
new file mode 100644 (file)
index 0000000..ae4fe98
--- /dev/null
@@ -0,0 +1,2 @@
+# Target: FreeBSD/amd64
+TDEPFILES= x86-64-tdep.o amd64fbsd-tdep.o i386-tdep.o i387-tdep.o i386bsd-tdep.o
diff --git a/gdb/config/i386/nm-fbsd64.h b/gdb/config/i386/nm-fbsd64.h
new file mode 100644 (file)
index 0000000..e5b66df
--- /dev/null
@@ -0,0 +1,42 @@
+/* Native-dependent definitions for FreeBSD/amd64.
+   Copyright 2003
+   Free Software Foundation, Inc.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#ifndef NM_FBSD64_H
+#define NM_FBSD64_H
+
+/* Type of the third argument to the `ptrace' system call.  */
+#define PTRACE_ARG3_TYPE caddr_t
+
+/* Override copies of {fetch,store}_inferior_registers in `infptrace.c'.  */
+#define FETCH_INFERIOR_REGISTERS
+
+/* Override child_pid_to_exec_file in 'inftarg.c'.  */
+#define CHILD_PID_TO_EXEC_FILE
+
+/* We can attach and detach.  */
+#define ATTACH_DETACH
+\f
+
+/* Shared library support.  */
+
+#include "solib.h"
+
+#endif /* nm-fbsd64.h */
diff --git a/gdb/config/i386/nm-nto.h b/gdb/config/i386/nm-nto.h
new file mode 100644 (file)
index 0000000..34d9903
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef _NM_NTO_H
+#define _NM_NTO_H
+
+/* This file needed to build a native debugger.  */
+
+#endif
diff --git a/gdb/config/i386/nto.mh b/gdb/config/i386/nto.mh
new file mode 100644 (file)
index 0000000..f412579
--- /dev/null
@@ -0,0 +1,7 @@
+# Host: Intel 386 running QNX.
+
+NAT_FILE= nm-nto.h
+
+NATDEPFILES= nto-procfs.o
+
+XM_FILE= xm-i386.h
diff --git a/gdb/doc/annotate.texinfo b/gdb/doc/annotate.texinfo
new file mode 100644 (file)
index 0000000..401657d
--- /dev/null
@@ -0,0 +1,824 @@
+\input texinfo   @c -*-texinfo-*-
+@c %**start of header
+@setfilename annotate.info
+@c
+@include gdb-cfg.texi
+@c
+@settitle @value{GDBN}'s Obsolete Annotations
+@setchapternewpage off
+@c %**end of header
+
+@set EDITION 1.0
+@set DATE July 2003
+
+@c NOTE: cagney/2003-07-28:
+@c Don't make this migration doccument an appendix of GDB's user guide.
+@c By keeping this separate, the size of the user guide is contained. If
+@c the user guide to get much bigger it would need to switch to a larger,
+@c more expensive, form factor and would drive up the manuals publication
+@c cost.  Having a smaller cheaper manual helps the GNU Press with its sales.
+
+@ifinfo
+This file documents @value{GDBN}'s obsolete annotations.
+
+Copyright 1994, 1995, 2000, 2001, 2003 Free Software Foundation, Inc.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.1 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
+Texts.  A copy of the license is included in the section entitled ``GNU
+Free Documentation License''.
+
+@end ifinfo
+
+@titlepage
+@title @value{GDBN}'s Obsolete Annotations
+@subtitle Edition @value{EDITION}
+@subtitle @value{DATE}
+@author Free Software Foundation
+@page
+@vskip 0pt plus 1filll
+Copyright @copyright{} 1994, 1995, 2000, 2001, 2003 Free Software
+Foundation, Inc.
+
+Permission is granted to copy, distribute and/or modify this document
+under the terms of the GNU Free Documentation License, Version 1.1 or
+any later version published by the Free Software Foundation; with no
+Invariant Sections, with no Front-Cover Texts, and with no Back-Cover
+Texts.  A copy of the license is included in the section entitled ``GNU
+Free Documentation License''.
+@end titlepage
+
+@ifinfo
+@node Top
+@top GDB Annotations
+
+This document describes the obsolete level two annotation interface
+implemented in older @value{GDBN} versions.
+
+@ignore
+This is Edition @value{EDITION}, @value{DATE}.
+@end ignore
+@end ifinfo
+
+@menu
+* Annotations Overview::  What annotations are; the general syntax.
+* Limitations::           Limitations of the annotation interface.
+* Migrating to GDB/MI::   Migrating to GDB/MI
+* Server Prefix::       Issuing a command without affecting user state.
+* Value Annotations::   Values are marked as such.
+* Frame Annotations::   Stack frames are annotated.
+* Displays::            @value{GDBN} can be told to display something periodically.
+* Prompting::           Annotations marking @value{GDBN}'s need for input.
+* Errors::              Annotations for error messages.
+* Breakpoint Info::     Information on breakpoints.
+* Invalidation::        Some annotations describe things now invalid.
+* Annotations for Running::
+                        Whether the program is running, how it stopped, etc.
+* Source Annotations::  Annotations describing source code.
+
+* GNU Free Documentation License::
+@end menu
+
+@contents
+
+@node Annotations Overview
+@chapter What is an Annotation?
+@cindex annotations
+
+To produce obsolete level two annotations, start @value{GDBN} with the
+@code{--annotate=2} option.
+
+Annotations start with a newline character, two @samp{control-z}
+characters, and the name of the annotation.  If there is no additional
+information associated with this annotation, the name of the annotation
+is followed immediately by a newline.  If there is additional
+information, the name of the annotation is followed by a space, the
+additional information, and a newline.  The additional information
+cannot contain newline characters.
+
+Any output not beginning with a newline and two @samp{control-z}
+characters denotes literal output from @value{GDBN}.  Currently there is
+no need for @value{GDBN} to output a newline followed by two
+@samp{control-z} characters, but if there was such a need, the
+annotations could be extended with an @samp{escape} annotation which
+means those three characters as output.
+
+A simple example of starting up @value{GDBN} with annotations is:
+
+@smallexample
+$ gdb --annotate=2
+GNU GDB 5.0
+Copyright 2000 Free Software Foundation, Inc.
+GDB is free software, covered by the GNU General Public License,
+and you are welcome to change it and/or distribute copies of it
+under certain conditions.
+Type "show copying" to see the conditions.
+There is absolutely no warranty for GDB.  Type "show warranty"
+for details.
+This GDB was configured as "sparc-sun-sunos4.1.3"
+
+^Z^Zpre-prompt
+(gdb) 
+^Z^Zprompt
+quit
+
+^Z^Zpost-prompt
+$ 
+@end smallexample
+
+Here @samp{quit} is input to @value{GDBN}; the rest is output from
+@value{GDBN}.  The three lines beginning @samp{^Z^Z} (where @samp{^Z}
+denotes a @samp{control-z} character) are annotations; the rest is
+output from @value{GDBN}.
+
+@node Limitations
+@chapter Limitations of the Annotation Interface
+
+The level two annotations mechanism is known to have a number of
+technical and architectural limitations.  As a consequence, in 2001,
+with the release of @value{GDBN} 5.1 and the addition of @sc{gdb/mi},
+the annotation interface was marked as deprecated.
+
+This chapter discusses the known problems.
+
+@section Dependant on @sc{cli} output
+
+The annotation interface works by interspersing markups with
+@value{GDBN} normal command-line interpreter output.  Unfortunatly, this
+makes the annotation client dependant on not just the annotations, but
+also the @sc{cli} output.  This is because the client is forced to
+assume that specific @value{GDBN} commands provide specific information.
+Any change to @value{GDBN}'s @sc{cli} output modifies or removes that
+information and, consequently, likely breaks the client.
+
+Since the @sc{gdb/mi} output is independant of the @sc{cli}, it does not
+have this problem.
+
+@section Scalability
+
+The annotation interface relies on value annotations (@pxref{Value
+Annotations}) and the display mechanism as a way of obtaining up-to-date
+value information.  These mechanisms are not scalable.
+
+In a graphical environment, where many values can be displayed
+simultaneously, a serious performance problem occurs when the client
+tries to first extract from @value{GDBN}, and then re-display, all those
+values.  The client should instead only request and update the values
+that changed.
+
+The @sc{gdb/mi} Variable Objects provide just that mechanism.
+
+@section Correctness
+
+The annotation interface assumes that a variable's value can only be
+changed when the target is running.  This assumption is not correct.  A
+single assignment to a single variable can result in the entire target,
+and all displayed values, needing an update.
+
+The @sc{gdb/mi} Variable Objects include a mechanism for efficiently
+reporting such changes.
+
+@section Reliability
+
+The @sc{gdb/mi} interface includes a dedicated test directory
+(@file{gdb/gdb.mi}), and any addition or fix to @sc{gdb/mi} must include
+testsuite changes.
+
+@section Maintainability
+
+The annotation mechanism was implemented by interspersing @sc{cli} print
+statements with various annotations.  As a consequence, any @sc{cli}
+output change can alter the annotation output.
+
+Since the @sc{gdb/mi} output is independant of the @sc{cli}, and the
+@sc{gdb/mi} is increasingly implemented independant of the @sc{cli}
+code, its long term maintenance is much easier.
+
+@node Migrating to GDB/MI
+@chapter Migrating to @sc{gdb/mi}
+
+By using the @samp{interp mi} command, it is possible for annotation
+clients to invoke @sc{gdb/mi} commands, and hence access the
+@sc{gdb/mi}.  By doing this, existing annotation clients have a
+migration path from this obsolete interface to @sc{gdb/mi}.
+
+@node Server Prefix
+@chapter The Server Prefix
+@cindex server prefix for annotations
+
+To issue a command to @value{GDBN} without affecting certain aspects of
+the state which is seen by users, prefix it with @samp{server }.  This
+means that this command will not affect the command history, nor will it
+affect @value{GDBN}'s notion of which command to repeat if @key{RET} is
+pressed on a line by itself.
+
+The server prefix does not affect the recording of values into the value
+history; to print a value without recording it into the value history,
+use the @code{output} command instead of the @code{print} command.
+
+@node Value Annotations
+@chapter Values
+
+@emph{Value Annotations have been removed.  @sc{gdb/mi} instead provides
+Variable Objects.}
+
+@cindex annotations for values
+When a value is printed in various contexts, @value{GDBN} uses
+annotations to delimit the value from the surrounding text.
+
+@findex value-history-begin
+@findex value-history-value
+@findex value-history-end
+If a value is printed using @code{print} and added to the value history,
+the annotation looks like
+
+@smallexample
+^Z^Zvalue-history-begin @var{history-number} @var{value-flags}
+@var{history-string}
+^Z^Zvalue-history-value
+@var{the-value}
+^Z^Zvalue-history-end
+@end smallexample
+
+@noindent
+where @var{history-number} is the number it is getting in the value
+history, @var{history-string} is a string, such as @samp{$5 = }, which
+introduces the value to the user, @var{the-value} is the output
+corresponding to the value itself, and @var{value-flags} is @samp{*} for
+a value which can be dereferenced and @samp{-} for a value which cannot.
+
+@findex value-begin
+@findex value-end
+If the value is not added to the value history (it is an invalid float
+or it is printed with the @code{output} command), the annotation is similar:
+
+@smallexample
+^Z^Zvalue-begin @var{value-flags}
+@var{the-value}
+^Z^Zvalue-end
+@end smallexample
+
+@findex arg-begin
+@findex arg-name-end
+@findex arg-value
+@findex arg-end
+When @value{GDBN} prints an argument to a function (for example, in the output
+from the @code{backtrace} command), it annotates it as follows:
+
+@smallexample
+^Z^Zarg-begin
+@var{argument-name}
+^Z^Zarg-name-end
+@var{separator-string}
+^Z^Zarg-value @var{value-flags}
+@var{the-value}
+^Z^Zarg-end
+@end smallexample
+
+@noindent
+where @var{argument-name} is the name of the argument,
+@var{separator-string} is text which separates the name from the value
+for the user's benefit (such as @samp{=}), and @var{value-flags} and
+@var{the-value} have the same meanings as in a
+@code{value-history-begin} annotation.
+
+@findex field-begin
+@findex field-name-end
+@findex field-value
+@findex field-end
+When printing a structure, @value{GDBN} annotates it as follows:
+
+@smallexample
+^Z^Zfield-begin @var{value-flags}
+@var{field-name}
+^Z^Zfield-name-end
+@var{separator-string}
+^Z^Zfield-value
+@var{the-value}
+^Z^Zfield-end
+@end smallexample
+
+@noindent
+where @var{field-name} is the name of the field, @var{separator-string}
+is text which separates the name from the value for the user's benefit
+(such as @samp{=}), and @var{value-flags} and @var{the-value} have the
+same meanings as in a @code{value-history-begin} annotation.
+
+When printing an array, @value{GDBN} annotates it as follows:
+
+@smallexample
+^Z^Zarray-section-begin @var{array-index} @var{value-flags}
+@end smallexample
+
+@noindent
+where @var{array-index} is the index of the first element being
+annotated and @var{value-flags} has the same meaning as in a
+@code{value-history-begin} annotation.  This is followed by any number
+of elements, where is element can be either a single element:
+
+@findex elt
+@smallexample
+@samp{,} @var{whitespace}         ; @r{omitted for the first element}
+@var{the-value}
+^Z^Zelt
+@end smallexample
+
+or a repeated element
+
+@findex elt-rep
+@findex elt-rep-end
+@smallexample
+@samp{,} @var{whitespace}         ; @r{omitted for the first element}
+@var{the-value}
+^Z^Zelt-rep @var{number-of-repetitions}
+@var{repetition-string}
+^Z^Zelt-rep-end
+@end smallexample
+
+In both cases, @var{the-value} is the output for the value of the
+element and @var{whitespace} can contain spaces, tabs, and newlines.  In
+the repeated case, @var{number-of-repetitions} is the number of
+consecutive array elements which contain that value, and
+@var{repetition-string} is a string which is designed to convey to the
+user that repetition is being depicted.
+
+@findex array-section-end
+Once all the array elements have been output, the array annotation is
+ended with
+
+@smallexample
+^Z^Zarray-section-end
+@end smallexample
+
+@node Frame Annotations
+@chapter Frames
+
+@emph{Value Annotations have been removed.  @sc{gdb/mi} instead provides
+a number of frame commands.}
+
+@emph{Frame annotations are no longer available.  The @sc{gdb/mi}
+provides @samp{-stack-list-arguments}, @samp{-stack-list-locals}, and
+@samp{-stack-list-frames} commands.}
+
+@cindex annotations for frames
+Whenever @value{GDBN} prints a frame, it annotates it.  For example, this applies
+to frames printed when @value{GDBN} stops, output from commands such as
+@code{backtrace} or @code{up}, etc.
+
+@findex frame-begin
+The frame annotation begins with
+
+@smallexample
+^Z^Zframe-begin @var{level} @var{address}
+@var{level-string}
+@end smallexample
+
+@noindent
+where @var{level} is the number of the frame (0 is the innermost frame,
+and other frames have positive numbers), @var{address} is the address of
+the code executing in that frame, and @var{level-string} is a string
+designed to convey the level to the user.  @var{address} is in the form
+@samp{0x} followed by one or more lowercase hex digits (note that this
+does not depend on the language).  The frame ends with
+
+@findex frame-end
+@smallexample
+^Z^Zframe-end
+@end smallexample
+
+Between these annotations is the main body of the frame, which can
+consist of
+
+@itemize @bullet
+@item
+@findex function-call
+@smallexample
+^Z^Zfunction-call
+@var{function-call-string}
+@end smallexample
+
+where @var{function-call-string} is text designed to convey to the user
+that this frame is associated with a function call made by @value{GDBN} to a
+function in the program being debugged.
+
+@item
+@findex signal-handler-caller
+@smallexample
+^Z^Zsignal-handler-caller
+@var{signal-handler-caller-string}
+@end smallexample
+
+where @var{signal-handler-caller-string} is text designed to convey to
+the user that this frame is associated with whatever mechanism is used
+by this operating system to call a signal handler (it is the frame which
+calls the signal handler, not the frame for the signal handler itself).
+
+@item
+A normal frame.
+
+@findex frame-address
+@findex frame-address-end
+This can optionally (depending on whether this is thought of as
+interesting information for the user to see) begin with
+
+@smallexample
+^Z^Zframe-address
+@var{address}
+^Z^Zframe-address-end
+@var{separator-string}
+@end smallexample
+
+where @var{address} is the address executing in the frame (the same
+address as in the @code{frame-begin} annotation, but printed in a form
+which is intended for user consumption---in particular, the syntax varies
+depending on the language), and @var{separator-string} is a string
+intended to separate this address from what follows for the user's
+benefit.
+
+@findex frame-function-name
+@findex frame-args
+Then comes
+
+@smallexample
+^Z^Zframe-function-name
+@var{function-name}
+^Z^Zframe-args
+@var{arguments}
+@end smallexample
+
+where @var{function-name} is the name of the function executing in the
+frame, or @samp{??} if not known, and @var{arguments} are the arguments
+to the frame, with parentheses around them (each argument is annotated
+individually as well, @pxref{Value Annotations}).
+
+@findex frame-source-begin
+@findex frame-source-file
+@findex frame-source-file-end
+@findex frame-source-line
+@findex frame-source-end
+If source information is available, a reference to it is then printed:
+
+@smallexample
+^Z^Zframe-source-begin
+@var{source-intro-string}
+^Z^Zframe-source-file
+@var{filename}
+^Z^Zframe-source-file-end
+:
+^Z^Zframe-source-line
+@var{line-number}
+^Z^Zframe-source-end
+@end smallexample
+
+where @var{source-intro-string} separates for the user's benefit the
+reference from the text which precedes it, @var{filename} is the name of
+the source file, and @var{line-number} is the line number within that
+file (the first line is line 1).
+
+@findex frame-where
+If @value{GDBN} prints some information about where the frame is from (which
+library, which load segment, etc.; currently only done on the RS/6000),
+it is annotated with
+
+@smallexample
+^Z^Zframe-where
+@var{information}
+@end smallexample
+
+Then, if source is to actually be displayed for this frame (for example,
+this is not true for output from the @code{backtrace} command), then a
+@code{source} annotation (@pxref{Source Annotations}) is displayed.  Unlike
+most annotations, this is output instead of the normal text which would be
+output, not in addition.
+@end itemize
+
+@node Displays
+@chapter Displays
+
+@emph{Display Annotations have been removed.  @sc{gdb/mi} instead
+provides Variable Objects.}
+
+@findex display-begin
+@findex display-number-end
+@findex display-format
+@findex display-expression
+@findex display-expression-end
+@findex display-value
+@findex display-end
+@cindex annotations for display
+When @value{GDBN} is told to display something using the @code{display} command,
+the results of the display are annotated:
+
+@smallexample
+^Z^Zdisplay-begin
+@var{number}
+^Z^Zdisplay-number-end
+@var{number-separator}
+^Z^Zdisplay-format
+@var{format}
+^Z^Zdisplay-expression
+@var{expression}
+^Z^Zdisplay-expression-end
+@var{expression-separator}
+^Z^Zdisplay-value
+@var{value}
+^Z^Zdisplay-end
+@end smallexample
+
+@noindent
+where @var{number} is the number of the display, @var{number-separator}
+is intended to separate the number from what follows for the user,
+@var{format} includes information such as the size, format, or other
+information about how the value is being displayed, @var{expression} is
+the expression being displayed, @var{expression-separator} is intended
+to separate the expression from the text that follows for the user,
+and @var{value} is the actual value being displayed.
+
+@node Prompting
+@chapter Annotation for @value{GDBN} Input
+
+@cindex annotations for prompts
+When @value{GDBN} prompts for input, it annotates this fact so it is possible
+to know when to send output, when the output from a given command is
+over, etc.
+
+Different kinds of input each have a different @dfn{input type}.  Each
+input type has three annotations: a @code{pre-} annotation, which
+denotes the beginning of any prompt which is being output, a plain
+annotation, which denotes the end of the prompt, and then a @code{post-}
+annotation which denotes the end of any echo which may (or may not) be
+associated with the input.  For example, the @code{prompt} input type
+features the following annotations:
+
+@smallexample
+^Z^Zpre-prompt
+^Z^Zprompt
+^Z^Zpost-prompt
+@end smallexample
+
+The input types are
+
+@table @code
+@findex pre-prompt
+@findex prompt
+@findex post-prompt
+@item prompt
+When @value{GDBN} is prompting for a command (the main @value{GDBN} prompt).
+
+@findex pre-commands
+@findex commands
+@findex post-commands
+@item commands
+When @value{GDBN} prompts for a set of commands, like in the @code{commands}
+command.  The annotations are repeated for each command which is input.
+
+@findex pre-overload-choice
+@findex overload-choice
+@findex post-overload-choice
+@item overload-choice
+When @value{GDBN} wants the user to select between various overloaded functions.
+
+@findex pre-query
+@findex query
+@findex post-query
+@item query
+When @value{GDBN} wants the user to confirm a potentially dangerous operation.
+
+@findex pre-prompt-for-continue
+@findex prompt-for-continue
+@findex post-prompt-for-continue
+@item prompt-for-continue
+When @value{GDBN} is asking the user to press return to continue.  Note: Don't
+expect this to work well; instead use @code{set height 0} to disable
+prompting.  This is because the counting of lines is buggy in the
+presence of annotations.
+@end table
+
+@node Errors
+@chapter Errors
+@cindex annotations for errors, warnings and interrupts
+
+@findex quit
+@smallexample
+^Z^Zquit
+@end smallexample
+
+This annotation occurs right before @value{GDBN} responds to an interrupt.
+
+@findex error
+@smallexample
+^Z^Zerror
+@end smallexample
+
+This annotation occurs right before @value{GDBN} responds to an error.
+
+Quit and error annotations indicate that any annotations which @value{GDBN} was
+in the middle of may end abruptly.  For example, if a
+@code{value-history-begin} annotation is followed by a @code{error}, one
+cannot expect to receive the matching @code{value-history-end}.  One
+cannot expect not to receive it either, however; an error annotation
+does not necessarily mean that @value{GDBN} is immediately returning all the way
+to the top level.
+
+@findex error-begin
+A quit or error annotation may be preceded by
+
+@smallexample
+^Z^Zerror-begin
+@end smallexample
+
+Any output between that and the quit or error annotation is the error
+message.
+
+Warning messages are not yet annotated.
+@c If we want to change that, need to fix warning(), type_error(),
+@c range_error(), and possibly other places.
+
+@node Breakpoint Info
+@chapter Information on Breakpoints
+
+@emph{Breakpoint Annotations have been removed.  @sc{gdb/mi} instead
+provides breakpoint commands.}
+
+@cindex annotations for breakpoints
+The output from the @code{info breakpoints} command is annotated as follows:
+
+@findex breakpoints-headers
+@findex breakpoints-table
+@smallexample
+^Z^Zbreakpoints-headers
+@var{header-entry}
+^Z^Zbreakpoints-table
+@end smallexample
+
+@noindent
+where @var{header-entry} has the same syntax as an entry (see below) but
+instead of containing data, it contains strings which are intended to
+convey the meaning of each field to the user.  This is followed by any
+number of entries.  If a field does not apply for this entry, it is
+omitted.  Fields may contain trailing whitespace.  Each entry consists
+of:
+
+@findex record
+@findex field
+@smallexample
+^Z^Zrecord
+^Z^Zfield 0
+@var{number}
+^Z^Zfield 1
+@var{type}
+^Z^Zfield 2
+@var{disposition}
+^Z^Zfield 3
+@var{enable}
+^Z^Zfield 4
+@var{address}
+^Z^Zfield 5
+@var{what}
+^Z^Zfield 6
+@var{frame}
+^Z^Zfield 7
+@var{condition}
+^Z^Zfield 8
+@var{ignore-count}
+^Z^Zfield 9
+@var{commands}
+@end smallexample
+
+Note that @var{address} is intended for user consumption---the syntax
+varies depending on the language.
+
+The output ends with
+
+@findex breakpoints-table-end
+@smallexample
+^Z^Zbreakpoints-table-end
+@end smallexample
+
+@node Invalidation
+@chapter Invalidation Notices
+
+@cindex annotations for invalidation messages
+The following annotations say that certain pieces of state may have
+changed.
+
+@table @code
+@findex frames-invalid
+@item ^Z^Zframes-invalid
+
+The frames (for example, output from the @code{backtrace} command) may
+have changed.
+
+@findex breakpoints-invalid
+@item ^Z^Zbreakpoints-invalid
+
+The breakpoints may have changed.  For example, the user just added or
+deleted a breakpoint.
+@end table
+
+@node Annotations for Running
+@chapter Running the Program
+@cindex annotations for running programs
+
+@findex starting
+@findex stopping
+When the program starts executing due to a @value{GDBN} command such as
+@code{step} or @code{continue}, 
+
+@smallexample
+^Z^Zstarting
+@end smallexample
+
+is output.  When the program stops, 
+
+@smallexample
+^Z^Zstopped
+@end smallexample
+
+is output.  Before the @code{stopped} annotation, a variety of
+annotations describe how the program stopped.
+
+@table @code
+@findex exited
+@item ^Z^Zexited @var{exit-status}
+The program exited, and @var{exit-status} is the exit status (zero for
+successful exit, otherwise nonzero).
+
+@findex signalled
+@findex signal-name
+@findex signal-name-end
+@findex signal-string
+@findex signal-string-end
+@item ^Z^Zsignalled
+The program exited with a signal.  After the @code{^Z^Zsignalled}, the
+annotation continues:
+
+@smallexample
+@var{intro-text}
+^Z^Zsignal-name
+@var{name}
+^Z^Zsignal-name-end
+@var{middle-text}
+^Z^Zsignal-string
+@var{string}
+^Z^Zsignal-string-end
+@var{end-text}
+@end smallexample
+
+@noindent
+where @var{name} is the name of the signal, such as @code{SIGILL} or
+@code{SIGSEGV}, and @var{string} is the explanation of the signal, such
+as @code{Illegal Instruction} or @code{Segmentation fault}.
+@var{intro-text}, @var{middle-text}, and @var{end-text} are for the
+user's benefit and have no particular format.
+
+@findex signal
+@item ^Z^Zsignal
+The syntax of this annotation is just like @code{signalled}, but @value{GDBN} is
+just saying that the program received the signal, not that it was
+terminated with it.
+
+@findex breakpoint
+@item ^Z^Zbreakpoint @var{number}
+The program hit breakpoint number @var{number}.
+
+@findex watchpoint
+@item ^Z^Zwatchpoint @var{number}
+The program hit watchpoint number @var{number}.
+@end table
+
+@node Source Annotations
+@chapter Displaying Source
+@cindex annotations for source display
+
+@findex source
+The following annotation is used instead of displaying source code:
+
+@smallexample
+^Z^Zsource @var{filename}:@var{line}:@var{character}:@var{middle}:@var{addr}
+@end smallexample
+
+where @var{filename} is an absolute file name indicating which source
+file, @var{line} is the line number within that file (where 1 is the
+first line in the file), @var{character} is the character position
+within the file (where 0 is the first character in the file) (for most
+debug formats this will necessarily point to the beginning of a line),
+@var{middle} is @samp{middle} if @var{addr} is in the middle of the
+line, or @samp{beg} if @var{addr} is at the beginning of the line, and
+@var{addr} is the address in the target program associated with the
+source which is being displayed.  @var{addr} is in the form @samp{0x}
+followed by one or more lowercase hex digits (note that this does not
+depend on the language).
+
+@include fdl.texi
+
+@ignore
+@node Index
+@unnumbered Index
+
+@printindex fn
+@end ignore
+
+@bye
diff --git a/gdb/nto-procfs.c b/gdb/nto-procfs.c
new file mode 100644 (file)
index 0000000..00b4096
--- /dev/null
@@ -0,0 +1,1389 @@
+/* Machine independent support for QNX Neutrino /proc (process file system)
+   for GDB.  Written by Colin Burgess at QNX Software Systems Limited. 
+
+   Copyright 2003 Free Software Foundation, Inc.
+
+   Contributed by QNX Software Systems Ltd.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#include "defs.h"
+
+#include <fcntl.h>
+#include <spawn.h>
+#include <sys/debug.h>
+#include <sys/procfs.h>
+#include <sys/neutrino.h>
+#include <sys/syspage.h>
+#include "gdb_dirent.h"
+#include <sys/netmgr.h>
+
+#include "gdb_string.h"
+#include "gdbcore.h"
+#include "inferior.h"
+#include "target.h"
+#include "objfiles.h"
+#include "gdbthread.h"
+#include "nto-tdep.h"
+#include "command.h"
+#include "regcache.h"
+
+#define NULL_PID               0
+#define _DEBUG_FLAG_TRACE      (_DEBUG_FLAG_TRACE_EXEC|_DEBUG_FLAG_TRACE_RD|\
+               _DEBUG_FLAG_TRACE_WR|_DEBUG_FLAG_TRACE_MODIFY)
+
+static struct target_ops procfs_ops;
+
+int ctl_fd;
+
+static void (*ofunc) ();
+
+static procfs_run run;
+
+static void procfs_open (char *, int);
+
+static int procfs_can_run (void);
+
+static ptid_t procfs_wait (ptid_t, struct target_waitstatus *);
+
+static int procfs_xfer_memory (CORE_ADDR, char *, int, int,
+                              struct mem_attrib *attrib,
+                              struct target_ops *);
+
+static void procfs_fetch_registers (int);
+
+static void notice_signals (void);
+
+static void init_procfs_ops (void);
+
+static ptid_t do_attach (ptid_t ptid);
+
+static int procfs_can_use_hw_breakpoint (int, int, int);
+
+static int procfs_insert_hw_breakpoint (CORE_ADDR, char *);
+
+static int procfs_remove_hw_breakpoint (CORE_ADDR addr, char *);
+
+static int procfs_insert_hw_watchpoint (CORE_ADDR addr, int len, int type);
+
+static int procfs_remove_hw_watchpoint (CORE_ADDR addr, int len, int type);
+
+static int procfs_stopped_by_watchpoint (void);
+
+/* These two globals are only ever set in procfs_open(), but are
+   referenced elsewhere.  'nto_procfs_node' is a flag used to say
+   whether we are local, or we should get the current node descriptor
+   for the remote QNX node.  */
+static char nto_procfs_path[PATH_MAX] = { "/proc" };
+static unsigned nto_procfs_node = ND_LOCAL_NODE;
+
+/* Return the current QNX Node, or error out.  This is a simple
+   wrapper for the netmgr_strtond() function.  The reason this
+   is required is because QNX node descriptors are transient so
+   we have to re-acquire them every time.  */
+static unsigned
+nto_node(void)
+{
+  unsigned node;
+
+  if (ND_NODE_CMP(nto_procfs_node, ND_LOCAL_NODE) == 0)
+    return ND_LOCAL_NODE;
+
+  node = netmgr_strtond(nto_procfs_path,0);
+  if (node == -1)
+      error ("Lost the QNX node.  Debug session probably over.");
+
+  return (node);
+}
+
+/* This is called when we call 'target procfs <arg>' from the (gdb) prompt.
+   For QNX6 (nto), the only valid arg will be a QNX node string, 
+   eg: "/net/some_node".  If arg is not a valid QNX node, we will
+   default to local.  */
+static void
+procfs_open (char *arg, int from_tty)
+{
+  char *nodestr;
+  char *endstr;
+  char buffer[50];
+  int fd, total_size;
+  procfs_sysinfo *sysinfo;
+
+  /* Set the default node used for spawning to this one,
+     and only override it if there is a valid arg.  */
+
+  nto_procfs_node = ND_LOCAL_NODE;
+  nodestr = arg ? xstrdup (arg) : arg;
+
+  init_thread_list ();
+
+  if (nodestr)
+    {
+      nto_procfs_node = netmgr_strtond (nodestr, &endstr);
+      if (nto_procfs_node == -1)
+       {
+         if (errno == ENOTSUP)
+           printf_filtered ("QNX Net Manager not found.\n");
+         printf_filtered ("Invalid QNX node %s: error %d (%s).\n", nodestr,
+                          errno, safe_strerror (errno));
+         xfree (nodestr);
+         nodestr = NULL;
+         nto_procfs_node = ND_LOCAL_NODE;
+       }
+      else if (*endstr)
+       {
+         if (*(endstr - 1) == '/')
+           *(endstr - 1) = 0;
+         else
+           *endstr = 0;
+       }
+    }
+  snprintf (nto_procfs_path, PATH_MAX - 1, "%s%s", nodestr ? nodestr : "", "/proc");
+  if (nodestr)
+    xfree (nodestr);
+
+  fd = open (nto_procfs_path, O_RDONLY);
+  if (fd == -1)
+    {
+      printf_filtered ("Error opening %s : %d (%s)\n", nto_procfs_path, errno,
+                      safe_strerror (errno));
+      error ("Invalid procfs arg");
+    }
+
+  sysinfo = (void *) buffer;
+  if (devctl (fd, DCMD_PROC_SYSINFO, sysinfo, sizeof buffer, 0) != EOK)
+    {
+      printf_filtered ("Error getting size: %d (%s)\n", errno,
+                      safe_strerror (errno));
+      close (fd);
+      error ("Devctl failed.");
+    }
+  else
+    {
+      total_size = sysinfo->total_size;
+      sysinfo = alloca (total_size);
+      if (!sysinfo)
+       {
+         printf_filtered ("Memory error: %d (%s)\n", errno,
+                          safe_strerror (errno));
+         close (fd);
+         error ("alloca failed.");
+       }
+      else
+       {
+         if (devctl (fd, DCMD_PROC_SYSINFO, sysinfo, total_size, 0) != EOK)
+           {
+             printf_filtered ("Error getting sysinfo: %d (%s)\n", errno,
+                              safe_strerror (errno));
+             close (fd);
+             error ("Devctl failed.");
+           }
+         else
+           {
+             if (sysinfo->type !=
+                 nto_map_arch_to_cputype (TARGET_ARCHITECTURE->arch_name))
+               {
+                 close (fd);
+                 error ("Invalid target CPU.");
+               }
+           }
+       }
+    }
+  close (fd);
+  printf_filtered ("Debugging using %s\n", nto_procfs_path);
+}
+
+static void
+procfs_set_thread (ptid_t ptid)
+{
+  pid_t tid;
+
+  tid = ptid_get_tid (ptid);
+  devctl (ctl_fd, DCMD_PROC_CURTHREAD, &tid, sizeof (tid), 0);
+}
+
+/*  Return nonzero if the thread TH is still alive.  */
+static int
+procfs_thread_alive (ptid_t ptid)
+{
+  pid_t tid;
+
+  tid = ptid_get_tid (ptid);
+  if (devctl (ctl_fd, DCMD_PROC_CURTHREAD, &tid, sizeof (tid), 0) == EOK)
+    return 1;
+  return 0;
+}
+
+void
+procfs_find_new_threads (void)
+{
+  procfs_status status;
+  pid_t pid;
+  ptid_t ptid;
+
+  if (ctl_fd == -1)
+    return;
+
+  pid = ptid_get_pid (inferior_ptid);
+
+  for (status.tid = 1;; ++status.tid)
+    {
+      if (devctl (ctl_fd, DCMD_PROC_TIDSTATUS, &status, sizeof (status), 0)
+         != EOK && status.tid != 0)
+       break;
+      ptid = ptid_build (pid, 0, status.tid);
+      if (!in_thread_list (ptid))
+       add_thread (ptid);
+    }
+  return;
+}
+
+void
+procfs_pidlist (char *args, int from_tty)
+{
+  DIR *dp = NULL;
+  struct dirent *dirp = NULL;
+  int fd = -1;
+  char buf[512];
+  procfs_info *pidinfo = NULL;
+  procfs_debuginfo *info = NULL;
+  procfs_status *status = NULL;
+  pid_t num_threads = 0;
+  pid_t pid;
+  char name[512];
+
+  dp = opendir (nto_procfs_path);
+  if (dp == NULL)
+    {
+      fprintf_unfiltered (gdb_stderr, "failed to opendir \"%s\" - %d (%s)",
+             nto_procfs_path, errno, safe_strerror (errno));
+      return;
+    }
+
+  /* Start scan at first pid.  */
+  rewinddir (dp);
+
+  do
+    {
+      /* Get the right pid and procfs path for the pid.  */
+      do
+       {
+         dirp = readdir (dp);
+         if (dirp == NULL)
+           {
+             closedir (dp);
+             return;
+           }
+         snprintf (buf, 511, "%s/%s/as", nto_procfs_path, dirp->d_name);
+         pid = atoi (dirp->d_name);
+       }
+      while (pid == 0);
+
+      /* Open the procfs path. */
+      fd = open (buf, O_RDONLY);
+      if (fd == -1)
+       {
+         fprintf_unfiltered (gdb_stderr, "failed to open %s - %d (%s)\n",
+                 buf, errno, safe_strerror (errno));
+         closedir (dp);
+         return;
+       }
+
+      pidinfo = (procfs_info *) buf;
+      if (devctl (fd, DCMD_PROC_INFO, pidinfo, sizeof (buf), 0) != EOK)
+       {
+         fprintf_unfiltered (gdb_stderr,
+                 "devctl DCMD_PROC_INFO failed - %d (%s)\n", errno,
+                 safe_strerror (errno));
+         break;
+       }
+      num_threads = pidinfo->num_threads;
+
+      info = (procfs_debuginfo *) buf;
+      if (devctl (fd, DCMD_PROC_MAPDEBUG_BASE, info, sizeof (buf), 0) != EOK)
+       strcpy (name, "unavailable");
+      else
+       strcpy (name, info->path);
+
+      /* Collect state info on all the threads.  */
+      status = (procfs_status *) buf;
+      for (status->tid = 1; status->tid <= num_threads; status->tid++)
+       {
+         if (devctl (fd, DCMD_PROC_TIDSTATUS, status, sizeof (buf), 0) != EOK
+             && status->tid != 0)
+           break;
+         if (status->tid != 0)
+           printf_filtered ("%s - %d/%d\n", name, pid, status->tid);
+       }
+      close (fd);
+    }
+  while (dirp != NULL);
+
+  close (fd);
+  closedir (dp);
+  return;
+}
+
+void
+procfs_meminfo (char *args, int from_tty)
+{
+  procfs_mapinfo *mapinfos = NULL;
+  static int num_mapinfos = 0;
+  procfs_mapinfo *mapinfo_p, *mapinfo_p2;
+  int flags = ~0, err, num, i, j;
+
+  struct
+  {
+    procfs_debuginfo info;
+    char buff[_POSIX_PATH_MAX];
+  } map;
+
+  struct info
+  {
+    unsigned addr;
+    unsigned size;
+    unsigned flags;
+    unsigned debug_vaddr;
+    unsigned long long offset;
+  };
+
+  struct printinfo
+  {
+    unsigned long long ino;
+    unsigned dev;
+    struct info text;
+    struct info data;
+    char name[256];
+  } printme;
+
+  /* Get the number of map entrys.  */
+  err = devctl (ctl_fd, DCMD_PROC_MAPINFO, NULL, 0, &num);
+  if (err != EOK)
+    {
+      printf ("failed devctl num mapinfos - %d (%s)\n", err, safe_strerror (err));
+      return;
+    }
+
+  mapinfos = xmalloc (num * sizeof (procfs_mapinfo));
+
+  num_mapinfos = num;
+  mapinfo_p = mapinfos;
+
+  /* Fill the map entrys.  */
+  err = devctl (ctl_fd, DCMD_PROC_MAPINFO, mapinfo_p, num
+               * sizeof (procfs_mapinfo), &num);
+  if (err != EOK)
+    {
+      printf ("failed devctl mapinfos - %d (%s)\n", err, safe_strerror (err));
+      xfree (mapinfos);
+      return;
+    }
+
+  num = min (num, num_mapinfos);
+
+  /* Run through the list of mapinfos, and store the data and text info
+     so we can print it at the bottom of the loop.  */
+  for (mapinfo_p = mapinfos, i = 0; i < num; i++, mapinfo_p++)
+    {
+      if (!(mapinfo_p->flags & flags))
+       mapinfo_p->ino = 0;
+
+      if (mapinfo_p->ino == 0) /* Already visited.  */
+       continue;
+
+      map.info.vaddr = mapinfo_p->vaddr;
+
+      err = devctl (ctl_fd, DCMD_PROC_MAPDEBUG, &map, sizeof (map), 0);
+      if (err != EOK)
+       continue;
+
+      memset (&printme, 0, sizeof printme);
+      printme.dev = mapinfo_p->dev;
+      printme.ino = mapinfo_p->ino;
+      printme.text.addr = mapinfo_p->vaddr;
+      printme.text.size = mapinfo_p->size;
+      printme.text.flags = mapinfo_p->flags;
+      printme.text.offset = mapinfo_p->offset;
+      printme.text.debug_vaddr = map.info.vaddr;
+      strcpy (printme.name, map.info.path);
+
+      /* Check for matching data.  */
+      for (mapinfo_p2 = mapinfos, j = 0; j < num; j++, mapinfo_p2++)
+       {
+         if (mapinfo_p2->vaddr != mapinfo_p->vaddr
+             && mapinfo_p2->ino == mapinfo_p->ino
+             && mapinfo_p2->dev == mapinfo_p->dev)
+           {
+             map.info.vaddr = mapinfo_p2->vaddr;
+             err =
+               devctl (ctl_fd, DCMD_PROC_MAPDEBUG, &map, sizeof (map), 0);
+             if (err != EOK)
+               continue;
+
+             if (strcmp (map.info.path, printme.name))
+               continue;
+
+             /* Lower debug_vaddr is always text, if nessessary, swap.  */
+             if ((int) map.info.vaddr < (int) printme.text.debug_vaddr)
+               {
+                 memcpy (&(printme.data), &(printme.text),
+                         sizeof (printme.data));
+                 printme.text.addr = mapinfo_p2->vaddr;
+                 printme.text.size = mapinfo_p2->size;
+                 printme.text.flags = mapinfo_p2->flags;
+                 printme.text.offset = mapinfo_p2->offset;
+                 printme.text.debug_vaddr = map.info.vaddr;
+               }
+             else
+               {
+                 printme.data.addr = mapinfo_p2->vaddr;
+                 printme.data.size = mapinfo_p2->size;
+                 printme.data.flags = mapinfo_p2->flags;
+                 printme.data.offset = mapinfo_p2->offset;
+                 printme.data.debug_vaddr = map.info.vaddr;
+               }
+             mapinfo_p2->ino = 0;
+           }
+       }
+      mapinfo_p->ino = 0;
+
+      printf_filtered ("%s\n", printme.name);
+      printf_filtered ("\ttext=%08x bytes @ 0x%08x\n", printme.text.size,
+                      printme.text.addr);
+      printf_filtered ("\t\tflags=%08x\n", printme.text.flags);
+      printf_filtered ("\t\tdebug=%08x\n", printme.text.debug_vaddr);
+      printf_filtered ("\t\toffset=%016llx\n", printme.text.offset);
+      if (printme.data.size)
+       {
+         printf_filtered ("\tdata=%08x bytes @ 0x%08x\n", printme.data.size,
+                          printme.data.addr);
+         printf_filtered ("\t\tflags=%08x\n", printme.data.flags);
+         printf_filtered ("\t\tdebug=%08x\n", printme.data.debug_vaddr);
+         printf_filtered ("\t\toffset=%016llx\n", printme.data.offset);
+       }
+      printf_filtered ("\tdev=0x%x\n", printme.dev);
+      printf_filtered ("\tino=0x%x\n", (unsigned int) printme.ino);
+    }
+  xfree (mapinfos);
+  return;
+}
+
+/* Print status information about what we're accessing.  */
+static void
+procfs_files_info (struct target_ops *ignore)
+{
+  printf_unfiltered ("\tUsing the running image of %s %s via %s.\n",
+                    attach_flag ? "attached" : "child",
+                    target_pid_to_str (inferior_ptid), nto_procfs_path);
+}
+
+/* Mark our target-struct as eligible for stray "run" and "attach" commands.  */
+static int
+procfs_can_run (void)
+{
+  return 1;
+}
+
+/* Attach to process PID, then initialize for debugging it.  */
+static void
+procfs_attach (char *args, int from_tty)
+{
+  char *exec_file;
+  int pid;
+
+  if (!args)
+    error_no_arg ("process-id to attach");
+
+  pid = atoi (args);
+
+  if (pid == getpid ())
+    error ("Attaching GDB to itself is not a good idea...");
+
+  if (from_tty)
+    {
+      exec_file = (char *) get_exec_file (0);
+
+      if (exec_file)
+       printf_unfiltered ("Attaching to program `%s', %s\n", exec_file,
+                          target_pid_to_str (pid_to_ptid (pid)));
+      else
+       printf_unfiltered ("Attaching to %s\n",
+                          target_pid_to_str (pid_to_ptid (pid)));
+
+      gdb_flush (gdb_stdout);
+    }
+  inferior_ptid = do_attach (pid_to_ptid (pid));
+  push_target (&procfs_ops);
+}
+
+static void
+procfs_post_attach (pid_t pid)
+{
+#ifdef SOLIB_CREATE_INFERIOR_HOOK
+  if (exec_bfd)
+    SOLIB_CREATE_INFERIOR_HOOK (pid);
+#endif
+}
+
+static ptid_t
+do_attach (ptid_t ptid)
+{
+  procfs_status status;
+  struct sigevent event;
+  char path[PATH_MAX];
+
+  snprintf (path, PATH_MAX - 1, "%s/%d/as", nto_procfs_path, PIDGET (ptid));
+  ctl_fd = open (path, O_RDWR);
+  if (ctl_fd == -1)
+    error ("Couldn't open proc file %s, error %d (%s)", path, errno,
+          safe_strerror (errno));
+  if (devctl (ctl_fd, DCMD_PROC_STOP, &status, sizeof (status), 0) != EOK)
+    error ("Couldn't stop process");
+
+  /* Define a sigevent for process stopped notification.  */
+  event.sigev_notify = SIGEV_SIGNAL_THREAD;
+  event.sigev_signo = SIGUSR1;
+  event.sigev_code = 0;
+  event.sigev_value.sival_ptr = NULL;
+  event.sigev_priority = -1;
+  devctl (ctl_fd, DCMD_PROC_EVENT, &event, sizeof (event), 0);
+
+  if (devctl (ctl_fd, DCMD_PROC_STATUS, &status, sizeof (status), 0) == EOK
+      && status.flags & _DEBUG_FLAG_STOPPED)
+    SignalKill (nto_node(), PIDGET (ptid), 0, SIGCONT, 0, 0);
+  attach_flag = 1;
+  nto_init_solib_absolute_prefix ();
+  return ptid;
+}
+
+/* Ask the user what to do when an interrupt is received.  */
+static void
+interrupt_query (void)
+{
+  target_terminal_ours ();
+
+  if (query ("Interrupted while waiting for the program.\n\
+Give up (and stop debugging it)? "))
+    {
+      target_mourn_inferior ();
+      throw_exception (RETURN_QUIT);
+    }
+
+  target_terminal_inferior ();
+}
+
+/* The user typed ^C twice.  */
+static void
+nto_interrupt_twice (int signo)
+{
+  signal (signo, ofunc);
+  interrupt_query ();
+  signal (signo, nto_interrupt_twice);
+}
+
+static void
+nto_interrupt (int signo)
+{
+  /* If this doesn't work, try more severe steps.  */
+  signal (signo, nto_interrupt_twice);
+
+  target_stop ();
+}
+
+static ptid_t
+procfs_wait (ptid_t ptid, struct target_waitstatus *ourstatus)
+{
+  sigset_t set;
+  siginfo_t info;
+  procfs_status status;
+  static int exit_signo = 0;   /* To track signals that cause termination.  */
+
+  ourstatus->kind = TARGET_WAITKIND_SPURIOUS;
+
+  if (ptid_equal (inferior_ptid, null_ptid))
+    {
+      ourstatus->kind = TARGET_WAITKIND_STOPPED;
+      ourstatus->value.sig = TARGET_SIGNAL_0;
+      exit_signo = 0;
+      return null_ptid;
+    }
+
+  sigemptyset (&set);
+  sigaddset (&set, SIGUSR1);
+
+  devctl (ctl_fd, DCMD_PROC_STATUS, &status, sizeof (status), 0);
+  while (!(status.flags & _DEBUG_FLAG_ISTOP))
+    {
+      ofunc = (void (*)()) signal (SIGINT, nto_interrupt);
+      sigwaitinfo (&set, &info);
+      signal (SIGINT, ofunc);
+      devctl (ctl_fd, DCMD_PROC_STATUS, &status, sizeof (status), 0);
+    }
+
+  if (status.flags & _DEBUG_FLAG_SSTEP)
+    {
+      ourstatus->kind = TARGET_WAITKIND_STOPPED;
+      ourstatus->value.sig = TARGET_SIGNAL_TRAP;
+    }
+  /* Was it a breakpoint?  */
+  else if (status.flags & _DEBUG_FLAG_TRACE)
+    {
+      ourstatus->kind = TARGET_WAITKIND_STOPPED;
+      ourstatus->value.sig = TARGET_SIGNAL_TRAP;
+    }
+  else if (status.flags & _DEBUG_FLAG_ISTOP)
+    {
+      switch (status.why)
+       {
+       case _DEBUG_WHY_SIGNALLED:
+         ourstatus->kind = TARGET_WAITKIND_STOPPED;
+         ourstatus->value.sig =
+           target_signal_from_host (status.info.si_signo);
+         exit_signo = 0;
+         break;
+       case _DEBUG_WHY_FAULTED:
+         ourstatus->kind = TARGET_WAITKIND_STOPPED;
+         if (status.info.si_signo == SIGTRAP)
+           {
+             ourstatus->value.sig = 0;
+             exit_signo = 0;
+           }
+         else
+           {
+             ourstatus->value.sig =
+               target_signal_from_host (status.info.si_signo);
+             exit_signo = ourstatus->value.sig;
+           }
+         break;
+
+       case _DEBUG_WHY_TERMINATED:
+         {
+           int waitval = 0;
+
+           waitpid (PIDGET (inferior_ptid), &waitval, WNOHANG);
+           if (exit_signo)
+             {
+               /* Abnormal death.  */
+               ourstatus->kind = TARGET_WAITKIND_SIGNALLED;
+               ourstatus->value.sig = exit_signo;
+             }
+           else
+             {
+               /* Normal death.  */
+               ourstatus->kind = TARGET_WAITKIND_EXITED;
+               ourstatus->value.integer = WEXITSTATUS (waitval);
+             }
+           exit_signo = 0;
+           break;
+         }
+
+       case _DEBUG_WHY_REQUESTED:
+         /* We are assuming a requested stop is due to a SIGINT.  */
+         ourstatus->kind = TARGET_WAITKIND_STOPPED;
+         ourstatus->value.sig = TARGET_SIGNAL_INT;
+         exit_signo = 0;
+         break;
+       }
+    }
+
+  return inferior_ptid;
+}
+
+/* Read the current values of the inferior's registers, both the
+   general register set and floating point registers (if supported)
+   and update gdb's idea of their current values.  */
+static void
+procfs_fetch_registers (int regno)
+{
+  union
+  {
+    procfs_greg greg;
+    procfs_fpreg fpreg;
+    procfs_altreg altreg;
+  }
+  reg;
+  int regsize;
+
+  procfs_set_thread (inferior_ptid);
+  if (devctl (ctl_fd, DCMD_PROC_GETGREG, &reg, sizeof (reg), &regsize) == EOK)
+    nto_supply_gregset ((char *) &reg.greg);
+  if (devctl (ctl_fd, DCMD_PROC_GETFPREG, &reg, sizeof (reg), &regsize)
+      == EOK)
+    nto_supply_fpregset ((char *) &reg.fpreg);
+  if (devctl (ctl_fd, DCMD_PROC_GETALTREG, &reg, sizeof (reg), &regsize)
+      == EOK)
+    nto_supply_altregset ((char *) &reg.altreg);
+}
+
+/* Copy LEN bytes to/from inferior's memory starting at MEMADDR
+   from/to debugger memory starting at MYADDR.  Copy from inferior
+   if DOWRITE is zero or to inferior if DOWRITE is nonzero.
+
+   Returns the length copied, which is either the LEN argument or
+   zero.  This xfer function does not do partial moves, since procfs_ops
+   doesn't allow memory operations to cross below us in the target stack
+   anyway.  */
+static int
+procfs_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int dowrite,
+                   struct mem_attrib *attrib, struct target_ops *target)
+{
+  int nbytes = 0;
+
+  if (lseek (ctl_fd, (off_t) memaddr, SEEK_SET) == (off_t) memaddr)
+    {
+      if (dowrite)
+       nbytes = write (ctl_fd, myaddr, len);
+      else
+       nbytes = read (ctl_fd, myaddr, len);
+      if (nbytes < 0)
+       nbytes = 0;
+    }
+  return (nbytes);
+}
+
+/* Take a program previously attached to and detaches it.
+   The program resumes execution and will no longer stop
+   on signals, etc.  We'd better not have left any breakpoints
+   in the program or it'll die when it hits one.  */
+static void
+procfs_detach (char *args, int from_tty)
+{
+  int siggnal = 0;
+
+  if (from_tty)
+    {
+      char *exec_file = get_exec_file (0);
+      if (exec_file == 0)
+       exec_file = "";
+      printf_unfiltered ("Detaching from program: %s %s\n",
+                        exec_file, target_pid_to_str (inferior_ptid));
+      gdb_flush (gdb_stdout);
+    }
+  if (args)
+    siggnal = atoi (args);
+
+  if (siggnal)
+    SignalKill (nto_node(), PIDGET (inferior_ptid), 0, siggnal, 0, 0);
+
+  close (ctl_fd);
+  ctl_fd = -1;
+  init_thread_list ();
+  inferior_ptid = null_ptid;
+  attach_flag = 0;
+  unpush_target (&procfs_ops); /* Pop out of handling an inferior.  */
+}
+
+static int
+procfs_breakpoint (CORE_ADDR addr, int type, int size)
+{
+  procfs_break brk;
+
+  brk.type = type;
+  brk.addr = addr;
+  brk.size = size;
+  errno = devctl (ctl_fd, DCMD_PROC_BREAK, &brk, sizeof (brk), 0);
+  if (errno != EOK)
+    return 1;
+  return 0;
+}
+
+static int
+procfs_insert_breakpoint (CORE_ADDR addr, char *contents_cache)
+{
+  return procfs_breakpoint (addr, _DEBUG_BREAK_EXEC, 0);
+}
+
+static int
+procfs_remove_breakpoint (CORE_ADDR addr, char *contents_cache)
+{
+  return procfs_breakpoint (addr, _DEBUG_BREAK_EXEC, -1);
+}
+
+static int
+procfs_insert_hw_breakpoint (CORE_ADDR addr, char *contents_cache)
+{
+  return procfs_breakpoint (addr, _DEBUG_BREAK_EXEC | _DEBUG_BREAK_HW, 0);
+}
+
+static int
+procfs_remove_hw_breakpoint (CORE_ADDR addr, char *contents_cache)
+{
+  return procfs_breakpoint (addr, _DEBUG_BREAK_EXEC | _DEBUG_BREAK_HW, -1);
+}
+
+static void
+procfs_resume (ptid_t ptid, int step, enum target_signal signo)
+{
+  int signal_to_pass;
+  procfs_status status;
+
+  if (ptid_equal (inferior_ptid, null_ptid))
+    return;
+
+  procfs_set_thread (ptid_equal (ptid, minus_one_ptid) ? inferior_ptid :
+                    ptid);
+
+  run.flags = _DEBUG_RUN_FAULT | _DEBUG_RUN_TRACE;
+  if (step)
+    run.flags |= _DEBUG_RUN_STEP;
+
+  sigemptyset ((sigset_t *) &run.fault);
+  sigaddset ((sigset_t *) &run.fault, FLTBPT);
+  sigaddset ((sigset_t *) &run.fault, FLTTRACE);
+  sigaddset ((sigset_t *) &run.fault, FLTILL);
+  sigaddset ((sigset_t *) &run.fault, FLTPRIV);
+  sigaddset ((sigset_t *) &run.fault, FLTBOUNDS);
+  sigaddset ((sigset_t *) &run.fault, FLTIOVF);
+  sigaddset ((sigset_t *) &run.fault, FLTIZDIV);
+  sigaddset ((sigset_t *) &run.fault, FLTFPE);
+  /* Peter V will be changing this at some point.  */
+  sigaddset ((sigset_t *) &run.fault, FLTPAGE);
+
+  run.flags |= _DEBUG_RUN_ARM;
+
+  sigemptyset (&run.trace);
+  notice_signals ();
+  signal_to_pass = target_signal_to_host (signo);
+
+  if (signal_to_pass)
+    {
+      devctl (ctl_fd, DCMD_PROC_STATUS, &status, sizeof (status), 0);
+      signal_to_pass = target_signal_to_host (signo);
+      if (status.why & (_DEBUG_WHY_SIGNALLED | _DEBUG_WHY_FAULTED))
+       {
+         if (signal_to_pass != status.info.si_signo)
+           {
+             SignalKill (nto_node(), PIDGET (inferior_ptid), 0, signal_to_pass,
+                         0, 0);
+             run.flags |= _DEBUG_RUN_CLRFLT | _DEBUG_RUN_CLRSIG;
+           }
+         else                  /* Let it kill the program without telling us.  */
+           sigdelset (&run.trace, signal_to_pass);
+       }
+    }
+  else
+    run.flags |= _DEBUG_RUN_CLRSIG | _DEBUG_RUN_CLRFLT;
+
+  errno = devctl (ctl_fd, DCMD_PROC_RUN, &run, sizeof (run), 0);
+  if (errno != EOK)
+    {
+      perror ("run error!\n");
+      return;
+    }
+}
+
+static void
+procfs_mourn_inferior (void)
+{
+  if (!ptid_equal (inferior_ptid, null_ptid))
+    {
+      SignalKill (nto_node(), PIDGET (inferior_ptid), 0, SIGKILL, 0, 0);
+      close (ctl_fd);
+    }
+  inferior_ptid = null_ptid;
+  init_thread_list ();
+  unpush_target (&procfs_ops);
+  generic_mourn_inferior ();
+  attach_flag = 0;
+}
+
+/* This function breaks up an argument string into an argument
+   vector suitable for passing to execvp().
+   E.g., on "run a b c d" this routine would get as input
+   the string "a b c d", and as output it would fill in argv with
+   the four arguments "a", "b", "c", "d".  The only additional
+   functionality is simple quoting.  The gdb command:
+       run a "b c d" f
+   will fill in argv with the three args "a", "b c d", "e".  */
+static void
+breakup_args (char *scratch, char **argv)
+{
+  char *pp, *cp = scratch;
+  char quoting = 0;
+
+  for (;;)
+    {
+      /* Scan past leading separators.  */
+      quoting = 0;
+      while (*cp == ' ' || *cp == '\t' || *cp == '\n')
+       cp++;
+
+      /* Break if at end of string.  */
+      if (*cp == '\0')
+       break;
+
+      /* Take an arg.  */
+      if (*cp == '"')
+       {
+         cp++;
+         quoting = strchr (cp, '"') ? 1 : 0;
+       }
+
+      *argv++ = cp;
+
+      /* Scan for next arg separator.  */
+      pp = cp;
+      if (quoting)
+       cp = strchr (pp, '"');
+      if ((cp == NULL) || (!quoting))
+       cp = strchr (pp, ' ');
+      if (cp == NULL)
+       cp = strchr (pp, '\t');
+      if (cp == NULL)
+       cp = strchr (pp, '\n');
+
+      /* No separators => end of string => break.  */
+      if (cp == NULL)
+       {
+         pp = cp;
+         break;
+       }
+
+      /* Replace the separator with a terminator.  */
+      *cp++ = '\0';
+    }
+
+  /* Execv requires a null-terminated arg vector.  */
+  *argv = NULL;
+}
+
+static void
+procfs_create_inferior (char *exec_file, char *allargs, char **env)
+{
+  struct inheritance inherit;
+  pid_t pid;
+  int flags, errn;
+  char **argv, *args;
+  char *in = "", *out = "", *err = "";
+  int fd, fds[3];
+  sigset_t set;
+
+  argv = xmalloc (((strlen (allargs) + 1) / (unsigned) 2 + 2) *
+                 sizeof (*argv));
+  argv[0] = get_exec_file (1);
+  if (!argv[0])
+    {
+      if (exec_file)
+       argv[0] = exec_file;
+      else
+       return;
+    }
+
+  args = xstrdup (allargs);
+  breakup_args (args, exec_file ? &argv[1] : &argv[0]);
+
+  argv = nto_parse_redirection (argv, &in, &out, &err);
+
+  fds[0] = STDIN_FILENO;
+  fds[1] = STDOUT_FILENO;
+  fds[2] = STDERR_FILENO;
+
+  /* If the user specified I/O via gdb's --tty= arg, use it, but only
+     if the i/o is not also being specified via redirection.  */
+  if (inferior_io_terminal)
+    {
+      if (!in[0])
+       in = inferior_io_terminal;
+      if (!out[0])
+       out = inferior_io_terminal;
+      if (!err[0])
+       err = inferior_io_terminal;
+    }
+
+  if (in[0])
+    {
+      fd = open (in, O_RDONLY);
+      if (fd == -1)
+       perror (in);
+      else
+       fds[0] = fd;
+    }
+  if (out[0])
+    {
+      fd = open (out, O_WRONLY);
+      if (fd == -1)
+       perror (out);
+      else
+       fds[1] = fd;
+    }
+  if (err[0])
+    {
+      fd = open (err, O_WRONLY);
+      if (fd == -1)
+       perror (err);
+      else
+       fds[2] = fd;
+    }
+
+  /* Clear any pending SIGUSR1's but keep the behavior the same.  */
+  signal (SIGUSR1, signal (SIGUSR1, SIG_IGN));
+
+  sigemptyset (&set);
+  sigaddset (&set, SIGUSR1);
+  sigprocmask (SIG_UNBLOCK, &set, NULL);
+
+  memset (&inherit, 0, sizeof (inherit));
+
+  if (ND_NODE_CMP (nto_procfs_node, ND_LOCAL_NODE) != 0)
+    {
+      inherit.nd = nto_node();
+      inherit.flags |= SPAWN_SETND;
+      inherit.flags &= ~SPAWN_EXEC;
+    }
+  inherit.flags |= SPAWN_SETGROUP | SPAWN_HOLD;
+  inherit.pgroup = SPAWN_NEWPGROUP;
+  pid = spawnp (argv[0], 3, fds, &inherit, argv,
+               ND_NODE_CMP (nto_procfs_node, ND_LOCAL_NODE) == 0 ? env : 0);
+  xfree (args);
+
+  sigprocmask (SIG_BLOCK, &set, NULL);
+
+  if (pid == -1)
+    error ("Error spawning %s: %d (%s)", argv[0], errno, safe_strerror (errno));
+
+  if (fds[0] != STDIN_FILENO)
+    close (fds[0]);
+  if (fds[1] != STDOUT_FILENO)
+    close (fds[1]);
+  if (fds[2] != STDERR_FILENO)
+    close (fds[2]);
+
+  inferior_ptid = do_attach (pid_to_ptid (pid));
+
+  attach_flag = 0;
+  flags = _DEBUG_FLAG_KLC;     /* Kill-on-Last-Close flag.  */
+  errn = devctl (ctl_fd, DCMD_PROC_SET_FLAG, &flags, sizeof (flags), 0);
+  if (errn != EOK)
+    {
+      /* FIXME: expected warning?  */
+      /* warning( "Failed to set Kill-on-Last-Close flag: errno = %d(%s)\n",
+         errn, strerror(errn) ); */
+    }
+  push_target (&procfs_ops);
+  target_terminal_init ();
+
+#ifdef SOLIB_CREATE_INFERIOR_HOOK
+  if (exec_bfd != NULL
+      || (symfile_objfile != NULL && symfile_objfile->obfd != NULL))
+    SOLIB_CREATE_INFERIOR_HOOK (pid);
+#endif
+}
+
+static void
+procfs_stop (void)
+{
+  devctl (ctl_fd, DCMD_PROC_STOP, NULL, 0, 0);
+}
+
+static void
+procfs_kill_inferior (void)
+{
+  target_mourn_inferior ();
+}
+
+/* Store register REGNO, or all registers if REGNO == -1, from the contents
+   of REGISTERS.  */
+static void
+procfs_prepare_to_store (void)
+{
+}
+
+/* Fill buf with regset and return devctl cmd to do the setting.  Return
+   -1 if we fail to get the regset.  Store size of regset in regsize.  */
+static int
+get_regset (int regset, char *buf, int bufsize, int *regsize)
+{
+  int dev_get, dev_set;
+  switch (regset)
+    {
+    case NTO_REG_GENERAL:
+      dev_get = DCMD_PROC_GETGREG;
+      dev_set = DCMD_PROC_SETGREG;
+      break;
+
+    case NTO_REG_FLOAT:
+      dev_get = DCMD_PROC_GETFPREG;
+      dev_set = DCMD_PROC_SETFPREG;
+      break;
+
+    case NTO_REG_ALT:
+      dev_get = DCMD_PROC_GETALTREG;
+      dev_set = DCMD_PROC_SETALTREG;
+      break;
+
+    case NTO_REG_SYSTEM:
+    default:
+      return -1;
+    }
+  if (devctl (ctl_fd, dev_get, &buf, bufsize, regsize) != EOK)
+    return -1;
+
+  return dev_set;
+}
+
+void
+procfs_store_registers (int regno)
+{
+  union
+  {
+    procfs_greg greg;
+    procfs_fpreg fpreg;
+    procfs_altreg altreg;
+  }
+  reg;
+  unsigned off;
+  int len, regset, regsize, dev_set, err;
+  char *data;
+
+  if (ptid_equal (inferior_ptid, null_ptid))
+    return;
+  procfs_set_thread (inferior_ptid);
+
+  if (regno == -1)
+    {
+      for (regset = NTO_REG_GENERAL; regset < NTO_REG_END; regset++)
+       {
+         dev_set = get_regset (regset, (char *) &reg,
+                               sizeof (reg), &regsize);
+         if (dev_set == -1)
+           continue;
+
+         if (nto_regset_fill (regset, (char *) &reg) == -1)
+           continue;
+
+         err = devctl (ctl_fd, dev_set, &reg, regsize, 0);
+         if (err != EOK)
+           fprintf_unfiltered (gdb_stderr,
+                               "Warning unable to write regset %d: %s\n",
+                               regno, safe_strerror (err));
+       }
+    }
+  else
+    {
+      regset = nto_regset_id (regno);
+      if (regset == -1)
+       return;
+
+      dev_set = get_regset (regset, (char *) &reg, sizeof (reg), &regsize);
+      if (dev_set == -1)
+       return;
+
+      len = nto_register_area (regno, regset, &off);
+
+      if (len < 1)
+       return;
+
+      regcache_collect (regno, (char *) &reg + off);
+
+      err = devctl (ctl_fd, dev_set, &reg, regsize, 0);
+      if (err != EOK)
+       fprintf_unfiltered (gdb_stderr,
+                           "Warning unable to write regset %d: %s\n", regno,
+                           safe_strerror (err));
+    }
+}
+
+static void
+notice_signals (void)
+{
+  int signo;
+
+  for (signo = 1; signo < NSIG; signo++)
+    {
+      if (signal_stop_state (target_signal_from_host (signo)) == 0
+         && signal_print_state (target_signal_from_host (signo)) == 0
+         && signal_pass_state (target_signal_from_host (signo)) == 1)
+       sigdelset (&run.trace, signo);
+      else
+       sigaddset (&run.trace, signo);
+    }
+}
+
+/* When the user changes the state of gdb's signal handling via the
+   "handle" command, this function gets called to see if any change
+   in the /proc interface is required.  It is also called internally
+   by other /proc interface functions to initialize the state of
+   the traced signal set.  */
+static void
+procfs_notice_signals (ptid_t ptid)
+{
+  sigemptyset (&run.trace);
+  notice_signals ();
+}
+
+static struct tidinfo *
+procfs_thread_info (pid_t pid, short tid)
+{
+/* NYI */
+  return NULL;
+}
+
+char *
+procfs_pid_to_str (ptid_t ptid)
+{
+  static char buf[1024];
+  int pid, tid, n;
+  struct tidinfo *tip;
+
+  pid = ptid_get_pid (ptid);
+  tid = ptid_get_tid (ptid);
+
+  n = snprintf (buf, 1023, "process %d", pid);
+
+#if 0                          /* NYI */
+  tip = procfs_thread_info (pid, tid);
+  if (tip != NULL)
+    snprintf (&buf[n], 1023, " (state = 0x%02x)", tip->state);
+#endif
+
+  return buf;
+}
+
+static void
+init_procfs_ops (void)
+{
+  procfs_ops.to_shortname = "procfs";
+  procfs_ops.to_longname = "QNX Neutrino procfs child process";
+  procfs_ops.to_doc =
+    "QNX Neutrino procfs child process (started by the \"run\" command).\n\
+       target procfs <node>";
+  procfs_ops.to_open = procfs_open;
+  procfs_ops.to_attach = procfs_attach;
+  procfs_ops.to_post_attach = procfs_post_attach;
+  procfs_ops.to_detach = procfs_detach;
+  procfs_ops.to_resume = procfs_resume;
+  procfs_ops.to_wait = procfs_wait;
+  procfs_ops.to_fetch_registers = procfs_fetch_registers;
+  procfs_ops.to_store_registers = procfs_store_registers;
+  procfs_ops.to_prepare_to_store = procfs_prepare_to_store;
+  procfs_ops.to_xfer_memory = procfs_xfer_memory;
+  procfs_ops.to_files_info = procfs_files_info;
+  procfs_ops.to_insert_breakpoint = procfs_insert_breakpoint;
+  procfs_ops.to_remove_breakpoint = procfs_remove_breakpoint;
+  procfs_ops.to_can_use_hw_breakpoint = procfs_can_use_hw_breakpoint;
+  procfs_ops.to_insert_hw_breakpoint = procfs_insert_hw_breakpoint;
+  procfs_ops.to_remove_hw_breakpoint = procfs_remove_breakpoint;
+  procfs_ops.to_insert_watchpoint = procfs_insert_hw_watchpoint;
+  procfs_ops.to_remove_watchpoint = procfs_remove_hw_watchpoint;
+  procfs_ops.to_stopped_by_watchpoint = procfs_stopped_by_watchpoint;
+  procfs_ops.to_terminal_init = terminal_init_inferior;
+  procfs_ops.to_terminal_inferior = terminal_inferior;
+  procfs_ops.to_terminal_ours_for_output = terminal_ours_for_output;
+  procfs_ops.to_terminal_ours = terminal_ours;
+  procfs_ops.to_terminal_info = child_terminal_info;
+  procfs_ops.to_kill = procfs_kill_inferior;
+  procfs_ops.to_create_inferior = procfs_create_inferior;
+  procfs_ops.to_mourn_inferior = procfs_mourn_inferior;
+  procfs_ops.to_can_run = procfs_can_run;
+  procfs_ops.to_notice_signals = procfs_notice_signals;
+  procfs_ops.to_thread_alive = procfs_thread_alive;
+  procfs_ops.to_find_new_threads = procfs_find_new_threads;
+  procfs_ops.to_pid_to_str = procfs_pid_to_str;
+  procfs_ops.to_stop = procfs_stop;
+  procfs_ops.to_stratum = process_stratum;
+  procfs_ops.to_has_all_memory = 1;
+  procfs_ops.to_has_memory = 1;
+  procfs_ops.to_has_stack = 1;
+  procfs_ops.to_has_registers = 1;
+  procfs_ops.to_has_execution = 1;
+  procfs_ops.to_magic = OPS_MAGIC;
+  procfs_ops.to_have_continuable_watchpoint = 1;
+}
+
+#define OSTYPE_NTO 1
+
+void
+_initialize_procfs (void)
+{
+  sigset_t set;
+
+  init_procfs_ops ();
+  add_target (&procfs_ops);
+
+  /* We use SIGUSR1 to gain control after we block waiting for a process.
+     We use sigwaitevent to wait.  */
+  sigemptyset (&set);
+  sigaddset (&set, SIGUSR1);
+  sigprocmask (SIG_BLOCK, &set, NULL);
+
+  /* Set up trace and fault sets, as gdb expects them.  */
+  sigemptyset (&run.trace);
+  notice_signals ();
+
+  /* Stuff some information.  */
+  nto_cpuinfo_flags = SYSPAGE_ENTRY (cpuinfo)->flags;
+  nto_cpuinfo_valid = 1;
+
+  add_info ("pidlist", procfs_pidlist, "pidlist");
+  add_info ("meminfo", procfs_meminfo, "memory information");
+}
+
+
+static int
+procfs_hw_watchpoint (int addr, int len, int type)
+{
+  procfs_break brk;
+
+  switch (type)
+    {
+    case 1:                    /* Read.  */
+      brk.type = _DEBUG_BREAK_RD;
+      break;
+    case 2:                    /* Read/Write.  */
+      brk.type = _DEBUG_BREAK_RW;
+      break;
+    default:                   /* Modify.  */
+/* FIXME: brk.type = _DEBUG_BREAK_RWM gives EINVAL for some reason.  */
+      brk.type = _DEBUG_BREAK_RW;
+    }
+  brk.type |= _DEBUG_BREAK_HW; /* Always ask for HW.  */
+  brk.addr = addr;
+  brk.size = len;
+
+  errno = devctl (ctl_fd, DCMD_PROC_BREAK, &brk, sizeof (brk), 0);
+  if (errno != EOK)
+    {
+      perror ("Failed to set hardware watchpoint");
+      return -1;
+    }
+  return 0;
+}
+
+static int
+procfs_can_use_hw_breakpoint (int type, int cnt, int othertype)
+{
+  return 1;
+}
+
+static int
+procfs_remove_hw_watchpoint (CORE_ADDR addr, int len, int type)
+{
+  return procfs_hw_watchpoint (addr, -1, type);
+}
+
+static int
+procfs_insert_hw_watchpoint (CORE_ADDR addr, int len, int type)
+{
+  return procfs_hw_watchpoint (addr, len, type);
+}
+
+static int
+procfs_stopped_by_watchpoint (void)
+{
+  return 0;
+}
diff --git a/gdb/sparc-tdep.h b/gdb/sparc-tdep.h
new file mode 100644 (file)
index 0000000..7c119b4
--- /dev/null
@@ -0,0 +1,22 @@
+/* Target-dependent code for the SPARC for GDB, the GNU debugger.
+
+   Copyright 2003 Free Software Foundation, Inc.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+extern int sparc_y_regnum (void);
diff --git a/gdb/testsuite/gdb.asm/m68k.inc b/gdb/testsuite/gdb.asm/m68k.inc
new file mode 100644 (file)
index 0000000..fadf54b
--- /dev/null
@@ -0,0 +1,38 @@
+       comment "subroutine prologue"
+       .macro gdbasm_enter
+       link    %a6,#0
+       .endm
+
+       comment "subroutine epilogue"
+       .macro gdbasm_leave
+       unlk    %a6
+       rts
+       .endm
+
+       .macro gdbasm_call subr
+       jbsr    \subr
+       .endm
+
+       .macro gdbasm_several_nops
+       nop
+       nop
+       nop
+       nop
+       .endm
+
+       comment "exit (0)"
+       .macro gdbasm_exit0
+       illegal
+       .endm
+
+       comment "crt0 startup"
+       .macro gdbasm_startup
+       lea     0,%a6
+       .endm
+
+       comment "Declare a data variable"
+       .macro gdbasm_datavar name value
+       .data
+\name:
+       .long   \value
+       .endm
diff --git a/gdb/testsuite/gdb.base/annota3.c b/gdb/testsuite/gdb.base/annota3.c
new file mode 100644 (file)
index 0000000..6a13ee9
--- /dev/null
@@ -0,0 +1,51 @@
+#include <stdio.h>
+#include <signal.h>
+
+#ifdef __sh__
+#define signal(a,b)    /* Signals not supported on this target - make them go away */
+#endif
+
+
+#ifdef PROTOTYPES
+void
+handle_USR1 (int sig)
+{
+}
+#else
+void
+handle_USR1 (sig)
+     int sig;
+{
+}
+#endif
+
+int value;
+
+#ifdef PROTOTYPES
+int
+main (void)
+#else
+int
+main ()
+#endif
+{
+  int my_array[3] = { 1, 2, 3 };
+  
+  value = 7;
+  
+#ifdef SIGUSR1
+  signal (SIGUSR1, handle_USR1);
+#endif
+
+  printf ("value is %d\n", value);
+  printf ("my_array[2] is %d\n", my_array[2]);
+  
+  {
+    int i;
+    for (i = 0; i < 5; i++)
+      value++;
+  }
+
+  return 0;
+}
+
diff --git a/gdb/testsuite/gdb.base/annota3.exp b/gdb/testsuite/gdb.base/annota3.exp
new file mode 100644 (file)
index 0000000..09a2e5b
--- /dev/null
@@ -0,0 +1,408 @@
+# Copyright 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Elena Zannoni (ezannoni@cygnus.com)
+
+if $tracelevel then {
+    strace $tracelevel
+}
+
+
+# are we on a target board? If so, don't run these tests.
+# note: this is necessary because we cannot use runto_main (which would
+# work for remote targets too) because of the different prompt we get
+# when using annotation level 2.
+#
+if [is_remote target] then {
+    return 0
+}
+
+
+#
+# test running programs
+#
+set prms_id 0
+set bug_id 0
+
+set testfile "annota3"
+set srcfile ${testfile}.c
+set binfile ${objdir}/${subdir}/${testfile}
+
+if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug additional_flags=-w}] != "" } {
+    gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
+}
+
+
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load ${binfile}
+
+if [target_info exists gdb_stub] {
+    gdb_step_for_stub;
+}
+
+#
+# the line at which break main will put the breakpoint
+#
+set main_line 32
+
+# The commands we test here produce many lines of output; disable "press 
+# <return> to continue" prompts.
+send_gdb "set height 0\n"
+gdb_expect -re "$gdb_prompt $"
+
+#
+# break at main
+#
+gdb_test "break main" \
+    "Breakpoint.*at.* file .*$srcfile, line.*" \
+    "breakpoint main"
+
+
+# NOTE: this prompt is OK only when the annotation level is > 1
+
+# NOTE: When this prompt is in use the gdb_test procedure cannot be
+# used because it assumes that the last char after the gdb_prompt is a
+# white space. This is not true with this annotated prompt. So we must
+# use send_gdb and gdb_expect or gdb_expect_list.
+
+set old_gdb_prompt $gdb_prompt
+set gdb_prompt "\r\n\032\032pre-prompt\r\n$gdb_prompt \r\n\032\032prompt\r\n"
+
+
+
+#
+# set the annotation level to 3
+#
+# of course, this will test:
+# annotate-pre-prompt
+# annotate-prompt
+# annotate-post-prompt (in the next block)
+#
+send_gdb "set annotate 3\n" 
+gdb_expect_list "annotation set at level 3" "\r\n$gdb_prompt$" {
+    "set annotate 3"
+}
+
+
+#
+# info break:
+#
+send_gdb "info break\n" 
+gdb_expect_list "breakpoint info" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Num Type           Disp Enb Address    +What\r\n"
+    "1   breakpoint     keep y   0x\[0-9a-zA-Z\]+ +in main at .*annota3.c:32\r\n"
+}
+
+
+#
+# run to a break point will test:
+#
+#exp_internal 1
+send_gdb "run\n"
+gdb_expect_list "run until main breakpoint" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Starting program: .*annota3 \r\n"
+    "\(\r\n\032\032\(frames-invalid|breakpoints-invalid\)\r\n\)+"
+    "\r\n\032\032starting\r\n"
+    "\(\r\n\032\032\(frames-invalid|breakpoints-invalid\)\r\n\)+"
+    "\r\n\032\032breakpoint 1\r\n"
+    "\r\n"
+    "Breakpoint 1, main \\(\\) at .*annota3.c:32\r\n"
+    "\r\n\032\032source.*annota3.c:32:.*:beg:0x\[0-9a-z\]+\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+#exp_internal 0
+#exit 0
+
+#
+# Let's do a next, to get to a point where the array is initialized
+# We don't care about the annotated output for this operation, it is the same as
+# the one produced by run above
+#
+send_gdb "next\n" 
+gdb_expect_list "go after array init line" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032starting\r\n"
+    "\(\r\n\032\032frames-invalid\r\n\)+"
+    "\r\n\032\032source .*annota3.c:\[0-9\]+:\[0-9\]+:beg:0x\[0-9a-z\]+\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+
+#
+# printing the array:
+#
+send_gdb "print my_array\n"
+gdb_expect_list "print array" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    ".*= .1, 2, 3.\r\n"
+}
+
+
+#
+# this should generate an error message, so to test:
+# annotate-error-begin
+# FIXME: annotate-error not tested
+#
+
+#exp_internal 1
+send_gdb "print non_existent_value\n"
+gdb_expect_list "print non_existent_value" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032error-begin\r\n"
+    "No symbol \"non_existent_value\" in current context.\r\n"
+    "\r\n\032\032error\r\n"
+}
+
+
+#
+# break at signal handler
+#
+send_gdb "break handle_USR1\n"
+gdb_expect_list "breakpoint handle_USR1" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032breakpoints-invalid\r\n"
+    "Breakpoint.*at 0x\[0-9a-z\]+: file.*annota3.c, line.*\r\n"
+}
+
+#
+# break at printf. When we are stopped at printf, we can test 
+#
+send_gdb "break printf\n"
+gdb_expect_list "breakpoint printf" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032breakpoints-invalid\r\n"
+    "Breakpoint.*at 0x\[0-9a-z\]+.*"
+}
+
+#
+# get to printf
+#
+send_gdb "continue\n"
+gdb_expect_list "continue to printf" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Continuing.\r\n"
+    "\r\n\032\032starting\r\n"
+    "\r\n\032\032frames-invalid\r\n"
+    "\r\n\032\032breakpoint 3\r\n"
+    "\r\n"
+    "Breakpoint 3, \[^\r\n\]*\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+send_gdb "backtrace\n"
+gdb_expect_list "backtrace from shlibrary" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "#0 .* printf \[^\r\n\]*\r\n"
+    "#1 .* main \[^\r\n\]*\r\n"
+}
+
+
+#
+# test printing a frame with some arguments: 
+#
+send_gdb "signal SIGUSR1\n"
+gdb_expect_list "send SIGUSR1" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Continuing with signal SIGUSR1.\r\n"
+    "\r\n\032\032starting\r\n"
+    "\r\n\032\032frames-invalid\r\n"
+    "\r\n\032\032breakpoint 2\r\n"
+    "Breakpoint 2, handle_USR1 \\(sig=\[0-9\]+\\) at .*annota3.c:\[0-9\]+\r\n"
+    "\r\n\032\032source .*annota3.c:\[0-9\]+:\[0-9\]+:beg:0x\[0-9a-z\]+\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+
+#
+# test:
+#
+verbose "match_max local is: [match_max]"
+verbose "match_max default is: [match_max -d]"
+# This is necessary because a 2000 buffer is not enought to get everything
+# up to the prompt ad the test gets a timeout.
+match_max 3000
+verbose "match_max now is: [match_max]"
+send_gdb "backtrace\n"
+gdb_expect_list "backtrace @ signal handler" "$gdb_prompt$" {
+    "#0 +handle_USR1 \[^\r\n\]+\r\n"
+    "#1 +.signal handler called.\r\n"
+    "#2 .* printf \[^\r\n\]+\r\n"
+    "#3 .* main \[^\r\n\]+\r\n"
+}
+
+#
+# delete all the breakpoints
+#
+send_gdb "delete 1\n"
+gdb_expect_list "delete bp 1" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+}
+
+send_gdb "delete 2\n"
+gdb_expect_list "delete bp 2" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+}
+
+send_gdb "delete 3\n"
+gdb_expect_list "delete bp 3" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+}
+
+#
+# break at main, after value is initialized. This is in preparation
+# to test the annotate output for the display command.
+#
+send_gdb "break main\n"
+gdb_expect_list "break at 28" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032breakpoints-invalid\r\n"
+    "Breakpoint 4 at 0x\[0-9a-z\]+: file .*annota3.c, line 32.\r\n"
+}
+
+#
+# display the value
+#
+send_gdb "display value\n"
+gdb_expect_list "set up display" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "1: value = 7\r\n"
+}
+
+
+# should ask query. Test annotate-query.
+# we don't care about anything else here, only the query.
+
+send_gdb "run\n"
+gdb_expect {
+  -re "pre-query.*already.*\\(y or n\\).*query\r\n" {
+         send_gdb "y\n"
+         gdb_expect {
+            -re ".*post-query.*$gdb_prompt$" \
+                    { pass "re-run" }
+            -re ".*$gdb_prompt$"  { fail "re-run" }
+            timeout { fail "re-run (timeout)" }
+        }
+     }
+  -re ".*$gdb_prompt$"  { fail "re-run" }
+  timeout { fail "re-run (timeout)" }
+}
+
+#
+# Test that breakpoints-invalid is issued once and only once for
+# breakpoint ignore count changes, after annotation stopped.
+#
+send_gdb "break 46\n"
+gdb_expect_list  "break at 46" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032breakpoints-invalid\r\n"
+    "Breakpoint 5 at 0x\[0-9a-z\]+: file .*annota3.c, line 46.\r\n"
+}
+
+send_gdb "ignore 5 4\n"
+gdb_expect_list "ignore 5 4" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Will ignore next 4 crossings of breakpoint 5"
+    "\r\n\032\032breakpoints-invalid\r\n"
+    "\r\n"
+}
+
+send_gdb "continue\n"
+gdb_expect_list "annotate ignore count change" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\(\r\n\032\032frames-invalid\r\n\)+"
+    "\r\n\032\032breakpoint 5\r\n"
+    "Breakpoint 5, main \\(\\) at .*annota3.c:46"
+    "\r\n\032\032source .*annota3.c:46:\[0-9\]+:beg:0x\[0-9a-z\]+\r\n"
+    "1: value = 11\r\n"
+    "\r\n\032\032stopped\r\n"
+    "\r\n\032\032breakpoints-invalid\r\n"
+}
+
+# check that ignore command is working, or the above can provide
+# misleading assurance ...
+
+send_gdb "next\n"
+gdb_expect_list "next to exit loop" "$gdb_prompt$"  {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032starting\r\n"
+    "\(\r\n\032\032frames-invalid\r\n\)+"
+    "\r\n\032\032source.*annota3.c:\[0-9\]+:\[0-9\]+:beg:0x\[0-9a-z\]+\r\n"
+    "1: value = 12\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+send_gdb "next\n"
+gdb_expect_list "breakpoint ignore count" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032starting\r\n"
+    "\(\r\n\032\032frames-invalid\r\n\)+"
+    "\r\n\032\032source.*annota3.c:49:\[0-9\]+:beg:0x\[0-9a-z\]+\r\n"
+    "1: value = 12\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+#
+# Send a signal that is not handled
+#
+# SIGTRAP signals are dropped before they get to the inferior process
+# on hpux11.  In theory, this behaivor can be controlled by setting
+# TTEO_NORM_SIGTRAP in the inferior, but doing so did not cause
+# the signal to be properly delivered.
+#
+# It has been verified that other signals will be delivered.  However,
+# rather than twiddle the test, I choose to leave it as-is as it
+# exposes an interesting failure on hpux11.
+setup_xfail hppa*-*-hpux11*
+send_gdb "signal SIGTRAP\n"
+gdb_expect_list "signal sent" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Continuing with signal SIGTRAP.\r\n"
+    "\r\n\032\032starting\r\n"
+    "\r\n\032\032frames-invalid\r\n"
+    "\r\n\032\032frames-invalid\r\n"
+    "\r\n\032\032signalled\r\n"
+    "\r\nProgram terminated with signal SIGTRAP, Trace.breakpoint trap.\r\n"
+    "The program no longer exists.\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+
+# Check for production of a core file
+# and remove it!
+
+set exec_output [remote_exec build "ls core"]
+
+if [ regexp "core not found" $exec_output]  {
+    pass "No core dumped"
+} else {
+  if [ regexp "No such file or directory" $exec_output] {
+      pass "No core dumped"
+  } else {
+      remote_exec build "rm -f core"
+      pass "Core dumped and removed"
+  }
+}
+
+# restore the original prompt for the rest of the testsuite
+
+set gdb_prompt $old_gdb_prompt
diff --git a/gdb/testsuite/gdb.base/complex.c b/gdb/testsuite/gdb.base/complex.c
new file mode 100644 (file)
index 0000000..98cdd29
--- /dev/null
@@ -0,0 +1,49 @@
+/* Test taken from GCC.  Verify that we can print a structure containing
+   a complex number.  */
+
+typedef __complex__ float cf;
+struct x { char c; cf f; } __attribute__ ((__packed__));
+struct unpacked_x { char c; cf f; };
+extern void f4 (struct unpacked_x*);
+extern void f3 (void);
+extern void f2 (struct x*);
+extern void f1 (void);
+int
+main (void)
+{
+  f1 ();
+  f3 ();
+  exit (0);
+}
+
+void
+f1 (void)
+{
+  struct x s;
+  s.f = 1;
+  s.c = 42;
+  f2 (&s);
+}
+
+void
+f2 (struct x *y)
+{
+  if (y->f != 1 || y->c != 42)
+    abort ();
+}
+
+void
+f3 (void)
+{
+  struct unpacked_x s;
+  s.f = 1;
+  s.c = 42;
+  f4 (&s);
+}
+
+void
+f4 (struct unpacked_x *y)
+{
+  if (y->f != 1 || y->c != 42)
+    abort ();
+}
diff --git a/gdb/testsuite/gdb.base/complex.exp b/gdb/testsuite/gdb.base/complex.exp
new file mode 100644 (file)
index 0000000..f3f25e5
--- /dev/null
@@ -0,0 +1,63 @@
+# Copyright 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+set bug_id 0
+
+set testfile complex
+set srcfile ${testfile}.c
+set binfile ${objdir}/${subdir}/${testfile}
+set options debug
+
+if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable $options] != "" } {
+  # No support for __complex__, presumably.
+  unsupported "print complex packed value in C"
+  unsupported "print complex value in C"
+  return 0
+}
+
+# Start with a fresh gdb.
+
+if [get_compiler_info ${binfile}] {
+    return -1
+}
+
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+if [runto f2] then {
+    get_debug_format
+    if {$gcc_compiled == 2 && [test_debug_format "DWARF 2"]} then {
+       setup_xfail "*-*-*"
+    }
+    gdb_test "p *y" "\\\$\[0-9\]* = \{c = 42 '\\*', f = 1 \\+ 0 \\* I\}" \
+           "print complex packed value in C"
+}
+
+if [runto f4] then {
+    gdb_test "p *y" "\\\$\[0-9\]* = \{c = 42 '\\*', f = 1 \\+ 0 \\* I\}" \
+           "print complex value in C"
+}
+
+return 0
diff --git a/gdb/testsuite/gdb.base/gdb1250.c b/gdb/testsuite/gdb.base/gdb1250.c
new file mode 100644 (file)
index 0000000..9d73f67
--- /dev/null
@@ -0,0 +1,57 @@
+/* Test program for stack trace through noreturn function.
+
+   Copyright 2003 Free Software Foundation, Inc.
+
+   This file is part of the gdb testsuite.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.
+   This file was written by Michael Elizabeth Chastain (mec@shout.net).  */
+
+#include <stdlib.h>
+
+int global = 0;
+
+void gamma (int *parray)
+{
+  return;
+}
+
+void beta ()
+{
+  int array [4];
+  array [0] = global++;
+  array [1] = global++;
+  array [2] = global++;
+  array [3] = global++;
+  gamma (array);
+  abort ();
+}
+
+int alpha ()
+{
+  global++;
+  beta ();
+  return 0;
+}
+
+int main ()
+{
+  int i;
+  global++;
+  i = alpha ();
+  return i;
+}
diff --git a/gdb/testsuite/gdb.base/gdb1250.exp b/gdb/testsuite/gdb.base/gdb1250.exp
new file mode 100644 (file)
index 0000000..60a6f59
--- /dev/null
@@ -0,0 +1,80 @@
+# Copyright 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Tests for PR gdb/1250.
+# 2003-07-15  Michael Chastain <mec@shout.net>
+
+# This file is part of the gdb testsuite.
+
+if $tracelevel then {
+        strace $tracelevel
+        }
+
+#
+# test running programs
+#
+set prms_id 0
+set bug_id 0
+
+set testfile "gdb1250"
+set srcfile ${testfile}.c
+set binfile ${objdir}/${subdir}/${testfile}
+
+if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug}] != "" } {
+     gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
+}
+
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load ${binfile}
+
+if ![runto abort] then {
+    perror "couldn't run to breakpoint"
+    continue
+}
+
+# See http://sources.redhat.com/gdb/bugs/1250
+#
+# In a nutshell: the function 'beta' ends with a call to 'abort', which
+# is a noreturn function.  So the last instruction of 'beta' is a call
+# to 'abort'.  When gdb looks for information about the caller of
+# 'beta', it looks at the instruction after the call to 'abort' -- which
+# is the first instruction of 'alpha'!  So gdb uses the wrong frame
+# information.  It thinks that the test program is in 'alpha' and that
+# the prologue "push %ebp / mov %esp,%ebp" has not been executed yet,
+# and grabs the wrong values.
+#
+# By the nature of the bug, it could pass if the C compiler is not smart
+# enough to implement 'abort' as a noreturn function.  This is okay.
+# The real point is that users often put breakpoints on noreturn
+# functions such as 'abort' or some kind of exitting function, and those
+# breakpoints should work.
+
+gdb_test_multiple "backtrace" "backtrace from abort" {
+    -re "#0.*abort.*\r\n#1.*beta.*\r\n#2.*alpha.*\r\n#3.*main.*\r\n$gdb_prompt $" {
+       pass "backtrace from abort"
+    }
+    -re "#0.*abort.*\r\n#1.*beta.*\r\n$gdb_prompt $" {
+       # This happens with gdb HEAD as of 2003-07-13, with gcc 3.3,
+       # binutils 2.14, either -gdwarf-2 or -gstabs+, on native
+       # i686-pc-linux-gnu.
+       #
+       # gdb gets 'abort' and 'beta' right and then goes into the
+       # weeds.
+       kfail "gdb/1250" "backtrace from abort"
+    }
+}
diff --git a/gdb/testsuite/gdb.c++/annota3.cc b/gdb/testsuite/gdb.c++/annota3.cc
new file mode 100644 (file)
index 0000000..234752e
--- /dev/null
@@ -0,0 +1,28 @@
+#include <stdio.h>
+
+class A {
+public:
+  int x;
+  int y;
+  int foo (int arg);
+};
+
+
+int A::foo (int arg)
+{
+  x += arg;
+  return arg *2;
+}
+
+int main()
+{
+  A a;
+
+  a.x = 0;
+  a.x = 1;
+  a.y = 2;
+
+  printf ("a.x is %d\n", a.x);
+  return 0;
+}
+
diff --git a/gdb/testsuite/gdb.c++/annota3.exp b/gdb/testsuite/gdb.c++/annota3.exp
new file mode 100644 (file)
index 0000000..431ed4f
--- /dev/null
@@ -0,0 +1,238 @@
+# Copyright 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Elena Zannoni (ezannoni@cygnus.com)
+
+if $tracelevel then {
+    strace $tracelevel
+}
+
+
+#
+# test running programs
+#
+set prms_id 0
+set bug_id 0
+
+if { [skip_cplus_tests] } { continue }
+
+set testfile "annota3"
+set srcfile ${testfile}.cc
+set binfile ${objdir}/${subdir}/${testfile}
+
+if  { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable {debug c++ additional_flags=-w}] != "" } {
+    gdb_suppress_entire_file "Testcase compile failed, so all tests in this file will automatically fail."
+}
+
+# are we on a target board? If so, don't run these tests.
+# note: this is necessary because we cannot use runto_main (which would
+# work for remote targets too) because of the different prompt we get
+# when using annotation level 2.
+#
+if [is_remote target] then {
+    return 0
+}
+
+
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load ${binfile}
+
+if [target_info exists gdb_stub] {
+    gdb_step_for_stub;
+}
+
+#
+# line number where we need to stop in main
+#
+set main_line 25
+
+# The commands we test here produce many lines of output; disable "press 
+# <return> to continue" prompts.
+send_gdb "set height 0\n"
+gdb_expect -re "$gdb_prompt $"
+
+#
+# break at main
+#
+gdb_test "break 25" \
+    "Breakpoint.*at.* file .*$srcfile, line.*" \
+    "breakpoint main"
+
+
+#
+# NOTE: this prompt is OK only when the annotation level is > 1
+# NOTE: When this prompt is in use the gdb_test procedure cannot be used because
+# it assumes that the last char of the gdb_prompt is a white space. This is not
+# true with this annotated prompt. So we must use send_gdb and gdb_expect.
+#
+
+set old_gdb_prompt $gdb_prompt
+set gdb_prompt "\r\n\032\032pre-prompt\r\n$gdb_prompt \r\n\032\032prompt\r\n"
+
+send_gdb "set annotate 3\n" 
+gdb_expect_list "annotation set at level 3" "\r\n$gdb_prompt$" {
+    "set annotate 3"
+}
+
+send_gdb "run\n"
+gdb_expect_list "first run until main breakpoint" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Starting program: .*annota3 \r\n"
+    "\(\r\n\032\032\(frames-invalid|breakpoints-invalid\)\r\n\)+"
+    "\r\n\032\032starting\r\n"
+    "\(\r\n\032\032\(frames-invalid|breakpoints-invalid\)\r\n\)+"
+    "\r\n\032\032breakpoint 1\r\n"
+    "\r\n"
+    "Breakpoint 1, main \\(\\) at .*annota3.cc:25\r\n"
+    "\r\n\032\032source.*annota3.cc:25:.*:beg:0x\[0-9a-z\]+\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+#
+# print class 'a' with public fields.
+#
+send_gdb "print a\n"
+gdb_expect_list "print class" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    ".*= \\{x = 1, y = 2\\}\r\n"
+}
+
+#
+# continue until exit
+# this will test:
+# annotate-exited
+#
+send_gdb "continue\n"
+gdb_expect_list "continue to exit" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "Continuing.\r\n"
+    "\r\n\032\032starting\r\n"
+    "\r\n\032\032frames-invalid\r\n"
+    "a.x is 1\r\n"
+    "\r\n\032\032frames-invalid\r\n"
+    "\r\n\032\032exited 0\r\n"
+    "\r\n"
+    "Program exited normally.\r\n"
+    "\r\n\032\032frames-invalid\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+#
+# delete all breakpoints
+#
+send_gdb "delete\n"
+gdb_expect {
+  -re ".*Delete all breakpoints. \\(y or n\\) \r\n\032\032query.*$" {
+           send_gdb "y\n"
+           gdb_expect {
+            -re "\r\n\032\032post-query\r\n$gdb_prompt$" { pass "delete bps" }
+            -re ".*$gdb_prompt$" { fail "delete bps" }
+            timeout  { fail "delete bps (timeout)" }
+        }
+     }
+  -re ".*$gdb_prompt$" { fail "delete bps" }
+  timeout  { fail "delete bps (timeout)" }
+}
+
+#
+# break at first line of main. 
+#
+send_gdb "break 22\n"
+gdb_expect_list "break at main" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032breakpoints-invalid\r\n"
+    "Breakpoint.*at 0x\[a-z0-9\]+: file.*annota3.cc, line 22.\r\n"
+}
+
+#
+# run program up to breakpoint.
+#
+
+
+send_gdb "run\n"
+gdb_expect_list "second run until main breakpoint" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\(\r\n\032\032\(frames-invalid|breakpoints-invalid\)\r\n\)+"
+    "\r\n\032\032starting\r\n"
+    "\(\r\n\032\032\(frames-invalid|breakpoints-invalid\)\r\n\)+"
+    "\r\n\032\032breakpoint 2\r\n"
+    "\r\n"
+    "Breakpoint 2, main \\(\\) at .*annota3.cc:22\r\n"
+    "\r\n\032\032source.*annota3.cc:22:.*:beg:0x\[0-9a-z\]+\r\n"
+    "\r\n\032\032stopped\r\n"
+}
+
+#
+# set up a watch point on a.x 
+#
+send_gdb "watch a.x\n"
+gdb_expect_list "set watch on a.x" "$gdb_prompt$" {
+    "\r\n\032\032post-prompt\r\n"
+    "\r\n\032\032breakpoints-invalid\r\n"
+    ".*atchpoint 3: a.x\r\n" \
+}
+
+#
+# do a next, so that the watchpoint triggers. This will test:
+# annotate-watchpoint
+#
+send_gdb "next\n"
+gdb_expect {
+    -re "\r\n\032\032post-prompt\r\n\r\n\032\032starting\r\n\(\r\n\032\032frames-invalid\r\n\)+\r\n\032\032watchpoint 3\r\nWatchpoint 3: a.x\r\n\r\nOld value = 0\r\nNew value = 1\r\nmain \\(\\) at .*$srcfile:$decimal\r\n\r\n\032\032source .*$srcfile.*beg:$hex\r\n\r\n\032\032stopped\r\n.*$gdb_prompt$" { 
+       pass "watch triggered on a.x"
+    }
+    -re "\r\n\032\032post-prompt\r\n\r\n\032\032starting\r\n\r\n\032\032frames-invalid\r\n\r\n\032\032source .*$srcfile.*beg:$hex\r\n\r\n\032\032stopped\r\n$gdb_prompt$" {
+       kfail "gdb/38" "watch triggered on a.x"
+    }
+    -re ".*$gdb_prompt$" {
+       fail "watch triggered on a.x"
+    }
+    timeout {
+       fail "watch triggered on a.x (timeout)"
+    }
+}
+
+#
+# send ^C to gdb, so that the quit() function gets called 
+# and annotate-quit is tested
+# test:
+# annotate-quit
+#
+# This test sometimes fails, but not reproducibly.  See gdb/544.
+#
+send_gdb "\003"
+gdb_expect_list "annotate-quit" "$gdb_prompt$" {
+    "\r\n\032\032error-begin\r\n"
+    "Quit\r\n"
+    "\r\n\032\032quit\r\n"
+}
+
+#
+# FIXME: the testsuite does not currently have tests for 
+#        annotate_catchpoints and annotate_function_call
+#        and a few variants of the annotations that are 
+#        tested (marked by FIXME on the annot?.exp files)
+#
+
+# reinstall the old prompt for the rest of the testsuite.
+
+set gdb_prompt $old_gdb_prompt
+
diff --git a/gdb/testsuite/gdb.disasm/t01_mov.exp b/gdb/testsuite/gdb.disasm/t01_mov.exp
new file mode 100644 (file)
index 0000000..50910e9
--- /dev/null
@@ -0,0 +1,2088 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t01_mov"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x/i _start" "mov.b   #0x12(:8|),r3h" \
+       "mov.b  #0x12:8,r3h"
+gdb_test "x" "mov.b    #0x12(:8|),@er3" \
+       "mov.b  #0x12:8,@er3"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x1:2,er3\\)" \
+       "mov.b  #0x12:8,@(0x1:2,er3)"
+gdb_test "x" "mov.b    #0x12(:8|),@-er3" \
+       "mov.b  #0x12:8,@-er3"
+gdb_test "x" "mov.b    #0x12(:8|),@er3\\+" \
+       "mov.b  #0x12:8,@er3+"
+gdb_test "x" "mov.b    #0x12(:8|),@er3-" \
+       "mov.b  #0x12:8,@er3-"
+gdb_test "x" "mov.b    #0x12(:8|),@\\+er3" \
+       "mov.b  #0x12:8,@+er3"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x1234:16,er3\\)" \
+       "mov.b  #0x12:8,@(0x1234:16,er3)"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x12345678:32,er3\\)" \
+       "mov.b  #0x12:8,@(0x12345678:32,er3)"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x1234:16,r3l.b\\)" \
+       "mov.b  #0x12:8,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x1234:16,r3.w\\)" \
+       "mov.b  #0x12:8,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x1234:16,er3.l\\)" \
+       "mov.b  #0x12:8,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.b  #0x12:8,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x12345678:32,r3.w\\)" \
+       "mov.b  #0x12:8,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.b    #0x12(:8|),@\\(0x12345678:32,er3.l\\)" \
+       "mov.b  #0x12:8,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.b    #0x12(:8|),@0x1234:16" \
+       "mov.b  #0x12:8,@0x1234:16"
+gdb_test "x" "mov.b    #0x12(:8|),@0x12345678:32" \
+       "mov.b  #0x12:8,@0x12345678:32"
+gdb_test "x" "mov.b    #0x1(:4|),@0x1234:16" \
+       "mov.b  #0x1:4,@0x1234:16"
+gdb_test "x" "mov.b    #0x1(:4|),@0x12345678:32" \
+       "mov.b  #0x1:4,@0x12345678:32"
+gdb_test "x" "mov.b    r3h,r1h" \
+       "mov.b  r3h,r1h"
+gdb_test "x" "mov.b    r3h,@er1" \
+       "mov.b  r3h,@er1"
+gdb_test "x" "mov.b    r3h,@\\(0x1:2,er1\\)" \
+       "mov.b  r3h,@(0x1:2,er1)"
+gdb_test "x" "mov.b    r3h,@-er1" \
+       "mov.b  r3h,@-er1"
+gdb_test "x" "mov.b    r3h,@er1\\+" \
+       "mov.b  r3h,@er1+"
+gdb_test "x" "mov.b    r3h,@er1-" \
+       "mov.b  r3h,@er1-"
+gdb_test "x" "mov.b    r3h,@\\+er1" \
+       "mov.b  r3h,@+er1"
+gdb_test "x" "mov.b    r3h,@\\(0x1234:16,er1\\)" \
+       "mov.b  r3h,@(0x1234:16,er1)"
+gdb_test "x" "mov.b    r3h,@\\(0x12345678:32,er1\\)" \
+       "mov.b  r3h,@(0x12345678:32,er1)"
+gdb_test "x" "mov.b    r3h,@\\(0x1234:16,r1l.b\\)" \
+       "mov.b  r3h,@(0x1234:16,r1l.b)"
+gdb_test "x" "mov.b    r3h,@\\(0x1234:16,r1.w\\)" \
+       "mov.b  r3h,@(0x1234:16,r1.w)"
+gdb_test "x" "mov.b    r3h,@\\(0x1234:16,er1.l\\)" \
+       "mov.b  r3h,@(0x1234:16,er1.l)"
+gdb_test "x" "mov.b    r3h,@\\(0x12345678:32,r1l.b\\)" \
+       "mov.b  r3h,@(0x12345678:32,r1l.b)"
+gdb_test "x" "mov.b    r3h,@\\(0x12345678:32,r1.w\\)" \
+       "mov.b  r3h,@(0x12345678:32,r1.w)"
+gdb_test "x" "mov.b    r3h,@\\(0x12345678:32,er1.l\\)" \
+       "mov.b  r3h,@(0x12345678:32,er1.l)"
+gdb_test "x" "mov.b    r3h,@0x12(:8|)" \
+       "mov.b  r3h,@0x12:8"
+gdb_test "x" "mov.b    r3h,@0x1234:16" \
+       "mov.b  r3h,@0x1234:16"
+gdb_test "x" "mov.b    r3h,@0x12345678:32" \
+       "mov.b  r3h,@0x12345678:32"
+gdb_test "x" "mov.b    @er3,r1h" \
+       "mov.b  @er3,r1h"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),r1h" \
+       "mov.b  @(0x1:2,er3),r1h"
+gdb_test "x" "mov.b    @er3\\+,r1h" \
+       "mov.b  @er3+,r1h"
+gdb_test "x" "mov.b    @-er3,r1h" \
+       "mov.b  @-er3,r1h"
+gdb_test "x" "mov.b    @\\+er3,r1h" \
+       "mov.b  @+er3,r1h"
+gdb_test "x" "mov.b    @er3-,r1h" \
+       "mov.b  @er3-,r1h"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),r1h" \
+       "mov.b  @(0x1234:16,er3),r1h"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),r1h" \
+       "mov.b  @(0x12345678:32,er3),r1h"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),r1h" \
+       "mov.b  @(0x1234:16,r3l.b),r1h"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),r1h" \
+       "mov.b  @(0x1234:16,r3.w),r1h"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),r1h" \
+       "mov.b  @(0x1234:16,er3.l),r1h"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),r1h" \
+       "mov.b  @(0x12345678:32,r3l.b),r1h"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),r1h" \
+       "mov.b  @(0x12345678:32,r3.w),r1h"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),r1h" \
+       "mov.b  @(0x12345678:32,er3.l),r1h"
+gdb_test "x" "mov.b    @0x12(:8|),r3h" \
+       "mov.b  @0x12:8,r3h"
+gdb_test "x" "mov.b    @0x1234:16,r3h" \
+       "mov.b  @0x1234:16,r3h"
+gdb_test "x" "mov.b    @0x12345678:32,r3h" \
+       "mov.b  @0x12345678:32,r3h"
+gdb_test "x" "mov.b    @er3,@er1" \
+       "mov.b  @er3,@er1"
+gdb_test "x" "mov.b    @er3,@\\(0x1:2,er1\\)" \
+       "mov.b  @er3,@(0x1:2,er1)"
+gdb_test "x" "mov.b    @er3,@er1\\+" \
+       "mov.b  @er3,@er1+"
+gdb_test "x" "mov.b    @er3,@-er1" \
+       "mov.b  @er3,@-er1"
+gdb_test "x" "mov.b    @er3,@\\+er1" \
+       "mov.b  @er3,@+er1"
+gdb_test "x" "mov.b    @er3,@er1-" \
+       "mov.b  @er3,@er1-"
+gdb_test "x" "mov.b    @er3,@\\(0x1234:16,er1\\)" \
+       "mov.b  @er3,@(0x1234:16,er1)"
+gdb_test "x" "mov.b    @er3,@\\(0x12345678:32,er1\\)" \
+       "mov.b  @er3,@(0x12345678:32,er1)"
+gdb_test "x" "mov.b    @er3,@\\(0x1234:16,r1l.b\\)" \
+       "mov.b  @er3,@(0x1234:16,r1l.b)"
+gdb_test "x" "mov.b    @er3,@\\(0x1234:16,r1.w\\)" \
+       "mov.b  @er3,@(0x1234:16,r1.w)"
+gdb_test "x" "mov.b    @er3,@\\(0x1234:16,er1.l\\)" \
+       "mov.b  @er3,@(0x1234:16,er1.l)"
+gdb_test "x" "mov.b    @er3,@\\(0x12345678:32,r1l.b\\)" \
+       "mov.b  @er3,@(0x12345678:32,r1l.b)"
+gdb_test "x" "mov.b    @er3,@\\(0x12345678:32,r1.w\\)" \
+       "mov.b  @er3,@(0x12345678:32,r1.w)"
+gdb_test "x" "mov.b    @er3,@\\(0x12345678:32,er1.l\\)" \
+       "mov.b  @er3,@(0x12345678:32,er1.l)"
+gdb_test "x" "mov.b    @er3,@0x1234:16" \
+       "mov.b  @er3,@0x1234:16"
+gdb_test "x" "mov.b    @er3,@0x12345678:32" \
+       "mov.b  @er3,@0x12345678:32"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@er1" \
+       "mov.b  @(0x1:2,er3),@er1"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x1:2,er3),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@er1\\+" \
+       "mov.b  @(0x1:2,er3),@er1+"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@-er1" \
+       "mov.b  @(0x1:2,er3),@-er1"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\+er1" \
+       "mov.b  @(0x1:2,er3),@+er1"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@er1-" \
+       "mov.b  @(0x1:2,er3),@er1-"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x1234:16,er1\\)" \
+       "mov.b  @(0x1:2,er3),@(0x1234:16,er1)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x12345678:32,er1\\)" \
+       "mov.b  @(0x1:2,er3),@(0x12345678:32,er1)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x1234:16,r1l.b\\)" \
+       "mov.b  @(0x1:2,er3),@(0x1234:16,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x1234:16,r1.w\\)" \
+       "mov.b  @(0x1:2,er3),@(0x1234:16,r1.w)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x1234:16,er1.l\\)" \
+       "mov.b  @(0x1:2,er3),@(0x1234:16,er1.l)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x12345678:32,r1l.b\\)" \
+       "mov.b  @(0x1:2,er3),@(0x12345678:32,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x12345678:32,r1.w\\)" \
+       "mov.b  @(0x1:2,er3),@(0x12345678:32,r1.w)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@\\(0x12345678:32,er1.l\\)" \
+       "mov.b  @(0x1:2,er3),@(0x12345678:32,er1.l)"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@0x1234:16" \
+       "mov.b  @(0x1:2,er3),@0x1234:16"
+gdb_test "x" "mov.b    @\\(0x1:2,er3\\),@0x12345678:32" \
+       "mov.b  @(0x1:2,er3),@0x12345678:32"
+gdb_test "x" "mov.b    @-er3,@er1" \
+       "mov.b  @-er3,@er1"
+gdb_test "x" "mov.b    @-er3,@\\(0x1:2,er1\\)" \
+       "mov.b  @-er3,@(0x1:2,er1)"
+gdb_test "x" "mov.b    @-er3,@er1\\+" \
+       "mov.b  @-er3,@er1+"
+gdb_test "x" "mov.b    @-er3,@-er1" \
+       "mov.b  @-er3,@-er1"
+gdb_test "x" "mov.b    @-er3,@\\+er1" \
+       "mov.b  @-er3,@+er1"
+gdb_test "x" "mov.b    @-er3,@er1-" \
+       "mov.b  @-er3,@er1-"
+gdb_test "x" "mov.b    @-er3,@\\(0x1234:16,er1\\)" \
+       "mov.b  @-er3,@(0x1234:16,er1)"
+gdb_test "x" "mov.b    @-er3,@\\(0x12345678:32,er1\\)" \
+       "mov.b  @-er3,@(0x12345678:32,er1)"
+gdb_test "x" "mov.b    @-er3,@\\(0x1234:16,r1l.b\\)" \
+       "mov.b  @-er3,@(0x1234:16,r1l.b)"
+gdb_test "x" "mov.b    @-er3,@\\(0x1234:16,r1.w\\)" \
+       "mov.b  @-er3,@(0x1234:16,r1.w)"
+gdb_test "x" "mov.b    @-er3,@\\(0x1234:16,er1.l\\)" \
+       "mov.b  @-er3,@(0x1234:16,er1.l)"
+gdb_test "x" "mov.b    @-er3,@\\(0x12345678:32,r1l.b\\)" \
+       "mov.b  @-er3,@(0x12345678:32,r1l.b)"
+gdb_test "x" "mov.b    @-er3,@\\(0x12345678:32,r1.w\\)" \
+       "mov.b  @-er3,@(0x12345678:32,r1.w)"
+gdb_test "x" "mov.b    @-er3,@\\(0x12345678:32,er1.l\\)" \
+       "mov.b  @-er3,@(0x12345678:32,er1.l)"
+gdb_test "x" "mov.b    @-er3,@0x1234:16" \
+       "mov.b  @-er3,@0x1234:16"
+gdb_test "x" "mov.b    @-er3,@0x12345678:32" \
+       "mov.b  @-er3,@0x12345678:32"
+gdb_test "x" "mov.b    @er3\\+,@er1" \
+       "mov.b  @er3+,@er1"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x1:2,er1\\)" \
+       "mov.b  @er3+,@(0x1:2,er1)"
+gdb_test "x" "mov.b    @er3\\+,@er1\\+" \
+       "mov.b  @er3+,@er1+"
+gdb_test "x" "mov.b    @er3\\+,@-er1" \
+       "mov.b  @er3+,@-er1"
+gdb_test "x" "mov.b    @er3\\+,@\\+er1" \
+       "mov.b  @er3+,@+er1"
+gdb_test "x" "mov.b    @er3\\+,@er1-" \
+       "mov.b  @er3+,@er1-"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x1234:16,er1\\)" \
+       "mov.b  @er3+,@(0x1234:16,er1)"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x12345678:32,er1\\)" \
+       "mov.b  @er3+,@(0x12345678:32,er1)"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x1234:16,r1l.b\\)" \
+       "mov.b  @er3+,@(0x1234:16,r1l.b)"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x1234:16,r1.w\\)" \
+       "mov.b  @er3+,@(0x1234:16,r1.w)"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x1234:16,er1.l\\)" \
+       "mov.b  @er3+,@(0x1234:16,er1.l)"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x12345678:32,r1l.b\\)" \
+       "mov.b  @er3+,@(0x12345678:32,r1l.b)"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x12345678:32,r1.w\\)" \
+       "mov.b  @er3+,@(0x12345678:32,r1.w)"
+gdb_test "x" "mov.b    @er3\\+,@\\(0x12345678:32,er1.l\\)" \
+       "mov.b  @er3+,@(0x12345678:32,er1.l)"
+gdb_test "x" "mov.b    @er3\\+,@0x1234:16" \
+       "mov.b  @er3+,@0x1234:16"
+gdb_test "x" "mov.b    @er3\\+,@0x12345678:32" \
+       "mov.b  @er3+,@0x12345678:32"
+gdb_test "x" "mov.b    @er3-,@er1" \
+       "mov.b  @er3-,@er1"
+gdb_test "x" "mov.b    @er3-,@\\(0x1:2,er1\\)" \
+       "mov.b  @er3-,@(0x1:2,er1)"
+gdb_test "x" "mov.b    @er3-,@er1\\+" \
+       "mov.b  @er3-,@er1+"
+gdb_test "x" "mov.b    @er3-,@-er1" \
+       "mov.b  @er3-,@-er1"
+gdb_test "x" "mov.b    @er3-,@\\+er1" \
+       "mov.b  @er3-,@+er1"
+gdb_test "x" "mov.b    @er3-,@er1-" \
+       "mov.b  @er3-,@er1-"
+gdb_test "x" "mov.b    @er3-,@\\(0x1234:16,er1\\)" \
+       "mov.b  @er3-,@(0x1234:16,er1)"
+gdb_test "x" "mov.b    @er3-,@\\(0x12345678:32,er1\\)" \
+       "mov.b  @er3-,@(0x12345678:32,er1)"
+gdb_test "x" "mov.b    @er3-,@\\(0x1234:16,r1l.b\\)" \
+       "mov.b  @er3-,@(0x1234:16,r1l.b)"
+gdb_test "x" "mov.b    @er3-,@\\(0x1234:16,r1.w\\)" \
+       "mov.b  @er3-,@(0x1234:16,r1.w)"
+gdb_test "x" "mov.b    @er3-,@\\(0x1234:16,er1.l\\)" \
+       "mov.b  @er3-,@(0x1234:16,er1.l)"
+gdb_test "x" "mov.b    @er3-,@\\(0x12345678:32,r1l.b\\)" \
+       "mov.b  @er3-,@(0x12345678:32,r1l.b)"
+gdb_test "x" "mov.b    @er3-,@\\(0x12345678:32,r1.w\\)" \
+       "mov.b  @er3-,@(0x12345678:32,r1.w)"
+gdb_test "x" "mov.b    @er3-,@\\(0x12345678:32,er1.l\\)" \
+       "mov.b  @er3-,@(0x12345678:32,er1.l)"
+gdb_test "x" "mov.b    @er3-,@0x1234:16" \
+       "mov.b  @er3-,@0x1234:16"
+gdb_test "x" "mov.b    @er3-,@0x12345678:32" \
+       "mov.b  @er3-,@0x12345678:32"
+gdb_test "x" "mov.b    @\\+er3,@er1" \
+       "mov.b  @+er3,@er1"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x1:2,er1\\)" \
+       "mov.b  @+er3,@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\+er3,@er1\\+" \
+       "mov.b  @+er3,@er1+"
+gdb_test "x" "mov.b    @\\+er3,@-er1" \
+       "mov.b  @+er3,@-er1"
+gdb_test "x" "mov.b    @\\+er3,@\\+er1" \
+       "mov.b  @+er3,@+er1"
+gdb_test "x" "mov.b    @\\+er3,@er1-" \
+       "mov.b  @+er3,@er1-"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x1234:16,er1\\)" \
+       "mov.b  @+er3,@(0x1234:16,er1)"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x12345678:32,er1\\)" \
+       "mov.b  @+er3,@(0x12345678:32,er1)"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x1234:16,r1l.b\\)" \
+       "mov.b  @+er3,@(0x1234:16,r1l.b)"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x1234:16,r1.w\\)" \
+       "mov.b  @+er3,@(0x1234:16,r1.w)"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x1234:16,er1.l\\)" \
+       "mov.b  @+er3,@(0x1234:16,er1.l)"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x12345678:32,r1l.b\\)" \
+       "mov.b  @+er3,@(0x12345678:32,r1l.b)"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x12345678:32,r1.w\\)" \
+       "mov.b  @+er3,@(0x12345678:32,r1.w)"
+gdb_test "x" "mov.b    @\\+er3,@\\(0x12345678:32,er1.l\\)" \
+       "mov.b  @+er3,@(0x12345678:32,er1.l)"
+gdb_test "x" "mov.b    @\\+er3,@0x1234:16" \
+       "mov.b  @+er3,@0x1234:16"
+gdb_test "x" "mov.b    @\\+er3,@0x12345678:32" \
+       "mov.b  @+er3,@0x12345678:32"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@er1" \
+       "mov.b  @(0x1234:16,er3),@er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@er1\\+" \
+       "mov.b  @(0x1234:16,er3),@er1+"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@-er1" \
+       "mov.b  @(0x1234:16,er3),@-er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\+er1" \
+       "mov.b  @(0x1234:16,er3),@+er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@er1-" \
+       "mov.b  @(0x1234:16,er3),@er1-"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abc(:16|),r1l.b\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abc:16,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abc(:16|),r1.w\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abc:16,r1.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abc(:16|),er1.l\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abc:16,er1.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abcdef0:32,r1l.b\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abcdef0:32,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abcdef0:32,r1.w\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abcdef0:32,r1.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@\\(0x9abcdef0:32,er1.l\\)" \
+       "mov.b  @(0x1234:16,er3),@(0x9abcdef0:32,er1.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@0x9abc(:16|)" \
+       "mov.b  @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3\\),@0x9abcdef0:32" \
+       "mov.b  @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@er1" \
+       "mov.b  @(0x12345678:32,er3),@er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@er1\\+" \
+       "mov.b  @(0x12345678:32,er3),@er1+"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@-er1" \
+       "mov.b  @(0x12345678:32,er3),@-er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\+er1" \
+       "mov.b  @(0x12345678:32,er3),@+er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@er1-" \
+       "mov.b  @(0x12345678:32,er3),@er1-"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abc(:16|),r1l.b\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abc:16,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abc(:16|),r1.w\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abc:16,r1.w)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abc(:16|),er1.l\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abc:16,er1.l)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abcdef0:32,r1l.b\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abcdef0:32,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abcdef0:32,r1.w\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abcdef0:32,r1.w)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@\\(0x9abcdef0:32,er1.l\\)" \
+       "mov.b  @(0x12345678:32,er3),@(0x9abcdef0:32,er1.l)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@0x9abc(:16|)" \
+       "mov.b  @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3\\),@0x9abcdef0:32" \
+       "mov.b  @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@er1" \
+       "mov.b  @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x1234:16,r3l.b),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@er1\\+" \
+       "mov.b  @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@-er1" \
+       "mov.b  @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\+er1" \
+       "mov.b  @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@er1-" \
+       "mov.b  @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),r1l.b\\)" \
+       "mov.b  @(0x1234:16,r3l.b),@(0x9abc:16,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),r1.w\\)" \
+       "mov.b  @(0x1234:16,r3l.b),@(0x9abc:16,r1.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),er1.l\\)" \
+       "mov.b  @(0x1234:16,r3l.b),@(0x9abc:16,er1.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,r1l.b\\)" \
+       "mov.b  @(0x1234:16,r3l.b),@(0x9abcdef0:32,r1l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,r1.w\\)" \
+       "mov.b  @(0x1234:16,r3l.b),@(0x9abcdef0:32,r1.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,er1.l\\)" \
+       "mov.b  @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@0x9abc(:16|)" \
+       "mov.b  @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3l.b\\),@0x9abcdef0:32" \
+       "mov.b  @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@er1" \
+       "mov.b  @(0x1234:16,r3.w),@er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@er1\\+" \
+       "mov.b  @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@-er1" \
+       "mov.b  @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\+er1" \
+       "mov.b  @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@er1-" \
+       "mov.b  @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.b  @(0x1234:16,r3.w),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@0x9abc(:16|)" \
+       "mov.b  @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x1234:16,r3.w\\),@0x9abcdef0:32" \
+       "mov.b  @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@er1" \
+       "mov.b  @(0x1234:16,er3.l),@er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@er1\\+" \
+       "mov.b  @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@-er1" \
+       "mov.b  @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\+er1" \
+       "mov.b  @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@er1-" \
+       "mov.b  @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.b  @(0x1234:16,er3.l),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@0x9abc(:16|)" \
+       "mov.b  @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x1234:16,er3.l\\),@0x9abcdef0:32" \
+       "mov.b  @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@er1" \
+       "mov.b  @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@er1\\+" \
+       "mov.b  @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@-er1" \
+       "mov.b  @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\+er1" \
+       "mov.b  @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@er1-" \
+       "mov.b  @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.b\t@\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.b\t@\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.b  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@0x9abc(:16|)" \
+       "mov.b  @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3l.b\\),@0x9abcdef0:32" \
+       "mov.b  @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@er1" \
+       "mov.b  @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@er1\\+" \
+       "mov.b  @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@-er1" \
+       "mov.b  @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\+er1" \
+       "mov.b  @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@er1-" \
+       "mov.b  @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.b  @(0x12345678:32,r3.w),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@0x9abc(:16|)" \
+       "mov.b  @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x12345678:32,r3.w\\),@0x9abcdef0:32" \
+       "mov.b  @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@er1" \
+       "mov.b  @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x1:2,er1\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x1:2,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@er1\\+" \
+       "mov.b  @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@-er1" \
+       "mov.b  @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\+er1" \
+       "mov.b  @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@er1-" \
+       "mov.b  @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.b  @(0x12345678:32,er3.l),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@0x9abc(:16|)" \
+       "mov.b  @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "mov.b    @\\(0x12345678:32,er3.l\\),@0x9abcdef0:32" \
+       "mov.b  @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "mov.b    @0x1234:16,@er1" \
+       "mov.b  @0x1234:16,@er1"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x1:2,er1\\)" \
+       "mov.b  @0x1234:16,@(0x1:2,er1)"
+gdb_test "x" "mov.b    @0x1234:16,@er1\\+" \
+       "mov.b  @0x1234:16,@er1+"
+gdb_test "x" "mov.b    @0x1234:16,@-er1" \
+       "mov.b  @0x1234:16,@-er1"
+gdb_test "x" "mov.b    @0x1234:16,@\\+er1" \
+       "mov.b  @0x1234:16,@+er1"
+gdb_test "x" "mov.b    @0x1234:16,@er1-" \
+       "mov.b  @0x1234:16,@er1-"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.b  @0x1234:16,@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.b  @0x1234:16,@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.b  @0x1234:16,@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.b  @0x1234:16,@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.b  @0x1234:16,@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.b    @0x1234:16,@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.b  @0x1234:16,@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.b    @0x1234:16,@0x9abc(:16|)" \
+       "mov.b  @0x1234:16,@0x9abc:16"
+gdb_test "x" "mov.b    @0x1234:16,@0x9abcdef0:32" \
+       "mov.b  @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "mov.b    @0x12345678:32,@er1" \
+       "mov.b  @0x12345678:32,@er1"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x1:2,er1\\)" \
+       "mov.b  @0x12345678:32,@(0x1:2,er1)"
+gdb_test "x" "mov.b    @0x12345678:32,@er1\\+" \
+       "mov.b  @0x12345678:32,@er1+"
+gdb_test "x" "mov.b    @0x12345678:32,@-er1" \
+       "mov.b  @0x12345678:32,@-er1"
+gdb_test "x" "mov.b    @0x12345678:32,@\\+er1" \
+       "mov.b  @0x12345678:32,@+er1"
+gdb_test "x" "mov.b    @0x12345678:32,@er1-" \
+       "mov.b  @0x12345678:32,@er1-"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abc(:16|),er1\\)" \
+       "mov.b  @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abcdef0:32,er1\\)" \
+       "mov.b  @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.b  @0x12345678:32,@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.b  @0x12345678:32,@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.b  @0x12345678:32,@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.b  @0x12345678:32,@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.b  @0x12345678:32,@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.b    @0x12345678:32,@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.b  @0x12345678:32,@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.b    @0x12345678:32,@0x9abc(:16|)" \
+       "mov.b  @0x12345678:32,@0x9abc:16"
+gdb_test "x" "mov.b    @0x12345678:32,@0x9abcdef0:32" \
+       "mov.b  @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "mov.w    #0x1234(:16|),r1" \
+       "mov.w  #0x1234:16,r1"
+gdb_test "x" "mov.w    #0x1(:3|),r3" \
+       "mov.w  #0x1:3,r3"
+gdb_test "x" "mov.w    #0x1234(:16|),@er1" \
+       "mov.w  #0x1234:16,@er1"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x2:2,er1\\)" \
+       "mov.w  #0x1234:16,@(0x2:2,er1)"
+gdb_test "x" "mov.w    #0x1234(:16|),@er1\\+" \
+       "mov.w  #0x1234:16@er1+"
+gdb_test "x" "mov.w    #0x1234(:16|),@-er1" \
+       "mov.w  #0x1234:16,@-er1"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\+er1" \
+       "mov.w  #0x1234:16,@+er1"
+gdb_test "x" "mov.w    #0x1234(:16|),@er1-" \
+       "mov.w  #0x1234:16,@er1-"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x1234:16,er1\\)" \
+       "mov.w  #0x1234:16,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x12345678:32,er1\\)" \
+       "mov.w  #0x1234:16,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  #0x1234:16,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x1234:16,r3.w\\)" \
+       "mov.w  #0x1234:16,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x1234:16,er3.l\\)" \
+       "mov.w  #0x1234:16,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  #0x1234:16,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  #0x1234:16,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    #0x1234(:16|),@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  #0x1234:16,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    #0x1234(:16|),@0x1234:16" \
+       "mov.w  #0x1234:16,@0x1234:16"
+gdb_test "x" "mov.w    #0x1234(:16|),@0x12345678:32" \
+       "mov.w  #0x1234:16,@0x12345678:32"
+gdb_test "x" "mov.w    #0x12(:8|),@er1" \
+       "mov.w  #0x12:8,@er1"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x2:2,er1\\)" \
+       "mov.w  #0x12:8,@(0x2:2,er1)"
+gdb_test "x" "mov.w    #0x12(:8|),@er1\\+" \
+       "mov.w  #0x12:8,@er1+"
+gdb_test "x" "mov.w    #0x12(:8|),@-er1" \
+       "mov.w  #0x12:8,@-er1"
+gdb_test "x" "mov.w    #0x12(:8|),@\\+er1" \
+       "mov.w  #0x12:8,@+er1"
+gdb_test "x" "mov.w    #0x12(:8|),@er1-" \
+       "mov.w  #0x12:8,@er1-"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x1234:16,er1\\)" \
+       "mov.w  #0x12:8,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x12345678:32,er1\\)" \
+       "mov.w  #0x12:8,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  #0x12:8,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x1234:16,r3.w\\)" \
+       "mov.w  #0x12:8,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x1234:16,er3.l\\)" \
+       "mov.w  #0x12:8,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  #0x12:8,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  #0x12:8,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    #0x12(:8|),@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  #0x12:8,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    #0x12(:8|),@0x1234:16" \
+       "mov.w  #0x12:8,@0x1234:16"
+gdb_test "x" "mov.w    #0x12(:8|),@0x12345678:32" \
+       "mov.w  #0x12:8,@0x12345678:32"
+gdb_test "x" "mov.w    #0x1(:4|),@0x1234:16" \
+       "mov.w  #0x1:4,@0x1234:16"
+gdb_test "x" "mov.w    #0x1(:4|),@0x12345678:32" \
+       "mov.w  #0x1:4,@0x12345678:32"
+gdb_test "x" "mov.w    r2,r1" \
+       "mov.w  r2,r1"
+gdb_test "x" "mov.w    r2,@er1" \
+       "mov.w  r2,@er1"
+gdb_test "x" "mov.w    r2,@\\(0x2:2,er1\\)" \
+       "mov.w  r2,@(0x2:2,er1)"
+gdb_test "x" "mov.w    r2,@er1\\+" \
+       "mov.w  r2,@er1+"
+gdb_test "x" "mov.w    r2,@-er1" \
+       "mov.w  r2,@-er1"
+gdb_test "x" "mov.w    r2,@\\+er1" \
+       "mov.w  r2,@+er1"
+gdb_test "x" "mov.w    r2,@er1-" \
+       "mov.w  r2,@er1-"
+gdb_test "x" "mov.w    r2,@\\(0x1234:16,er1\\)" \
+       "mov.w  r2,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    r2,@\\(0x12345678:32,er1\\)" \
+       "mov.w  r2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    r2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  r2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    r2,@\\(0x1234:16,r3.w\\)" \
+       "mov.w  r2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    r2,@\\(0x1234:16,er3.l\\)" \
+       "mov.w  r2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    r2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  r2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    r2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  r2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    r2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  r2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    r2,@0x1234:16" \
+       "mov.w  r2,@0x1234:16"
+gdb_test "x" "mov.w    r2,@0x12345678:32" \
+       "mov.w  r2,@0x12345678:32"
+gdb_test "x" "mov.w    @er2,r1" \
+       "mov.w  @er2,r1"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),r1" \
+       "mov.w  @(0x2:2,er2),r1"
+gdb_test "x" "mov.w    @er2\\+,r1" \
+       "mov.w  @er2+,r1"
+gdb_test "x" "mov.w    @-er2,r1" \
+       "mov.w  @-er2,r1"
+gdb_test "x" "mov.w    @\\+er2,r1" \
+       "mov.w  @+er2,r1"
+gdb_test "x" "mov.w    @er2-,r1" \
+       "mov.w  @er2-,r1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er1\\),r1" \
+       "mov.w  @(0x1234:16,er1),r1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er1\\),r1" \
+       "mov.w  @(0x12345678:32,er1),r1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),r1" \
+       "mov.w  @(0x1234:16,r3l.b),r1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),r1" \
+       "mov.w  @(0x1234:16,r3.w),r1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),r1" \
+       "mov.w  @(0x1234:16,er3.l),r1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),r1" \
+       "mov.w  @(0x12345678:32,r3l.b),r1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),r1" \
+       "mov.w  @(0x12345678:32,r3.w),r1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),r1" \
+       "mov.w  @(0x12345678:32,er3.l),r1"
+gdb_test "x" "mov.w    @0x1234:16,r1" \
+       "mov.w  @0x1234:16,r1"
+gdb_test "x" "mov.w    @0x12345678:32,r1" \
+       "mov.w  @0x12345678:32,r1"
+gdb_test "x" "mov.w    @er2,@er1" \
+       "mov.w  @er2,@er1"
+gdb_test "x" "mov.w    @er2,@\\(0x2:2,er1\\)" \
+       "mov.w  @er2,@(0x2:2,er1)"
+gdb_test "x" "mov.w    @er2,@er1\\+" \
+       "mov.w  @er2,@er1+"
+gdb_test "x" "mov.w    @er2,@-er1" \
+       "mov.w  @er2,@-er1"
+gdb_test "x" "mov.w    @er2,@\\+er1" \
+       "mov.w  @er2,@+er1"
+gdb_test "x" "mov.w    @er2,@er1-" \
+       "mov.w  @er2,@er1-"
+gdb_test "x" "mov.w    @er2,@\\(0x1234:16,er1\\)" \
+       "mov.w  @er2,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    @er2,@\\(0x12345678:32,er1\\)" \
+       "mov.w  @er2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    @er2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  @er2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    @er2,@\\(0x1234:16,r3.w\\)" \
+       "mov.w  @er2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    @er2,@\\(0x1234:16,er3.l\\)" \
+       "mov.w  @er2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    @er2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  @er2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    @er2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  @er2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    @er2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  @er2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    @er2,@0x1234:16" \
+       "mov.w  @er2,@0x1234:16"
+gdb_test "x" "mov.w    @er2,@0x12345678:32" \
+       "mov.w  @er2,@0x12345678:32"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@er1" \
+       "mov.w  @(0x2:2,er2),@er1"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x2:2,er2),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@er1\\+" \
+       "mov.w  @(0x2:2,er2),@er1+"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@-er1" \
+       "mov.w  @(0x2:2,er2),@-er1"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\+er1" \
+       "mov.w  @(0x2:2,er2),@+er1"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@er1-" \
+       "mov.w  @(0x2:2,er2),@er1-"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x1234:16,er1\\)" \
+       "mov.w  @(0x2:2,er2),@(0x1234:16,er1)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x12345678:32,er1\\)" \
+       "mov.w  @(0x2:2,er2),@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  @(0x2:2,er2),@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x1234:16,r3.w\\)" \
+       "mov.w  @(0x2:2,er2),@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x1234:16,er3.l\\)" \
+       "mov.w  @(0x2:2,er2),@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  @(0x2:2,er2),@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  @(0x2:2,er2),@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  @(0x2:2,er2),@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@0x1234:16" \
+       "mov.w  @(0x2:2,er2),@0x1234:16"
+gdb_test "x" "mov.w    @\\(0x2:2,er2\\),@0x12345678:32" \
+       "mov.w  @(0x2:2,er2),@0x12345678:32"
+gdb_test "x" "mov.w    @-er2,@er1" \
+       "mov.w  @-er2,@er1"
+gdb_test "x" "mov.w    @-er2,@\\(0x2:2,er1\\)" \
+       "mov.w  @-er2,@(0x2:2,er1)"
+gdb_test "x" "mov.w    @-er2,@er1\\+" \
+       "mov.w  @-er2,@er1+"
+gdb_test "x" "mov.w    @-er2,@-er1" \
+       "mov.w  @-er2,@-er1"
+gdb_test "x" "mov.w    @-er2,@\\+er1" \
+       "mov.w  @-er2,@+er1"
+gdb_test "x" "mov.w    @-er2,@er1-" \
+       "mov.w  @-er2,@er1-"
+gdb_test "x" "mov.w    @-er2,@\\(0x1234:16,er1\\)" \
+       "mov.w  @-er2,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    @-er2,@\\(0x12345678:32,er1\\)" \
+       "mov.w  @-er2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    @-er2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  @-er2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    @-er2,@\\(0x1234:16,r3.w\\)" \
+       "mov.w  @-er2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    @-er2,@\\(0x1234:16,er3.l\\)" \
+       "mov.w  @-er2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    @-er2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  @-er2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    @-er2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  @-er2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    @-er2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  @-er2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    @-er2,@0x1234:16" \
+       "mov.w  @-er2,@0x1234:16"
+gdb_test "x" "mov.w    @-er2,@0x12345678:32" \
+       "mov.w  @-er2,@0x12345678:32"
+gdb_test "x" "mov.w    @er2\\+,@er1" \
+       "mov.w  @er2+,@er1"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x2:2,er1\\)" \
+       "mov.w  @er2+,@(0x2:2,er1)"
+gdb_test "x" "mov.w    @er2\\+,@er1\\+" \
+       "mov.w  @er2+,@er1+"
+gdb_test "x" "mov.w    @er2\\+,@-er1" \
+       "mov.w  @er2+,@-er1"
+gdb_test "x" "mov.w    @er2\\+,@\\+er1" \
+       "mov.w  @er2+,@+er1"
+gdb_test "x" "mov.w    @er2\\+,@er1-" \
+       "mov.w  @er2+,@er1-"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x1234:16,er1\\)" \
+       "mov.w  @er2+,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x12345678:32,er1\\)" \
+       "mov.w  @er2+,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  @er2+,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x1234:16,r3.w\\)" \
+       "mov.w  @er2+,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x1234:16,er3.l\\)" \
+       "mov.w  @er2+,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  @er2+,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  @er2+,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    @er2\\+,@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  @er2+,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    @er2\\+,@0x1234:16" \
+       "mov.w  @er2+,@0x1234:16"
+gdb_test "x" "mov.w    @er2\\+,@0x12345678:32" \
+       "mov.w  @er2+,@0x12345678:32"
+gdb_test "x" "mov.w    @er2-,@er1" \
+       "mov.w  @er2-,@er1"
+gdb_test "x" "mov.w    @er2-,@\\(0x2:2,er1\\)" \
+       "mov.w  @er2-,@(0x2:2,er1)"
+gdb_test "x" "mov.w    @er2-,@er1\\+" \
+       "mov.w  @er2-,@er1+"
+gdb_test "x" "mov.w    @er2-,@-er1" \
+       "mov.w  @er2-,@-er1"
+gdb_test "x" "mov.w    @er2-,@\\+er1" \
+       "mov.w  @er2-,@+er1"
+gdb_test "x" "mov.w    @er2-,@er1-" \
+       "mov.w  @er2-,@er1-"
+gdb_test "x" "mov.w    @er2-,@\\(0x1234:16,er1\\)" \
+       "mov.w  @er2-,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    @er2-,@\\(0x12345678:32,er1\\)" \
+       "mov.w  @er2-,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    @er2-,@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  @er2-,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    @er2-,@\\(0x1234:16,r3.w\\)" \
+       "mov.w  @er2-,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    @er2-,@\\(0x1234:16,er3.l\\)" \
+       "mov.w  @er2-,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    @er2-,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  @er2-,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    @er2-,@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  @er2-,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    @er2-,@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  @er2-,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    @er2-,@0x1234:16" \
+       "mov.w  @er2-,@0x1234:16"
+gdb_test "x" "mov.w    @er2-,@0x12345678:32" \
+       "mov.w  @er2-,@0x12345678:32"
+gdb_test "x" "mov.w    @\\+er2,@er1" \
+       "mov.w  @+er2,@er1"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x2:2,er1\\)" \
+       "mov.w  @+er2,@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\+er2,@er1\\+" \
+       "mov.w  @+er2,@er1+"
+gdb_test "x" "mov.w    @\\+er2,@-er1" \
+       "mov.w  @+er2,@-er1"
+gdb_test "x" "mov.w    @\\+er2,@\\+er1" \
+       "mov.w  @+er2,@+er1"
+gdb_test "x" "mov.w    @\\+er2,@er1-" \
+       "mov.w  @+er2,@er1-"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x1234:16,er1\\)" \
+       "mov.w  @+er2,@(0x1234:16,er1)"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x12345678:32,er1\\)" \
+       "mov.w  @+er2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.w  @+er2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x1234:16,r3.w\\)" \
+       "mov.w  @+er2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x1234:16,er3.l\\)" \
+       "mov.w  @+er2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.w  @+er2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.w  @+er2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.w    @\\+er2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.w  @+er2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.w    @\\+er2,@0x1234:16" \
+       "mov.w  @+er2,@0x1234:16"
+gdb_test "x" "mov.w    @\\+er2,@0x12345678:32" \
+       "mov.w  @+er2,@0x12345678:32"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@er1" \
+       "mov.w  @(0x1234:16,er2),@er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@er1\\+" \
+       "mov.w  @(0x1234:16,er2),@er1+"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@-er1" \
+       "mov.w  @(0x1234:16,er2),@-er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\+er1" \
+       "mov.w  @(0x1234:16,er2),@+er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@er1-" \
+       "mov.w  @(0x1234:16,er2),@er1-"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x1234:16,er2),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@0x9abc(:16|)" \
+       "mov.w  @(0x1234:16,er2),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x1234:16,er2\\),@0x9abcdef0:32" \
+       "mov.w  @(0x1234:16,er2),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@er1" \
+       "mov.w  @(0x12345678:32,er2),@er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@er1\\+" \
+       "mov.w  @(0x12345678:32,er2),@er1+"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@-er1" \
+       "mov.w  @(0x12345678:32,er2),@-er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\+er1" \
+       "mov.w  @(0x12345678:32,er2),@+er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@er1-" \
+       "mov.w  @(0x12345678:32,er2),@er1-"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x12345678:32,er2),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@0x9abc(:16|)" \
+       "mov.w  @(0x12345678:32,er2),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er2\\),@0x9abcdef0:32" \
+       "mov.w  @(0x12345678:32,er2),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@er1" \
+       "mov.w  @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@er1\\+" \
+       "mov.w  @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@-er1" \
+       "mov.w  @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\+er1" \
+       "mov.w  @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@er1-" \
+       "mov.w  @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x1234:16,r3l.b),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@0x9abc(:16|)" \
+       "mov.w  @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3l.b\\),@0x9abcdef0:32" \
+       "mov.w  @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@er1" \
+       "mov.w  @(0x1234:16,r3.w),@er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@er1\\+" \
+       "mov.w  @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@-er1" \
+       "mov.w  @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\+er1" \
+       "mov.w  @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@er1-" \
+       "mov.w  @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x1234:16,r3.w),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@0x9abc(:16|)" \
+       "mov.w  @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x1234:16,r3.w\\),@0x9abcdef0:32" \
+       "mov.w  @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@er1" \
+       "mov.w  @(0x1234:16,er3.l),@er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@er1\\+" \
+       "mov.w  @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@-er1" \
+       "mov.w  @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\+er1" \
+       "mov.w  @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@er1-" \
+       "mov.w  @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x1234:16,er3.l),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@0x9abc(:16|)" \
+       "mov.w  @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x1234:16,er3.l\\),@0x9abcdef0:32" \
+       "mov.w  @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@er1" \
+       "mov.w  @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@er1\\+" \
+       "mov.w  @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@-er1" \
+       "mov.w  @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\+er1" \
+       "mov.w  @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@er1-" \
+       "mov.w  @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w\t@\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w\t@\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@0x9abc(:16|)" \
+       "mov.w  @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3l.b\\),@0x9abcdef0:32" \
+       "mov.w  @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@er1" \
+       "mov.w  @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@er1\\+" \
+       "mov.w  @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@-er1" \
+       "mov.w  @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\+er1" \
+       "mov.w  @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@er1-" \
+       "mov.w  @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x12345678:32,r3.w),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@0x9abc(:16|)" \
+       "mov.w  @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x12345678:32,r3.w\\),@0x9abcdef0:32" \
+       "mov.w  @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@er1" \
+       "mov.w  @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x2:2,er1\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x2:2,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@er1\\+" \
+       "mov.w  @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@-er1" \
+       "mov.w  @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\+er1" \
+       "mov.w  @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@er1-" \
+       "mov.w  @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @(0x12345678:32,er3.l),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@0x9abc(:16|)" \
+       "mov.w  @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "mov.w    @\\(0x12345678:32,er3.l\\),@0x9abcdef0:32" \
+       "mov.w  @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "mov.w    @0x1234:16,@er1" \
+       "mov.w  @0x1234:16,@er1"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x2:2,er1\\)" \
+       "mov.w  @0x1234:16,@(0x2:2,er1)"
+gdb_test "x" "mov.w    @0x1234:16,@er1\\+" \
+       "mov.w  @0x1234:16,@er1+"
+gdb_test "x" "mov.w    @0x1234:16,@-er1" \
+       "mov.w  @0x1234:16,@-er1"
+gdb_test "x" "mov.w    @0x1234:16,@\\+er1" \
+       "mov.w  @0x1234:16,@+er1"
+gdb_test "x" "mov.w    @0x1234:16,@er1-" \
+       "mov.w  @0x1234:16,@er1-"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @0x1234:16,@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @0x1234:16,@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @0x1234:16,@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @0x1234:16,@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @0x1234:16,@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @0x1234:16,@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @0x1234:16,@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @0x1234:16,@0x9abc(:16|)" \
+       "mov.w  @0x1234:16,@0x9abc:16"
+gdb_test "x" "mov.w    @0x1234:16,@0x9abcdef0:32" \
+       "mov.w  @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "mov.w    @0x12345678:32,@er1" \
+       "mov.w  @0x12345678:32,@er1"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x2:2,er1\\)" \
+       "mov.w  @0x12345678:32,@(0x2:2,er1)"
+gdb_test "x" "mov.w    @0x12345678:32,@er1\\+" \
+       "mov.w  @0x12345678:32,@er1+"
+gdb_test "x" "mov.w    @0x12345678:32,@-er1" \
+       "mov.w  @0x12345678:32,@-er1"
+gdb_test "x" "mov.w    @0x12345678:32,@\\+er1" \
+       "mov.w  @0x12345678:32,@+er1"
+gdb_test "x" "mov.w    @0x12345678:32,@er1-" \
+       "mov.w  @0x12345678:32,@er1-"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abc(:16|),er1\\)" \
+       "mov.w  @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abcdef0:32,er1\\)" \
+       "mov.w  @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.w  @0x12345678:32,@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.w  @0x12345678:32,@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.w  @0x12345678:32,@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.w  @0x12345678:32,@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.w  @0x12345678:32,@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.w    @0x12345678:32,@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.w  @0x12345678:32,@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.w    @0x12345678:32,@0x9abc(:16|)" \
+       "mov.w  @0x12345678:32,@0x9abc:16"
+gdb_test "x" "mov.w    @0x12345678:32,@0x9abcdef0:32" \
+       "mov.w  @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "mov.l    #0x12345678(:32|),er1" \
+       "mov.l  #0x12345678:32,er1"
+gdb_test "x" "mov.l    #0x1234(:16|),er1" \
+       "mov.l  #0x1234:16,er1"
+gdb_test "x" "mov.l    #0x1(:3|),er3" \
+       "mov.l  #0x1:3,er3"
+gdb_test "x" "mov.l    #0x12345678(:32|),@er1" \
+       "mov.l  #0x12345678:32,@er1"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x4:2,er1\\)" \
+       "mov.l  #0x12345678:32,@(0x4:2,er1)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@-er1" \
+       "mov.l  #0x12345678:32,@-er1"
+gdb_test "x" "mov.l    #0x12345678(:32|),@er1\\+" \
+       "mov.l  #0x12345678:32,@er1+"
+gdb_test "x" "mov.l    #0x12345678(:32|),@er1-" \
+       "mov.l  #0x12345678:32,@er1-"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\+er1" \
+       "mov.l  #0x12345678:32,@+er1"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x1234:16,er1\\)" \
+       "mov.l  #0x12345678:32,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x12345678:32,er1\\)" \
+       "mov.l  #0x12345678:32,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  #0x12345678:32,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x1234:16,r3.w\\)" \
+       "mov.l  #0x12345678:32,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x1234:16,er3.l\\)" \
+       "mov.l  #0x12345678:32,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  #0x12345678:32,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  #0x12345678:32,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  #0x12345678:32,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    #0x12345678(:32|),@0x1234:16" \
+       "mov.l  #0x12345678:32,@0x1234:16"
+gdb_test "x" "mov.l    #0x12345678(:32|),@0x12345678:32" \
+       "mov.l  #0x12345678:32,@0x12345678:32"
+gdb_test "x" "mov.l    #0x1234(:16|),@er1" \
+       "mov.l  #0x1234:16,@er1"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x4:2,er1\\)" \
+       "mov.l  #0x1234:16,@\\(0x4:2,er1)"
+gdb_test "x" "mov.l    #0x1234(:16|),@-er1" \
+       "mov.l  #0x1234:16,@-er1"
+gdb_test "x" "mov.l    #0x1234(:16|),@er1\\+" \
+       "mov.l  #0x1234:16,@er1+"
+gdb_test "x" "mov.l    #0x1234(:16|),@er1-" \
+       "mov.l  #0x1234:16,@er1-"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\+er1" \
+       "mov.l  #0x1234:16,@+er1"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x1234:16,er1\\)" \
+       "mov.l  #0x1234:16,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x12345678:32,er1\\)" \
+       "mov.l  #0x1234:16,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  #0x1234:16,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x1234:16,r3.w\\)" \
+       "mov.l  #0x1234:16,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x1234:16,er3.l\\)" \
+       "mov.l  #0x1234:16,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  #0x1234:16,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  #0x1234:16,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    #0x1234(:16|),@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  #0x1234:16,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    #0x1234(:16|),@0x1234:16" \
+       "mov.l  #0x1234:16,@0x1234:16"
+gdb_test "x" "mov.l    #0x1234(:16|),@0x12345678:32" \
+       "mov.l  #0x1234:16,@0x12345678:32"
+gdb_test "x" "mov.l    #0x12(:8|),@er1" \
+       "mov.l  #0x12:8,@er1"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x4:2,er1\\)" \
+       "mov.l  #0x12:8,@(0x4:2,er1)"
+gdb_test "x" "mov.l    #0x12(:8|),@-er1" \
+       "mov.l  #0x12:8,@-er1"
+gdb_test "x" "mov.l    #0x12(:8|),@er1\\+" \
+       "mov.l  #0x12:8,@er1+"
+gdb_test "x" "mov.l    #0x12(:8|),@er1-" \
+       "mov.l  #0x12:8,@er1-"
+gdb_test "x" "mov.l    #0x12(:8|),@\\+er1" \
+       "mov.l  #0x12:8,@+er1"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x1234:16,er1\\)" \
+       "mov.l  #0x12:8,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x12345678:32,er1\\)" \
+       "mov.l  #0x12:8,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  #0x12:8,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x1234:16,r3.w\\)" \
+       "mov.l  #0x12:8,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x1234:16,er3.l\\)" \
+       "mov.l  #0x12:8,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  #0x12:8,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  #0x12:8,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    #0x12(:8|),@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  #0x12:8,@\\(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    #0x12(:8|),@0x1234:16" \
+       "mov.l  #0x12:8,@0x1234:16"
+gdb_test "x" "mov.l    #0x12(:8|),@0x12345678:32" \
+       "mov.l  #0x12:8,@0x12345678:32"
+gdb_test "x" "mov.l    er2,er1" \
+       "mov.l  er2,er1"
+gdb_test "x" "mov.l    er2,@er1" \
+       "mov.l  er2,@er1"
+gdb_test "x" "mov.l    er2,@\\(0x4:2,er1\\)" \
+       "mov.l  er2,@(0x4:2,er1)"
+gdb_test "x" "mov.l    er2,@-er1" \
+       "mov.l  er2,@-er1"
+gdb_test "x" "mov.l    er2,@er1\\+" \
+       "mov.l  er2,@er1+"
+gdb_test "x" "mov.l    er2,@er1-" \
+       "mov.l  er2,@er1-"
+gdb_test "x" "mov.l    er2,@\\+er1" \
+       "mov.l  er2,@+er1"
+gdb_test "x" "mov.l    er2,@\\(0x1234:16,er1\\)" \
+       "mov.l  er2,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    er2,@\\(0x12345678:32,er1\\)" \
+       "mov.l  er2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    er2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  er2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    er2,@\\(0x1234:16,r3.w\\)" \
+       "mov.l  er2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    er2,@\\(0x1234:16,er3.l\\)" \
+       "mov.l  er2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    er2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  er2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    er2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  er2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    er2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  er2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    er2,@0x1234:16" \
+       "mov.l  er2,@0x1234:16"
+gdb_test "x" "mov.l    er2,@0x12345678:32" \
+       "mov.l  er2,@0x12345678:32"
+gdb_test "x" "mov.l    @er2,er1" \
+       "mov.l  @er2,er1"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),er1" \
+       "mov.l  @(0x4:2,er2),er1"
+gdb_test "x" "mov.l    @er2\\+,er1" \
+       "mov.l  @er2+,er1"
+gdb_test "x" "mov.l    @-er2,er1" \
+       "mov.l  @-er2,er1"
+gdb_test "x" "mov.l    @\\+er2,er1" \
+       "mov.l  @+er2,er1"
+gdb_test "x" "mov.l    @er2-,er1" \
+       "mov.l  @er2-,er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er1\\),er1" \
+       "mov.l  @(0x1234:16,er1),er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er1\\),er1" \
+       "mov.l  @(0x12345678:32,er1),er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),er1" \
+       "mov.l  @(0x1234:16,r3l.b),er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),er1" \
+       "mov.l  @(0x1234:16,r3.w),er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),er1" \
+       "mov.l  @(0x1234:16,er3.l),er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),er1" \
+       "mov.l  @(0x12345678:32,r3l.b),er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),er1" \
+       "mov.l  @(0x12345678:32,r3.w),er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),er1" \
+       "mov.l  @(0x12345678:32,er3.l),er1"
+gdb_test "x" "mov.l    @0x1234:16,er1" \
+       "mov.l  @0x1234:16,er1"
+gdb_test "x" "mov.l    @0x12345678:32,er1" \
+       "mov.l  @0x12345678:32,er1"
+gdb_test "x" "mov.l    @er2,@er1" \
+       "mov.l  @er2,@er1"
+gdb_test "x" "mov.l    @er2,@\\(0x4:2,er1\\)" \
+       "mov.l  @er2,@(0x4:2,er1)"
+gdb_test "x" "mov.l    @er2,@er1\\+" \
+       "mov.l  @er2,@er1+"
+gdb_test "x" "mov.l    @er2,@-er1" \
+       "mov.l  @er2,@-er1"
+gdb_test "x" "mov.l    @er2,@\\+er1" \
+       "mov.l  @er2,@+er1"
+gdb_test "x" "mov.l    @er2,@er1-" \
+       "mov.l  @er2,@er1-"
+gdb_test "x" "mov.l    @er2,@\\(0x1234:16,er1\\)" \
+       "mov.l  @er2,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    @er2,@\\(0x12345678:32,er1\\)" \
+       "mov.l  @er2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    @er2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  @er2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    @er2,@\\(0x1234:16,r3.w\\)" \
+       "mov.l  @er2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    @er2,@\\(0x1234:16,er3.l\\)" \
+       "mov.l  @er2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    @er2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  @er2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    @er2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  @er2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    @er2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  @er2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    @er2,@0x1234:16" \
+       "mov.l  @er2,@0x1234:16"
+gdb_test "x" "mov.l    @er2,@0x12345678:32" \
+       "mov.l  @er2,@0x12345678:32"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@er1" \
+       "mov.l  @(0x4:2,er2),@er1"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x4:2,er2),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@er1\\+" \
+       "mov.l  @(0x4:2,er2),@er1+"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@-er1" \
+       "mov.l  @(0x4:2,er2),@-er1"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\+er1" \
+       "mov.l  @(0x4:2,er2),@+er1"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@er1-" \
+       "mov.l  @(0x4:2,er2),@er1-"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x1234:16,er1\\)" \
+       "mov.l  @(0x4:2,er2),@(0x1234:16,er1)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x12345678:32,er1\\)" \
+       "mov.l  @(0x4:2,er2),@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  @(0x4:2,er2),@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x1234:16,r3.w\\)" \
+       "mov.l  @(0x4:2,er2),@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x1234:16,er3.l\\)" \
+       "mov.l  @(0x4:2,er2),@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  @(0x4:2,er2),@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  @(0x4:2,er2),@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  @(0x4:2,er2),@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@0x1234:16" \
+       "mov.l  @(0x4:2,er2),@0x1234:16"
+gdb_test "x" "mov.l    @\\(0x4:2,er2\\),@0x12345678:32" \
+       "mov.l  @(0x4:2,er2),@0x12345678:32"
+gdb_test "x" "mov.l    @-er2,@er1" \
+       "mov.l  @-er2,@er1"
+gdb_test "x" "mov.l    @-er2,@\\(0x4:2,er1\\)" \
+       "mov.l  @-er2,@(0x4:2,er1)"
+gdb_test "x" "mov.l    @-er2,@er1\\+" \
+       "mov.l  @-er2,@er1+"
+gdb_test "x" "mov.l    @-er2,@-er1" \
+       "mov.l  @-er2,@-er1"
+gdb_test "x" "mov.l    @-er2,@\\+er1" \
+       "mov.l  @-er2,@+er1"
+gdb_test "x" "mov.l    @-er2,@er1-" \
+       "mov.l  @-er2,@er1-"
+gdb_test "x" "mov.l    @-er2,@\\(0x1234:16,er1\\)" \
+       "mov.l  @-er2,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    @-er2,@\\(0x12345678:32,er1\\)" \
+       "mov.l  @-er2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    @-er2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  @-er2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    @-er2,@\\(0x1234:16,r3.w\\)" \
+       "mov.l  @-er2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    @-er2,@\\(0x1234:16,er3.l\\)" \
+       "mov.l  @-er2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    @-er2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  @-er2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    @-er2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  @-er2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    @-er2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  @-er2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    @-er2,@0x1234:16" \
+       "mov.l  @-er2,@0x1234:16"
+gdb_test "x" "mov.l    @-er2,@0x12345678:32" \
+       "mov.l  @-er2,@0x12345678:32"
+gdb_test "x" "mov.l    @er2\\+,@er1" \
+       "mov.l  @er2+,@er1"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x4:2,er1\\)" \
+       "mov.l  @er2+,@(0x4:2,er1)"
+gdb_test "x" "mov.l    @er2\\+,@er1\\+" \
+       "mov.l  @er2+,@er1+"
+gdb_test "x" "mov.l    @er2\\+,@-er1" \
+       "mov.l  @er2+,@-er1"
+gdb_test "x" "mov.l    @er2\\+,@\\+er1" \
+       "mov.l  @er2+,@+er1"
+gdb_test "x" "mov.l    @er2\\+,@er1-" \
+       "mov.l  @er2+,@er1-"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x1234:16,er1\\)" \
+       "mov.l  @er2+,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x12345678:32,er1\\)" \
+       "mov.l  @er2+,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  @er2+,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x1234:16,r3.w\\)" \
+       "mov.l  @er2+,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x1234:16,er3.l\\)" \
+       "mov.l  @er2+,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  @er2+,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  @er2+,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    @er2\\+,@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  @er2+,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    @er2\\+,@0x1234:16" \
+       "mov.l  @er2+,@0x1234:16"
+gdb_test "x" "mov.l    @er2\\+,@0x12345678:32" \
+       "mov.l  @er2+,@0x12345678:32"
+gdb_test "x" "mov.l    @er2-,@er1" \
+       "mov.l  @er2-,@er1"
+gdb_test "x" "mov.l    @er2-,@\\(0x4:2,er1\\)" \
+       "mov.l  @er2-,@(0x4:2,er1)"
+gdb_test "x" "mov.l    @er2-,@er1\\+" \
+       "mov.l  @er2-,@er1+"
+gdb_test "x" "mov.l    @er2-,@-er1" \
+       "mov.l  @er2-,@-er1"
+gdb_test "x" "mov.l    @er2-,@\\+er1" \
+       "mov.l  @er2-,@+er1"
+gdb_test "x" "mov.l    @er2-,@er1-" \
+       "mov.l  @er2-,@er1-"
+gdb_test "x" "mov.l    @er2-,@\\(0x1234:16,er1\\)" \
+       "mov.l  @er2-,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    @er2-,@\\(0x12345678:32,er1\\)" \
+       "mov.l  @er2-,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    @er2-,@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  @er2-,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    @er2-,@\\(0x1234:16,r3.w\\)" \
+       "mov.l  @er2-,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    @er2-,@\\(0x1234:16,er3.l\\)" \
+       "mov.l  @er2-,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    @er2-,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  @er2-,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    @er2-,@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  @er2-,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    @er2-,@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  @er2-,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    @er2-,@0x1234:16" \
+       "mov.l  @er2-,@0x1234:16"
+gdb_test "x" "mov.l    @er2-,@0x12345678:32" \
+       "mov.l  @er2-,@0x12345678:32"
+gdb_test "x" "mov.l    @\\+er2,@er1" \
+       "mov.l  @+er2,@er1"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x4:2,er1\\)" \
+       "mov.l  @+er2,@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\+er2,@er1\\+" \
+       "mov.l  @+er2,@er1+"
+gdb_test "x" "mov.l    @\\+er2,@-er1" \
+       "mov.l  @+er2,@-er1"
+gdb_test "x" "mov.l    @\\+er2,@\\+er1" \
+       "mov.l  @+er2,@+er1"
+gdb_test "x" "mov.l    @\\+er2,@er1-" \
+       "mov.l  @+er2,@er1-"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x1234:16,er1\\)" \
+       "mov.l  @+er2,@(0x1234:16,er1)"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x12345678:32,er1\\)" \
+       "mov.l  @+er2,@(0x12345678:32,er1)"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x1234:16,r3l.b\\)" \
+       "mov.l  @+er2,@(0x1234:16,r3l.b)"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x1234:16,r3.w\\)" \
+       "mov.l  @+er2,@(0x1234:16,r3.w)"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x1234:16,er3.l\\)" \
+       "mov.l  @+er2,@(0x1234:16,er3.l)"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x12345678:32,r3l.b\\)" \
+       "mov.l  @+er2,@(0x12345678:32,r3l.b)"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x12345678:32,r3.w\\)" \
+       "mov.l  @+er2,@(0x12345678:32,r3.w)"
+gdb_test "x" "mov.l    @\\+er2,@\\(0x12345678:32,er3.l\\)" \
+       "mov.l  @+er2,@(0x12345678:32,er3.l)"
+gdb_test "x" "mov.l    @\\+er2,@0x1234:16" \
+       "mov.l  @+er2,@0x1234:16"
+gdb_test "x" "mov.l    @\\+er2,@0x12345678:32" \
+       "mov.l  @+er2,@0x12345678:32"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@er1" \
+       "mov.l  @(0x1234:16,er2),@er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@er1\\+" \
+       "mov.l  @(0x1234:16,er2),@er1+"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@-er1" \
+       "mov.l  @(0x1234:16,er2),@-er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\+er1" \
+       "mov.l  @(0x1234:16,er2),@+er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@er1-" \
+       "mov.l  @(0x1234:16,er2),@er1-"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x1234:16,er2),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@0x9abc(:16|)" \
+       "mov.l  @(0x1234:16,er2),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x1234:16,er2\\),@0x9abcdef0:32" \
+       "mov.l  @(0x1234:16,er2),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@er1" \
+       "mov.l  @(0x12345678:32,er2),@er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@er1\\+" \
+       "mov.l  @(0x12345678:32,er2),@er1+"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@-er1" \
+       "mov.l  @(0x12345678:32,er2),@-er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\+er1" \
+       "mov.l  @(0x12345678:32,er2),@+er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@er1-" \
+       "mov.l  @(0x12345678:32,er2),@er1-"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x12345678:32,er2),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@0x9abc(:16|)" \
+       "mov.l  @(0x12345678:32,er2),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er2\\),@0x9abcdef0:32" \
+       "mov.l  @(0x12345678:32,er2),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@er1" \
+       "mov.l  @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@er1\\+" \
+       "mov.l  @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@-er1" \
+       "mov.l  @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\+er1" \
+       "mov.l  @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@er1-" \
+       "mov.l  @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x1234:16,r3l.b),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@0x9abc(:16|)" \
+       "mov.l  @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3l.b\\),@0x9abcdef0:32" \
+       "mov.l  @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@er1" \
+       "mov.l  @(0x1234:16,r3.w),@er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@er1\\+" \
+       "mov.l  @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@-er1" \
+       "mov.l  @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\+er1" \
+       "mov.l  @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@er1-" \
+       "mov.l  @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x1234:16,r3.w),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@0x9abc(:16|)" \
+       "mov.l  @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x1234:16,r3.w\\),@0x9abcdef0:32" \
+       "mov.l  @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@er1" \
+       "mov.l  @(0x1234:16,er3.l),@er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@er1\\+" \
+       "mov.l  @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@-er1" \
+       "mov.l  @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\+er1" \
+       "mov.l  @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@er1-" \
+       "mov.l  @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abc16,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abc16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x1234:16,er3.l),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@0x9abc(:16|)" \
+       "mov.l  @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x1234:16,er3.l\\),@0x9abcdef0:32" \
+       "mov.l  @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@er1" \
+       "mov.l  @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@er1\\+" \
+       "mov.l  @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@-er1" \
+       "mov.l  @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\+er1" \
+       "mov.l  @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@er1-" \
+       "mov.l  @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@0x9abc(:16|)" \
+       "mov.l  @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3l.b\\),@0x9abcdef0:32" \
+       "mov.l  @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@er1" \
+       "mov.l  @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@er1\\+" \
+       "mov.l  @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@-er1" \
+       "mov.l  @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\+er1" \
+       "mov.l  @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@er1-" \
+       "mov.l  @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x12345678:32,r3.w),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@0x9abc(:16|)" \
+       "mov.l  @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x12345678:32,r3.w\\),@0x9abcdef0:32" \
+       "mov.l  @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@er1" \
+       "mov.l  @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x4:2,er1\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x4:2,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@er1\\+" \
+       "mov.l  @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@-er1" \
+       "mov.l  @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\+er1" \
+       "mov.l  @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@er1-" \
+       "mov.l  @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l\t@\\(0x12345678:32,er3.l\\),@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @(0x12345678:32,er3.l),@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@0x9abc(:16|)" \
+       "mov.l  @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "mov.l    @\\(0x12345678:32,er3.l\\),@0x9abcdef0:32" \
+       "mov.l  @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "mov.l    @0x1234:16,@er1" \
+       "mov.l  @0x1234:16,@er1"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x4:2,er1\\)" \
+       "mov.l  @0x1234:16,@(0x4:2,er1)"
+gdb_test "x" "mov.l    @0x1234:16,@er1\\+" \
+       "mov.l  @0x1234:16,@er1+"
+gdb_test "x" "mov.l    @0x1234:16,@-er1" \
+       "mov.l  @0x1234:16,@-er1"
+gdb_test "x" "mov.l    @0x1234:16,@\\+er1" \
+       "mov.l  @0x1234:16,@+er1"
+gdb_test "x" "mov.l    @0x1234:16,@er1-" \
+       "mov.l  @0x1234:16,@er1-"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @0x1234:16,@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @0x1234:16,@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @0x1234:16,@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @0x1234:16,@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @0x1234:16,@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @0x1234:16,@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @0x1234:16,@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @0x1234:16,@0x9abc(:16|)" \
+       "mov.l  @0x1234:16,@0x9abc:16"
+gdb_test "x" "mov.l    @0x1234:16,@0x9abcdef0:32" \
+       "mov.l  @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "mov.l    @0x12345678:32,@er1" \
+       "mov.l  @0x12345678:32,@er1"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x4:2,er1\\)" \
+       "mov.l  @0x12345678:32,@(0x4:2,er1)"
+gdb_test "x" "mov.l    @0x12345678:32,@er1\\+" \
+       "mov.l  @0x12345678:32,@er1+"
+gdb_test "x" "mov.l    @0x12345678:32,@-er1" \
+       "mov.l  @0x12345678:32,@-er1"
+gdb_test "x" "mov.l    @0x12345678:32,@\\+er1" \
+       "mov.l  @0x12345678:32,@+er1"
+gdb_test "x" "mov.l    @0x12345678:32,@er1-" \
+       "mov.l  @0x12345678:32,@er1-"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abc(:16|),er1\\)" \
+       "mov.l  @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abcdef0:32,er1\\)" \
+       "mov.l  @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abc(:16|),r3l.b\\)" \
+       "mov.l  @0x12345678:32,@(0x9abc:16,r3l.b)"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abc(:16|),r3.w\\)" \
+       "mov.l  @0x12345678:32,@(0x9abc:16,r3.w)"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abc(:16|),er3.l\\)" \
+       "mov.l  @0x12345678:32,@(0x9abc:16,er3.l)"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abcdef0:32,r3l.b\\)" \
+       "mov.l  @0x12345678:32,@(0x9abcdef0:32,r3l.b)"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abcdef0:32,r3.w\\)" \
+       "mov.l  @0x12345678:32,@(0x9abcdef0:32,r3.w)"
+gdb_test "x" "mov.l    @0x12345678:32,@\\(0x9abcdef0:32,er3.l\\)" \
+       "mov.l  @0x12345678:32,@(0x9abcdef0:32,er3.l)"
+gdb_test "x" "mov.l    @0x12345678:32,@0x9abc(:16|)" \
+       "mov.l  @0x12345678:32,@0x9abc:16"
+gdb_test "x" "mov.l    @0x12345678:32,@0x9abcdef0:32" \
+       "mov.l  @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "movtpe(.b|)      r2h,@0x1234:16" \
+       "movtpe.b       r2h,@0x1234:16"
+gdb_test "x" "movfpe(.b|)      @0x1234:16,r1h" \
+       "movfpe.b       @0x1234:16,r1h"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er0-er1(\\)|)" \
+       "ldm.l  @sp+,er0-er1"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er1-er2(\\)|)" \
+       "ldm.l  @sp+,er1-er2"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er2-er3(\\)|)" \
+       "ldm.l  @sp+,er2-er3"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er3-er4(\\)|)" \
+       "ldm.l  @sp+,er3-er4"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er4-er5(\\)|)" \
+       "ldm.l  @sp+,er4-er5"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er5-er6(\\)|)" \
+       "ldm.l  @sp+,er5-er6"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er6-er7(\\)|)" \
+       "ldm.l  @sp+,er6-er7"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er0-er2(\\)|)" \
+       "ldm.l  @sp+,er0-er2"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er1-er3(\\)|)" \
+       "ldm.l  @sp+,er1-er3"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er2-er4(\\)|)" \
+       "ldm.l  @sp+,er2-er4"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er3-er5(\\)|)" \
+       "ldm.l  @sp+,er3-er5"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er4-er6(\\)|)" \
+       "ldm.l  @sp+,er4-er6"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er5-er7(\\)|)" \
+       "ldm.l  @sp+,er5-er7"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er0-er3(\\)|)" \
+       "ldm.l  @sp+,er0-er3"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er1-er4(\\)|)" \
+       "ldm.l  @sp+,er1-er4"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er2-er5(\\)|)" \
+       "ldm.l  @sp+,er2-er5"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er3-er6(\\)|)" \
+       "ldm.l  @sp+,er3-er6"
+gdb_test "x" "ldm(.l|) @sp\\+,(\\(|)er4-er7(\\)|)" \
+       "ldm.l  @sp+,er4-er7"
+gdb_test "x" "stm(.l)  (\\(|)er0-er1(\\)|),@-sp" \
+       "stm.l  er0-er1,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er1-er2(\\)|),@-sp" \
+       "stm.l  er1-er2,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er2-er3(\\)|),@-sp" \
+       "stm.l  er2-er3,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er3-er4(\\)|),@-sp" \
+       "stm.l  er3-er4,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er4-er5(\\)|),@-sp" \
+       "stm.l  er4-er5,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er5-er6(\\)|),@-sp" \
+       "stm.l  er5-er6,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er6-er7(\\)|),@-sp" \
+       "stm.l  er6-er7,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er0-er2(\\)|),@-sp" \
+       "stm.l  er0-er2,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er1-er3(\\)|),@-sp" \
+       "stm.l  er1-er3,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er2-er4(\\)|),@-sp" \
+       "stm.l  er2-er4,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er3-er5(\\)|),@-sp" \
+       "stm.l  er3-er5,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er4-er6(\\)|),@-sp" \
+       "stm.l  er4-er6,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er5-er7(\\)|),@-sp" \
+       "stm.l  er5-er7,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er0-er3(\\)|),@-sp" \
+       "stm.l  er0-er3,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er1-er4(\\)|),@-sp" \
+       "stm.l  er1-er4,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er2-er5(\\)|),@-sp" \
+       "stm.l  er2-er5,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er3-er6(\\)|),@-sp" \
+       "stm.l  er3-er6,@-sp"
+gdb_test "x" "stm(.l)  (\\(|)er4-er7(\\)|),@-sp" \
+       "stm.l  er4-er7,@-sp"
+gdb_test "x" "eepmov.b(\t|)" \
+       "eepmov.b"
+gdb_test "x" "eepmov.w(\t|)" \
+       "eepmov.w"
+gdb_test "x" "movmd.b(\t|)" \
+       "movmd.b"
+gdb_test "x" "movmd.w(\t|)" \
+       "movmd.w"
+gdb_test "x" "movmd.l(\t|)" \
+       "movmd.l"
+gdb_test "x" "movsd.b\t\\.\\+4 \\($hex\\)" \
+       "movsd.b        .+4"
diff --git a/gdb/testsuite/gdb.disasm/t01_mov.s b/gdb/testsuite/gdb.disasm/t01_mov.s
new file mode 100644 (file)
index 0000000..fab7fb9
--- /dev/null
@@ -0,0 +1,1107 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;mov\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    mov.b #0x12:8,r3h                   ;f312\r
+    mov.b #0x12:8,@er3                 ;017d0312\r
+    mov.b #0x12:8,@(0x1:2,er3)           ;017d1312\r
+    mov.b #0x12:8,@-er3                ;017db312\r
+    mov.b #0x12:8,@er3+                ;017d8312\r
+    mov.b #0x12:8,@er3-                ;017da312\r
+    mov.b #0x12:8,@+er3                ;017d9312\r
+    mov.b #0x12:8,@(0x1234:16,er3)          ;017dc3121234\r
+    mov.b #0x12:8,@(0x12345678:32,er3)          ;017dcb1212345678\r
+    mov.b #0x12:8,@(0x1234:16,r3l.b)        ;017dd3121234\r
+    mov.b #0x12:8,@(0x1234:16,r3.w)        ;017de3121234\r
+    mov.b #0x12:8,@(0x1234:16,er3.l)        ;017df3121234\r
+    mov.b #0x12:8,@(0x12345678:32,r3l.b)        ;017ddb1212345678\r
+    mov.b #0x12:8,@(0x12345678:32,r3.w)        ;017deb1212345678\r
+    mov.b #0x12:8,@(0x12345678:32,er3.l)        ;017dfb1212345678\r
+    mov.b #0x12:8,@0x1234:16               ;017d40121234\r
+    mov.b #0x12:8,@0x12345678:32               ;017d481212345678\r
+\r
+    mov.b #0x1:4,@0x1234:16               ;6ad11234\r
+    mov.b #0x1:4,@0x12345678:32               ;6af112345678\r
+\r
+    mov.b r3h,r1h                        ;0c31\r
+\r
+    mov.b r3h,@er1                      ;6893\r
+    mov.b r3h,@(0x1:2,er1)                ;01716893\r
+    mov.b r3h,@-er1                     ;6c93\r
+    mov.b r3h,@er1+                     ;01736c93\r
+    mov.b r3h,@er1-                     ;01716c93\r
+    mov.b r3h,@+er1                     ;01726c93\r
+    mov.b r3h,@(0x1234:16,er1)               ;6e931234\r
+    mov.b r3h,@(0x12345678:32,er1)               ;78106aa312345678\r
+    mov.b r3h,@(0x1234:16,r1l.b)             ;01716e931234\r
+    mov.b r3h,@(0x1234:16,r1.w)             ;01726e931234\r
+    mov.b r3h,@(0x1234:16,er1.l)             ;01736e931234\r
+    mov.b r3h,@(0x12345678:32,r1l.b)             ;78116aa312345678\r
+    mov.b r3h,@(0x12345678:32,r1.w)             ;78126aa312345678\r
+    mov.b r3h,@(0x12345678:32,er1.l)             ;78136aa312345678\r
+    mov.b r3h,@0xffffff12:8                     ;3312\r
+    mov.b r3h,@0x1234:16                    ;6a831234\r
+    mov.b r3h,@0x12345678:32                    ;6aa312345678\r
+\r
+    mov.b @er3,r1h                      ;6831\r
+    mov.b @(0x1:2,er3),r1h               ;01716831\r
+    mov.b @er3+,r1h                    ;6c31\r
+    mov.b @-er3,r1h                    ;01736c31\r
+    mov.b @+er3,r1h                    ;01716c31\r
+    mov.b @er3-,r1h                    ;01726c31\r
+    mov.b @(0x1234:16,er3),r1h               ;6e311234\r
+    mov.b @(0x12345678:32,er3),r1h               ;78306a2112345678\r
+    mov.b @(0x1234:16,r3l.b),r1h             ;01716e311234\r
+    mov.b @(0x1234:16,r3.w),r1h             ;01726e311234\r
+    mov.b @(0x1234:16,er3.l),r1h             ;01736e311234\r
+    mov.b @(0x12345678:32,r3l.b),r1h             ;78316a2112345678\r
+    mov.b @(0x12345678:32,r3.w),r1h             ;78326a2112345678\r
+    mov.b @(0x12345678:32,er3.l),r1h             ;78336a2112345678\r
+    mov.b @0xffffff12:8,r3h                     ;2312\r
+    mov.b @0x1234:16,r3h                    ;6a031234\r
+    mov.b @0x12345678:32,r3h                    ;6a2312345678\r
+\r
+    mov.b @er3,@er1                   ;01780301\r
+    mov.b @er3,@(0x1:2,er1)            ;01780311\r
+    mov.b @er3,@er1+                  ;01780381\r
+    mov.b @er3,@-er1                  ;017803b1\r
+    mov.b @er3,@+er1                  ;01780391\r
+    mov.b @er3,@er1-                  ;017803a1\r
+    mov.b @er3,@(0x1234:16,er1)           ;017803c11234\r
+    mov.b @er3,@(0x12345678:32,er1)           ;017803c912345678\r
+    mov.b @er3,@(0x1234:16,r1l.b)         ;017803d11234\r
+    mov.b @er3,@(0x1234:16,r1.w)         ;017803e11234\r
+    mov.b @er3,@(0x1234:16,er1.l)         ;017803f11234\r
+    mov.b @er3,@(0x12345678:32,r1l.b)         ;017803d912345678\r
+    mov.b @er3,@(0x12345678:32,r1.w)         ;017803e912345678\r
+    mov.b @er3,@(0x12345678:32,er1.l)         ;017803f912345678\r
+    mov.b @er3,@0x1234:16                 ;017803401234\r
+    mov.b @er3,@0x12345678:32                 ;0178034812345678\r
+\r
+    mov.b @(0x1:2,er3),@er1            ;01781301            \r
+    mov.b @(0x1:2,er3),@(0x1:2,er1)     ;01781311            \r
+    mov.b @(0x1:2,er3),@er1+           ;01781381            \r
+    mov.b @(0x1:2,er3),@-er1           ;017813b1            \r
+    mov.b @(0x1:2,er3),@+er1           ;01781391            \r
+    mov.b @(0x1:2,er3),@er1-           ;017813a1            \r
+    mov.b @(0x1:2,er3),@(0x1234:16,er1)    ;017813c11234\r
+    mov.b @(0x1:2,er3),@(0x12345678:32,er1)    ;017813c912345678\r
+    mov.b @(0x1:2,er3),@(0x1234:16,r1l.b)  ;017813d11234\r
+    mov.b @(0x1:2,er3),@(0x1234:16,r1.w)  ;017813e11234\r
+    mov.b @(0x1:2,er3),@(0x1234:16,er1.l)  ;017813f11234\r
+    mov.b @(0x1:2,er3),@(0x12345678:32,r1l.b)  ;017813d912345678\r
+    mov.b @(0x1:2,er3),@(0x12345678:32,r1.w)  ;017813e912345678\r
+    mov.b @(0x1:2,er3),@(0x12345678:32,er1.l)  ;017813f912345678\r
+    mov.b @(0x1:2,er3),@0x1234:16          ;017813401234\r
+    mov.b @(0x1:2,er3),@0x12345678:32          ;0178134812345678\r
+\r
+    mov.b @-er3,@er1                  ;0178b301\r
+    mov.b @-er3,@(0x1:2,er1)           ;0178b311            \r
+    mov.b @-er3,@er1+                 ;0178b381            \r
+    mov.b @-er3,@-er1                 ;0178b3b1            \r
+    mov.b @-er3,@+er1                 ;0178b391            \r
+    mov.b @-er3,@er1-                 ;0178b3a1            \r
+    mov.b @-er3,@(0x1234:16,er1)          ;0178b3c11234\r
+    mov.b @-er3,@(0x12345678:32,er1)          ;0178b3c912345678\r
+    mov.b @-er3,@(0x1234:16,r1l.b)        ;0178b3d11234\r
+    mov.b @-er3,@(0x1234:16,r1.w)        ;0178b3e11234\r
+    mov.b @-er3,@(0x1234:16,er1.l)        ;0178b3f11234\r
+    mov.b @-er3,@(0x12345678:32,r1l.b)        ;0178b3d912345678\r
+    mov.b @-er3,@(0x12345678:32,r1.w)        ;0178b3e912345678\r
+    mov.b @-er3,@(0x12345678:32,er1.l)        ;0178b3f912345678\r
+    mov.b @-er3,@0x1234:16                ;0178b3401234\r
+    mov.b @-er3,@0x12345678:32                ;0178b34812345678\r
+\r
+    mov.b @er3+,@er1                  ;01788301\r
+    mov.b @er3+,@(0x1:2,er1)           ;01788311            \r
+    mov.b @er3+,@er1+                 ;01788381            \r
+    mov.b @er3+,@-er1                 ;017883b1            \r
+    mov.b @er3+,@+er1                 ;01788391            \r
+    mov.b @er3+,@er1-                 ;017883a1            \r
+    mov.b @er3+,@(0x1234:16,er1)          ;017883c11234\r
+    mov.b @er3+,@(0x12345678:32,er1)          ;017883c912345678\r
+    mov.b @er3+,@(0x1234:16,r1l.b)        ;017883d11234\r
+    mov.b @er3+,@(0x1234:16,r1.w)        ;017883e11234\r
+    mov.b @er3+,@(0x1234:16,er1.l)        ;017883f11234\r
+    mov.b @er3+,@(0x12345678:32,r1l.b)        ;017883d912345678\r
+    mov.b @er3+,@(0x12345678:32,r1.w)        ;017883e912345678\r
+    mov.b @er3+,@(0x12345678:32,er1.l)        ;017883f912345678\r
+    mov.b @er3+,@0x1234:16                ;017883401234\r
+    mov.b @er3+,@0x12345678:32                ;0178834812345678\r
+\r
+    mov.b @er3-,@er1                  ;0178a301\r
+    mov.b @er3-,@(0x1:2,er1)           ;0178a311            \r
+    mov.b @er3-,@er1+                 ;0178a381            \r
+    mov.b @er3-,@-er1                 ;0178a3b1            \r
+    mov.b @er3-,@+er1                 ;0178a391            \r
+    mov.b @er3-,@er1-                 ;0178a3a1            \r
+    mov.b @er3-,@(0x1234:16,er1)          ;0178a3c11234\r
+    mov.b @er3-,@(0x12345678:32,er1)          ;0178a3c912345678\r
+    mov.b @er3-,@(0x1234:16,r1l.b)        ;0178a3d11234\r
+    mov.b @er3-,@(0x1234:16,r1.w)        ;0178a3e11234\r
+    mov.b @er3-,@(0x1234:16,er1.l)        ;0178a3f11234\r
+    mov.b @er3-,@(0x12345678:32,r1l.b)        ;0178a3d912345678\r
+    mov.b @er3-,@(0x12345678:32,r1.w)        ;0178a3e912345678\r
+    mov.b @er3-,@(0x12345678:32,er1.l)        ;0178a3f912345678\r
+    mov.b @er3-,@0x1234:16                ;0178a3401234\r
+    mov.b @er3-,@0x12345678:32                ;0178a34812345678\r
+\r
+    mov.b @+er3,@er1                  ;01789301\r
+    mov.b @+er3,@(0x1:2,er1)           ;01789311            \r
+    mov.b @+er3,@er1+                 ;01789381            \r
+    mov.b @+er3,@-er1                 ;017893b1            \r
+    mov.b @+er3,@+er1                 ;01789391            \r
+    mov.b @+er3,@er1-                 ;017893a1            \r
+    mov.b @+er3,@(0x1234:16,er1)          ;017893c11234\r
+    mov.b @+er3,@(0x12345678:32,er1)          ;017893c912345678\r
+    mov.b @+er3,@(0x1234:16,r1l.b)        ;017893d11234\r
+    mov.b @+er3,@(0x1234:16,r1.w)        ;017893e11234\r
+    mov.b @+er3,@(0x1234:16,er1.l)        ;017893f11234\r
+    mov.b @+er3,@(0x12345678:32,r1l.b)        ;017893d912345678\r
+    mov.b @+er3,@(0x12345678:32,r1.w)        ;017893e912345678\r
+    mov.b @+er3,@(0x12345678:32,er1.l)        ;017893f912345678\r
+    mov.b @+er3,@0x1234:16                ;017893401234\r
+    mov.b @+er3,@0x12345678:32                ;0178934812345678\r
+\r
+    mov.b @(0x1234:16,er3),@er1           ;0178c3011234\r
+    mov.b @(0x1234:16,er3),@(0x1:2,er1)    ;0178c3111234\r
+    mov.b @(0x1234:16,er3),@er1+          ;0178c3811234\r
+    mov.b @(0x1234:16,er3),@-er1          ;0178c3b11234\r
+    mov.b @(0x1234:16,er3),@+er1          ;0178c3911234\r
+    mov.b @(0x1234:16,er3),@er1-          ;0178c3a11234\r
+    mov.b @(0x1234:16,er3),@(0xffff9abc:16,er1)   ;0178c3c112349abc\r
+    mov.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)   ;0178c3c912349abcdef0\r
+    mov.b @(0x1234:16,er3),@(0xffff9abc:16,r1l.b) ;0178c3d112349abc\r
+    mov.b @(0x1234:16,er3),@(0xffff9abc:16,r1.w) ;0178c3e112349abc\r
+    mov.b @(0x1234:16,er3),@(0xffff9abc:16,er1.l) ;0178c3f112349abc\r
+    mov.b @(0x1234:16,er3),@(0x9abcdef0:32,r1l.b) ;0178c3d912349abcdef0\r
+    mov.b @(0x1234:16,er3),@(0x9abcdef0:32,r1.w) ;0178c3e912349abcdef0\r
+    mov.b @(0x1234:16,er3),@(0x9abcdef0:32,er1.l) ;0178c3f912349abcdef0\r
+    mov.b @(0x1234:16,er3),@0xffff9abc:16         ;0178c34012349abc\r
+    mov.b @(0x1234:16,er3),@0x9abcdef0:32         ;0178c34812349abcdef0\r
+\r
+    mov.b @(0x12345678:32,er3),@er1           ;0178cb0112345678\r
+    mov.b @(0x12345678:32,er3),@(0x1:2,er1)    ;0178cb1112345678\r
+    mov.b @(0x12345678:32,er3),@er1+          ;0178cb8112345678\r
+    mov.b @(0x12345678:32,er3),@-er1          ;0178cbb112345678\r
+    mov.b @(0x12345678:32,er3),@+er1          ;0178cb9112345678\r
+    mov.b @(0x12345678:32,er3),@er1-          ;0178cba112345678\r
+    mov.b @(0x12345678:32,er3),@(0xffff9abc:16,er1)   ;0178cbc1123456789abc\r
+    mov.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)   ;0178cbc9123456789abcdef0\r
+    mov.b @(0x12345678:32,er3),@(0xffff9abc:16,r1l.b) ;0178cbd1123456789abc\r
+    mov.b @(0x12345678:32,er3),@(0xffff9abc:16,r1.w) ;0178cbe1123456789abc\r
+    mov.b @(0x12345678:32,er3),@(0xffff9abc:16,er1.l) ;0178cbf1123456789abc\r
+    mov.b @(0x12345678:32,er3),@(0x9abcdef0:32,r1l.b) ;0178cbd9123456789abcdef0\r
+    mov.b @(0x12345678:32,er3),@(0x9abcdef0:32,r1.w) ;0178cbe9123456789abcdef0\r
+    mov.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1.l) ;0178cbf9123456789abcdef0\r
+    mov.b @(0x12345678:32,er3),@0xffff9abc:16         ;0178cb40123456789abc\r
+    mov.b @(0x12345678:32,er3),@0x9abcdef0:32         ;0178cb48123456789abcdef0\r
+\r
+    mov.b @(0x1234:16,r3l.b),@er1         ;0178d3011234\r
+    mov.b @(0x1234:16,r3l.b),@(0x1:2,er1)  ;0178d3111234\r
+    mov.b @(0x1234:16,r3l.b),@er1+        ;0178d3811234\r
+    mov.b @(0x1234:16,r3l.b),@-er1        ;0178d3b11234\r
+    mov.b @(0x1234:16,r3l.b),@+er1        ;0178d3911234\r
+    mov.b @(0x1234:16,r3l.b),@er1-        ;0178d3a11234\r
+    mov.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r1l.b)    ;0178d3d112349abc\r
+    mov.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r1.w)    ;0178d3e112349abc\r
+    mov.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er1.l)    ;0178d3f112349abc\r
+    mov.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r1l.b)    ;0178d3d912349abcdef0\r
+    mov.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r1.w)    ;0178d3e912349abcdef0\r
+    mov.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1.l)    ;0178d3f912349abcdef0\r
+    mov.b @(0x1234:16,r3l.b),@0xffff9abc:16            ;0178d34012349abc\r
+    mov.b @(0x1234:16,r3l.b),@0x9abcdef0:32            ;0178d34812349abcdef0\r
+\r
+    mov.b @(0x1234:16,r3.w),@er1              ;0178e3011234\r
+    mov.b @(0x1234:16,r3.w),@(0x1:2,er1)       ;0178e3111234\r
+    mov.b @(0x1234:16,r3.w),@er1+             ;0178e3811234\r
+    mov.b @(0x1234:16,r3.w),@-er1             ;0178e3b11234\r
+    mov.b @(0x1234:16,r3.w),@+er1             ;0178e3911234\r
+    mov.b @(0x1234:16,r3.w),@er1-             ;0178e3a11234\r
+    mov.b @(0x1234:16,r3.w),@(0xffff9abc:16,er1)      ;0178e3c112349abc\r
+    mov.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)      ;0178e3c912349abcdef0\r
+    mov.b @(0x1234:16,r3.w),@(0xffff9abc:16,r3l.b)    ;0178e3d312349abc\r
+    mov.b @(0x1234:16,r3.w),@(0xffff9abc:16,r3.w)    ;0178e3e312349abc\r
+    mov.b @(0x1234:16,r3.w),@(0xffff9abc:16,er3.l)    ;0178e3f312349abc\r
+    mov.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r3l.b)    ;0178e3db12349abcdef0\r
+    mov.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r3.w)    ;0178e3eb12349abcdef0\r
+    mov.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er3.l)    ;0178e3fb12349abcdef0\r
+    mov.b @(0x1234:16,r3.w),@0xffff9abc:16            ;0178e34012349abc\r
+    mov.b @(0x1234:16,r3.w),@0x9abcdef0:32            ;0178e34812349abcdef0\r
+\r
+    mov.b @(0x1234:16,er3.l),@er1              ;0178f3011234\r
+    mov.b @(0x1234:16,er3.l),@(0x1:2,er1)       ;0178f3111234\r
+    mov.b @(0x1234:16,er3.l),@er1+             ;0178f3811234\r
+    mov.b @(0x1234:16,er3.l),@-er1             ;0178f3b11234\r
+    mov.b @(0x1234:16,er3.l),@+er1             ;0178f3911234\r
+    mov.b @(0x1234:16,er3.l),@er1-             ;0178f3a11234\r
+    mov.b @(0x1234:16,er3.l),@(0xffff9abc:16,er1)      ;0178f3c112349abc\r
+    mov.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)      ;0178f3c912349abcdef0\r
+    mov.b @(0x1234:16,er3.l),@(0xffff9abc:16,r3l.b)    ;0178f3d312349abc\r
+    mov.b @(0x1234:16,er3.l),@(0xffff9abc:16,r3.w)    ;0178f3e312349abc\r
+    mov.b @(0x1234:16,er3.l),@(0xffff9abc:16,er3.l)    ;0178f3f312349abc\r
+    mov.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r3l.b)    ;0178f3db12349abcdef0\r
+    mov.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r3.w)    ;0178f3eb12349abcdef0\r
+    mov.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er3.l)    ;0178f3fb12349abcdef0\r
+    mov.b @(0x1234:16,er3.l),@0xffff9abc:16            ;0178f34012349abc\r
+    mov.b @(0x1234:16,er3.l),@0x9abcdef0:32            ;0178f34812349abcdef0\r
+\r
+    mov.b @(0x12345678:32,r3l.b),@er1              ;0178db0112345678\r
+    mov.b @(0x12345678:32,r3l.b),@(0x1:2,er1)       ;0178db1112345678\r
+    mov.b @(0x12345678:32,r3l.b),@er1+             ;0178db8112345678\r
+    mov.b @(0x12345678:32,r3l.b),@-er1             ;0178dbb112345678\r
+    mov.b @(0x12345678:32,r3l.b),@+er1             ;0178db9112345678\r
+    mov.b @(0x12345678:32,r3l.b),@er1-             ;0178dba112345678\r
+    mov.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)      ;0178dbc1123456789abc\r
+    mov.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)      ;0178dbc9123456789abcdef0\r
+    mov.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r3l.b)    ;0178dbd3123456789abc\r
+    mov.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r3.w)    ;0178dbe3123456789abc\r
+    mov.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er3.l)    ;0178dbf3123456789abc\r
+    mov.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3l.b)    ;0178dbdb123456789abcdef0\r
+    mov.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3.w)    ;0178dbeb123456789abcdef0\r
+    mov.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er3.l)    ;0178dbfb123456789abcdef0\r
+    mov.b @(0x12345678:32,r3l.b),@0xffff9abc:16            ;0178db40123456789abc\r
+    mov.b @(0x12345678:32,r3l.b),@0x9abcdef0:32            ;0178db48123456789abcdef0\r
+\r
+    mov.b @(0x12345678:32,r3.w),@er1              ;0178eb0112345678\r
+    mov.b @(0x12345678:32,r3.w),@(0x1:2,er1)       ;0178eb1112345678\r
+    mov.b @(0x12345678:32,r3.w),@er1+             ;0178eb8112345678\r
+    mov.b @(0x12345678:32,r3.w),@-er1             ;0178ebb112345678\r
+    mov.b @(0x12345678:32,r3.w),@+er1             ;0178eb9112345678\r
+    mov.b @(0x12345678:32,r3.w),@er1-             ;0178eba112345678\r
+    mov.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)      ;0178ebc1123456789abc\r
+    mov.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)      ;0178ebc9123456789abcdef0\r
+    mov.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r3l.b)    ;0178ebd3123456789abc\r
+    mov.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r3.w)    ;0178ebe3123456789abc\r
+    mov.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er3.l)    ;0178ebf3123456789abc\r
+    mov.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3l.b)    ;0178ebdb123456789abcdef0\r
+    mov.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3.w)    ;0178ebeb123456789abcdef0\r
+    mov.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er3.l)    ;0178ebfb123456789abcdef0\r
+    mov.b @(0x12345678:32,r3.w),@0xffff9abc:16            ;0178eb40123456789abc\r
+    mov.b @(0x12345678:32,r3.w),@0x9abcdef0:32            ;0178eb48123456789abcdef0\r
+\r
+    mov.b @(0x12345678:32,er3.l),@er1              ;0178fb0112345678\r
+    mov.b @(0x12345678:32,er3.l),@(0x1:2,er1)       ;0178fb1112345678\r
+    mov.b @(0x12345678:32,er3.l),@er1+             ;0178fb8112345678\r
+    mov.b @(0x12345678:32,er3.l),@-er1             ;0178fbb112345678\r
+    mov.b @(0x12345678:32,er3.l),@+er1             ;0178fb9112345678\r
+    mov.b @(0x12345678:32,er3.l),@er1-             ;0178fba112345678\r
+    mov.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)      ;0178fbc1123456789abc\r
+    mov.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)      ;0178fbc9123456789abcdef0\r
+    mov.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r3l.b)    ;0178fbd3123456789abc\r
+    mov.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r3.w)    ;0178fbe3123456789abc\r
+    mov.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er3.l)    ;0178fbf3123456789abc\r
+    mov.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3l.b)    ;0178fbdb123456789abcdef0\r
+    mov.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3.w)    ;0178fbeb123456789abcdef0\r
+    mov.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er3.l)    ;0178fbfb123456789abcdef0\r
+    mov.b @(0x12345678:32,er3.l),@0xffff9abc:16            ;0178fb40123456789abc\r
+    mov.b @(0x12345678:32,er3.l),@0x9abcdef0:32            ;0178fb48123456789abcdef0\r
+\r
+    mov.b @0x1234:16,@er1                      ;017840011234\r
+    mov.b @0x1234:16,@(0x1:2,er1)               ;017840111234\r
+    mov.b @0x1234:16,@er1+                     ;017840811234\r
+    mov.b @0x1234:16,@-er1                     ;017840b11234\r
+    mov.b @0x1234:16,@+er1                     ;017840911234\r
+    mov.b @0x1234:16,@er1-                     ;017840a11234\r
+    mov.b @0x1234:16,@(0xffff9abc:16,er1)              ;017840c112349abc\r
+    mov.b @0x1234:16,@(0x9abcdef0:32,er1)              ;017840c912349abcdef0\r
+    mov.b @0x1234:16,@(0xffff9abc:16,r3l.b)            ;017840d312349abc\r
+    mov.b @0x1234:16,@(0xffff9abc:16,r3.w)            ;017840e312349abc\r
+    mov.b @0x1234:16,@(0xffff9abc:16,er3.l)            ;017840f312349abc\r
+    mov.b @0x1234:16,@(0x9abcdef0:32,r3l.b)            ;017840db12349abcdef0\r
+    mov.b @0x1234:16,@(0x9abcdef0:32,r3.w)            ;017840eb12349abcdef0\r
+    mov.b @0x1234:16,@(0x9abcdef0:32,er3.l)            ;017840fb12349abcdef0\r
+    mov.b @0x1234:16,@0xffff9abc:16                    ;0178404012349abc\r
+    mov.b @0x1234:16,@0x9abcdef0:32                    ;0178404812349abcdef0\r
+\r
+    mov.b @0x12345678:32,@er1                      ;0178480112345678\r
+    mov.b @0x12345678:32,@(0x1:2,er1)               ;0178481112345678\r
+    mov.b @0x12345678:32,@er1+                     ;0178488112345678\r
+    mov.b @0x12345678:32,@-er1                     ;017848b112345678\r
+    mov.b @0x12345678:32,@+er1                     ;0178489112345678\r
+    mov.b @0x12345678:32,@er1-                     ;017848a112345678\r
+    mov.b @0x12345678:32,@(0xffff9abc:16,er1)              ;017848c1123456789abc\r
+    mov.b @0x12345678:32,@(0x9abcdef0:32,er1)              ;017848c9123456789abcdef0\r
+    mov.b @0x12345678:32,@(0xffff9abc:16,r3l.b)            ;017848d3123456789abc\r
+    mov.b @0x12345678:32,@(0xffff9abc:16,r3.w)            ;017848e3123456789abc\r
+    mov.b @0x12345678:32,@(0xffff9abc:16,er3.l)            ;017848f3123456789abc\r
+    mov.b @0x12345678:32,@(0x9abcdef0:32,r3l.b)            ;017848db123456789abcdef0\r
+    mov.b @0x12345678:32,@(0x9abcdef0:32,r3.w)            ;017848eb123456789abcdef0\r
+    mov.b @0x12345678:32,@(0x9abcdef0:32,er3.l)            ;017848fb123456789abcdef0\r
+    mov.b @0x12345678:32,@0xffff9abc:16                    ;01784840123456789abc\r
+    mov.b @0x12345678:32,@0x9abcdef0:32                    ;01784848123456789abcdef0\r
+\r
+    mov.w #0x1234:16,r1                        ;79011234\r
+    mov.w #0x1:3,r3                         ;0f13\r
+    mov.w #0x1234:16,@er1                      ;797412340100\r
+    mov.w #0x1234:16,@(0x2:2,er1)            ;797412341100\r
+    mov.w #0x1234:16,@er1+                     ;797412348100\r
+    mov.w #0x1234:16,@-er1                     ;79741234b100\r
+    mov.w #0x1234:16,@+er1                     ;797412349100\r
+    mov.w #0x1234:16,@er1-                     ;79741234a100\r
+    mov.w #0x1234:16,@(0x1234:16,er1)              ;79741234c1001234\r
+    mov.w #0x1234:16,@(0x12345678:32,er1)              ;79741234c90012345678\r
+    mov.w #0x1234:16,@(0x1234:16,r3l.b)            ;79741234d3001234\r
+    mov.w #0x1234:16,@(0x1234:16,r3.w)            ;79741234e3001234\r
+    mov.w #0x1234:16,@(0x1234:16,er3.l)            ;79741234f3001234\r
+    mov.w #0x1234:16,@(0x12345678:32,r3l.b)            ;79741234db0012345678\r
+    mov.w #0x1234:16,@(0x12345678:32,r3.w)            ;79741234eb0012345678\r
+    mov.w #0x1234:16,@(0x12345678:32,er3.l)            ;79741234fb0012345678\r
+    mov.w #0x1234:16,@0x1234:16                    ;7974123440001234\r
+    mov.w #0x1234:16,@0x12345678:32                    ;79741234480012345678\r
+\r
+    mov.w #0x12:8,@er1                       ;015d0112\r
+    mov.w #0x12:8,@(0x2:2,er1)             ;015d1112\r
+    mov.w #0x12:8,@er1+                      ;015d8112\r
+    mov.w #0x12:8,@-er1                      ;015db112\r
+    mov.w #0x12:8,@+er1                      ;015d9112\r
+    mov.w #0x12:8,@er1-                      ;015da112\r
+    mov.w #0x12:8,@(0x1234:16,er1)               ;015dc1121234\r
+    mov.w #0x12:8,@(0x12345678:32,er1)               ;015dc91212345678\r
+    mov.w #0x12:8,@(0x1234:16,r3l.b)             ;015dd3121234\r
+    mov.w #0x12:8,@(0x1234:16,r3.w)             ;015de3121234\r
+    mov.w #0x12:8,@(0x1234:16,er3.l)             ;015df3121234\r
+    mov.w #0x12:8,@(0x12345678:32,r3l.b)             ;015ddb1212345678\r
+    mov.w #0x12:8,@(0x12345678:32,r3.w)             ;015deb1212345678\r
+    mov.w #0x12:8,@(0x12345678:32,er3.l)             ;015dfb1212345678\r
+    mov.w #0x12:8,@0x1234:16                     ;015d40121234\r
+    mov.w #0x12:8,@0x12345678:32                     ;015d481212345678\r
+\r
+    mov.w #0x1:4,@0x1234:16                     ;6bd11234\r
+    mov.w #0x1:4,@0x12345678:32                     ;6bf112345678\r
+\r
+    mov.w r2,r1                            ;0d21\r
+\r
+    mov.w r2,@er1                          ;6992\r
+    mov.w r2,@(0x2:2,er1)                ;01516992\r
+    mov.w r2,@er1+                         ;01536d92\r
+    mov.w r2,@-er1                         ;6d92\r
+    mov.w r2,@+er1                         ;01526d92\r
+    mov.w r2,@er1-                         ;01516d92\r
+    mov.w r2,@(0x1234:16,er1)                  ;6f921234\r
+    mov.w r2,@(0x12345678:32,er1)                  ;78106ba212345678\r
+    mov.w r2,@(0x1234:16,r3l.b)                ;01516fb21234\r
+    mov.w r2,@(0x1234:16,r3.w)                ;01526fb21234\r
+    mov.w r2,@(0x1234:16,er3.l)                ;01536fb21234\r
+    mov.w r2,@(0x12345678:32,r3l.b)                ;78316ba212345678\r
+    mov.w r2,@(0x12345678:32,r3.w)                ;78326ba212345678\r
+    mov.w r2,@(0x12345678:32,er3.l)                ;78336ba212345678\r
+    mov.w r2,@0x1234:16                        ;6b821234\r
+    mov.w r2,@0x12345678:32                        ;6ba212345678\r
+\r
+    mov.w @er2,r1                         ;6921\r
+    mov.w @(0x2:2,er2),r1              ;01516921\r
+    mov.w @er2+,r1                       ;6d21\r
+    mov.w @-er2,r1                       ;01536d21\r
+    mov.w @+er2,r1                       ;01516d21\r
+    mov.w @er2-,r1                       ;01526d21\r
+    mov.w @(0x1234:16,er1),r1                 ;6f111234\r
+    mov.w @(0x12345678:32,er1),r1                 ;78106b2112345678\r
+    mov.w @(0x1234:16,r3l.b),r1               ;01516f311234\r
+    mov.w @(0x1234:16,r3.w),r1               ;01526f311234\r
+    mov.w @(0x1234:16,er3.l),r1               ;01536f311234\r
+    mov.w @(0x12345678:32,r3l.b),r1               ;78316b2112345678\r
+    mov.w @(0x12345678:32,r3.w),r1               ;78326b2112345678\r
+    mov.w @(0x12345678:32,er3.l),r1               ;78336b2112345678\r
+    mov.w @0x1234:16,r1                       ;6b011234\r
+    mov.w @0x12345678:32,r1                       ;6b2112345678\r
+\r
+    mov.w @er2,@er1                       ;01580201 \r
+    mov.w @er2,@(0x2:2,er1)             ;01580211\r
+    mov.w @er2,@er1+                      ;01580281\r
+    mov.w @er2,@-er1                      ;015802b1\r
+    mov.w @er2,@+er1                      ;01580291\r
+    mov.w @er2,@er1-                      ;015802a1\r
+    mov.w @er2,@(0x1234:16,er1)               ;015802c11234\r
+    mov.w @er2,@(0x12345678:32,er1)               ;015802c912345678\r
+    mov.w @er2,@(0x1234:16,r3l.b)             ;015802d31234\r
+    mov.w @er2,@(0x1234:16,r3.w)             ;015802e31234\r
+    mov.w @er2,@(0x1234:16,er3.l)             ;015802f31234\r
+    mov.w @er2,@(0x12345678:32,r3l.b)             ;015802db12345678\r
+    mov.w @er2,@(0x12345678:32,r3.w)             ;015802eb12345678\r
+    mov.w @er2,@(0x12345678:32,er3.l)             ;015802fb12345678\r
+    mov.w @er2,@0x1234:16                     ;015802401234\r
+    mov.w @er2,@0x12345678:32                     ;0158024812345678\r
+\r
+    mov.w @(0x2:2,er2),@er1             ;01581201\r
+    mov.w @(0x2:2,er2),@(0x2:2,er1)   ;01581211\r
+    mov.w @(0x2:2,er2),@er1+            ;01581281\r
+    mov.w @(0x2:2,er2),@-er1            ;015812b1\r
+    mov.w @(0x2:2,er2),@+er1            ;01581291\r
+    mov.w @(0x2:2,er2),@er1-            ;015812a1\r
+    mov.w @(0x2:2,er2),@(0x1234:16,er1)     ;015812c11234\r
+    mov.w @(0x2:2,er2),@(0x12345678:32,er1)     ;015812c912345678\r
+    mov.w @(0x2:2,er2),@(0x1234:16,r3l.b)   ;015812d31234\r
+    mov.w @(0x2:2,er2),@(0x1234:16,r3.w)   ;015812e31234\r
+    mov.w @(0x2:2,er2),@(0x1234:16,er3.l)   ;015812f31234\r
+    mov.w @(0x2:2,er2),@(0x12345678:32,r3l.b)   ;015812db12345678\r
+    mov.w @(0x2:2,er2),@(0x12345678:32,r3.w)   ;015812eb12345678\r
+    mov.w @(0x2:2,er2),@(0x12345678:32,er3.l)   ;015812fb12345678\r
+    mov.w @(0x2:2,er2),@0x1234:16           ;015812401234\r
+    mov.w @(0x2:2,er2),@0x12345678:32           ;0158124812345678\r
+\r
+    mov.w @-er2,@er1                      ;0158b201 \r
+    mov.w @-er2,@(0x2:2,er1)            ;0158b211\r
+    mov.w @-er2,@er1+                     ;0158b281\r
+    mov.w @-er2,@-er1                     ;0158b2b1\r
+    mov.w @-er2,@+er1                     ;0158b291\r
+    mov.w @-er2,@er1-                     ;0158b2a1\r
+    mov.w @-er2,@(0x1234:16,er1)              ;0158b2c11234\r
+    mov.w @-er2,@(0x12345678:32,er1)              ;0158b2c912345678\r
+    mov.w @-er2,@(0x1234:16,r3l.b)            ;0158b2d31234\r
+    mov.w @-er2,@(0x1234:16,r3.w)            ;0158b2e31234\r
+    mov.w @-er2,@(0x1234:16,er3.l)            ;0158b2f31234\r
+    mov.w @-er2,@(0x12345678:32,r3l.b)            ;0158b2db12345678\r
+    mov.w @-er2,@(0x12345678:32,r3.w)            ;0158b2eb12345678\r
+    mov.w @-er2,@(0x12345678:32,er3.l)            ;0158b2fb12345678\r
+    mov.w @-er2,@0x1234:16                    ;0158b2401234\r
+    mov.w @-er2,@0x12345678:32                    ;0158b24812345678\r
+\r
+    mov.w @er2+,@er1                      ;01588201\r
+    mov.w @er2+,@(0x2:2,er1)            ;01588211\r
+    mov.w @er2+,@er1+                     ;01588281\r
+    mov.w @er2+,@-er1                     ;015882b1\r
+    mov.w @er2+,@+er1                     ;01588291\r
+    mov.w @er2+,@er1-                     ;015882a1\r
+    mov.w @er2+,@(0x1234:16,er1)              ;015882c11234\r
+    mov.w @er2+,@(0x12345678:32,er1)              ;015882c912345678\r
+    mov.w @er2+,@(0x1234:16,r3l.b)            ;015882d31234\r
+    mov.w @er2+,@(0x1234:16,r3.w)            ;015882e31234\r
+    mov.w @er2+,@(0x1234:16,er3.l)            ;015882f31234\r
+    mov.w @er2+,@(0x12345678:32,r3l.b)            ;015882db12345678\r
+    mov.w @er2+,@(0x12345678:32,r3.w)            ;015882eb12345678\r
+    mov.w @er2+,@(0x12345678:32,er3.l)            ;015882fb12345678\r
+    mov.w @er2+,@0x1234:16                    ;015882401234\r
+    mov.w @er2+,@0x12345678:32                    ;0158824812345678\r
+\r
+    mov.w @er2-,@er1                      ;0158a201\r
+    mov.w @er2-,@(0x2:2,er1)            ;0158a211\r
+    mov.w @er2-,@er1+                     ;0158a281\r
+    mov.w @er2-,@-er1                     ;0158a2b1\r
+    mov.w @er2-,@+er1                     ;0158a291\r
+    mov.w @er2-,@er1-                     ;0158a2a1\r
+    mov.w @er2-,@(0x1234:16,er1)              ;0158a2c11234\r
+    mov.w @er2-,@(0x12345678:32,er1)              ;0158a2c912345678\r
+    mov.w @er2-,@(0x1234:16,r3l.b)            ;0158a2d31234\r
+    mov.w @er2-,@(0x1234:16,r3.w)            ;0158a2e31234\r
+    mov.w @er2-,@(0x1234:16,er3.l)            ;0158a2f31234\r
+    mov.w @er2-,@(0x12345678:32,r3l.b)            ;0158a2db12345678\r
+    mov.w @er2-,@(0x12345678:32,r3.w)            ;0158a2eb12345678\r
+    mov.w @er2-,@(0x12345678:32,er3.l)            ;0158a2fb12345678\r
+    mov.w @er2-,@0x1234:16                    ;0158a2401234\r
+    mov.w @er2-,@0x12345678:32                    ;0158a24812345678\r
+\r
+    mov.w @+er2,@er1                      ;01589201\r
+    mov.w @+er2,@(0x2:2,er1)            ;01589211\r
+    mov.w @+er2,@er1+                     ;01589281\r
+    mov.w @+er2,@-er1                     ;015892b1\r
+    mov.w @+er2,@+er1                     ;01589291\r
+    mov.w @+er2,@er1-                     ;015892a1\r
+    mov.w @+er2,@(0x1234:16,er1)              ;015892c11234\r
+    mov.w @+er2,@(0x12345678:32,er1)              ;015892c912345678\r
+    mov.w @+er2,@(0x1234:16,r3l.b)            ;015892d31234\r
+    mov.w @+er2,@(0x1234:16,r3.w)            ;015892e31234\r
+    mov.w @+er2,@(0x1234:16,er3.l)            ;015892f31234\r
+    mov.w @+er2,@(0x12345678:32,r3l.b)            ;015892db12345678\r
+    mov.w @+er2,@(0x12345678:32,r3.w)            ;015892eb12345678\r
+    mov.w @+er2,@(0x12345678:32,er3.l)            ;015892fb12345678\r
+    mov.w @+er2,@0x1234:16                    ;015892401234\r
+    mov.w @+er2,@0x12345678:32                    ;0158924812345678\r
+\r
+    mov.w @(0x1234:16,er2),@er1               ;0158c2011234\r
+    mov.w @(0x1234:16,er2),@(0x2:2,er1)     ;0158c2111234\r
+    mov.w @(0x1234:16,er2),@er1+              ;0158c2811234\r
+    mov.w @(0x1234:16,er2),@-er1              ;0158c2b11234\r
+    mov.w @(0x1234:16,er2),@+er1              ;0158c2911234\r
+    mov.w @(0x1234:16,er2),@er1-              ;0158c2a11234\r
+    mov.w @(0x1234:16,er2),@(0xffff9abc:16,er1)       ;0158c2c112349abc\r
+    mov.w @(0x1234:16,er2),@(0x9abcdef0:32,er1)       ;0158c2c912349abcdef0\r
+    mov.w @(0x1234:16,er2),@(0xffff9abc:16,r3l.b)     ;0158c2d312349abc\r
+    mov.w @(0x1234:16,er2),@(0xffff9abc:16,r3.w)     ;0158c2e312349abc\r
+    mov.w @(0x1234:16,er2),@(0xffff9abc:16,er3.l)     ;0158c2f312349abc\r
+    mov.w @(0x1234:16,er2),@(0x9abcdef0:32,r3l.b)     ;0158c2db12349abcdef0\r
+    mov.w @(0x1234:16,er2),@(0x9abcdef0:32,r3.w)     ;0158c2eb12349abcdef0\r
+    mov.w @(0x1234:16,er2),@(0x9abcdef0:32,er3.l)     ;0158c2fb12349abcdef0\r
+    mov.w @(0x1234:16,er2),@0xffff9abc:16             ;0158c24012349abc\r
+    mov.w @(0x1234:16,er2),@0x9abcdef0:32             ;0158c24812349abcdef0\r
+\r
+    mov.w @(0x12345678:32,er2),@er1               ;0158ca0112345678\r
+    mov.w @(0x12345678:32,er2),@(0x2:2,er1)     ;0158ca1112345678\r
+    mov.w @(0x12345678:32,er2),@er1+              ;0158ca8112345678\r
+    mov.w @(0x12345678:32,er2),@-er1              ;0158cab112345678\r
+    mov.w @(0x12345678:32,er2),@+er1              ;0158ca9112345678\r
+    mov.w @(0x12345678:32,er2),@er1-              ;0158caa112345678\r
+    mov.w @(0x12345678:32,er2),@(0xffff9abc:16,er1)       ;0158cac1123456789abc\r
+    mov.w @(0x12345678:32,er2),@(0x9abcdef0:32,er1)       ;0158cac9123456789abcdef0\r
+    mov.w @(0x12345678:32,er2),@(0xffff9abc:16,r3l.b)     ;0158cad3123456789abc\r
+    mov.w @(0x12345678:32,er2),@(0xffff9abc:16,r3.w)     ;0158cae3123456789abc\r
+    mov.w @(0x12345678:32,er2),@(0xffff9abc:16,er3.l)     ;0158caf3123456789abc\r
+    mov.w @(0x12345678:32,er2),@(0x9abcdef0:32,r3l.b)     ;0158cadb123456789abcdef0\r
+    mov.w @(0x12345678:32,er2),@(0x9abcdef0:32,r3.w)     ;0158caeb123456789abcdef0\r
+    mov.w @(0x12345678:32,er2),@(0x9abcdef0:32,er3.l)     ;0158cafb123456789abcdef0\r
+    mov.w @(0x12345678:32,er2),@0xffff9abc:16             ;0158ca40123456789abc\r
+    mov.w @(0x12345678:32,er2),@0x9abcdef0:32             ;0158ca48123456789abcdef0\r
+\r
+    mov.w @(0x1234:16,r3l.b),@er1             ;0158d3011234\r
+    mov.w @(0x1234:16,r3l.b),@(0x2:2,er1)   ;0158d3111234\r
+    mov.w @(0x1234:16,r3l.b),@er1+            ;0158d3811234\r
+    mov.w @(0x1234:16,r3l.b),@-er1            ;0158d3b11234\r
+    mov.w @(0x1234:16,r3l.b),@+er1            ;0158d3911234\r
+    mov.w @(0x1234:16,r3l.b),@er1-            ;0158d3a11234\r
+    mov.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)     ;0158d3c112349abc\r
+    mov.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)     ;0158d3c912349abcdef0\r
+    mov.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r3l.b)   ;0158d3d312349abc\r
+    mov.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r3.w)   ;0158d3e312349abc\r
+    mov.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er3.l)   ;0158d3f312349abc\r
+    mov.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3l.b)   ;0158d3db12349abcdef0\r
+    mov.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3.w)   ;0158d3eb12349abcdef0\r
+    mov.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er3.l)   ;0158d3fb12349abcdef0\r
+    mov.w @(0x1234:16,r3l.b),@0xffff9abc:16           ;0158d34012349abc\r
+    mov.w @(0x1234:16,r3l.b),@0x9abcdef0:32           ;0158d34812349abcdef0\r
+\r
+    mov.w @(0x1234:16,r3.w),@er1             ;0158e3011234\r
+    mov.w @(0x1234:16,r3.w),@(0x2:2,er1)   ;0158e3111234\r
+    mov.w @(0x1234:16,r3.w),@er1+            ;0158e3811234\r
+    mov.w @(0x1234:16,r3.w),@-er1            ;0158e3b11234\r
+    mov.w @(0x1234:16,r3.w),@+er1            ;0158e3911234\r
+    mov.w @(0x1234:16,r3.w),@er1-            ;0158e3a11234\r
+    mov.w @(0x1234:16,r3.w),@(0xffff9abc:16,er1)     ;0158e3c112349abc\r
+    mov.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)     ;0158e3c912349abcdef0\r
+    mov.w @(0x1234:16,r3.w),@(0xffff9abc:16,r3l.b)   ;0158e3d312349abc\r
+    mov.w @(0x1234:16,r3.w),@(0xffff9abc:16,r3.w)   ;0158e3e312349abc\r
+    mov.w @(0x1234:16,r3.w),@(0xffff9abc:16,er3.l)   ;0158e3f312349abc\r
+    mov.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r3l.b)   ;0158e3db12349abcdef0\r
+    mov.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r3.w)   ;0158e3eb12349abcdef0\r
+    mov.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er3.l)   ;0158e3fb12349abcdef0\r
+    mov.w @(0x1234:16,r3.w),@0xffff9abc:16           ;0158e34012349abc\r
+    mov.w @(0x1234:16,r3.w),@0x9abcdef0:32           ;0158e34812349abcdef0\r
+\r
+    mov.w @(0x1234:16,er3.l),@er1             ;0158f3011234\r
+    mov.w @(0x1234:16,er3.l),@(0x2:2,er1)   ;0158f3111234\r
+    mov.w @(0x1234:16,er3.l),@er1+            ;0158f3811234\r
+    mov.w @(0x1234:16,er3.l),@-er1            ;0158f3b11234\r
+    mov.w @(0x1234:16,er3.l),@+er1            ;0158f3911234\r
+    mov.w @(0x1234:16,er3.l),@er1-            ;0158f3a11234\r
+    mov.w @(0x1234:16,er3.l),@(0xffff9abc:16,er1)     ;0158f3c112349abc\r
+    mov.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)     ;0158f3c912349abcdef0\r
+    mov.w @(0x1234:16,er3.l),@(0xffff9abc:16,r3l.b)   ;0158f3d312349abc\r
+    mov.w @(0x1234:16,er3.l),@(0xffff9abc:16,r3.w)   ;0158f3e312349abc\r
+    mov.w @(0x1234:16,er3.l),@(0xffff9abc:16,er3.l)   ;0158f3f312349abc\r
+    mov.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r3l.b)   ;0158f3db12349abcdef0\r
+    mov.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r3.w)   ;0158f3eb12349abcdef0\r
+    mov.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er3.l)   ;0158f3fb12349abcdef0\r
+    mov.w @(0x1234:16,er3.l),@0xffff9abc:16           ;0158f34012349abc\r
+    mov.w @(0x1234:16,er3.l),@0x9abcdef0:32           ;0158f34812349abcdef0\r
+\r
+    mov.w @(0x12345678:32,r3l.b),@er1             ;0158db0112345678\r
+    mov.w @(0x12345678:32,r3l.b),@(0x2:2,er1)   ;0158db1112345678\r
+    mov.w @(0x12345678:32,r3l.b),@er1+            ;0158db8112345678\r
+    mov.w @(0x12345678:32,r3l.b),@-er1            ;0158dbb112345678\r
+    mov.w @(0x12345678:32,r3l.b),@+er1            ;0158db9112345678\r
+    mov.w @(0x12345678:32,r3l.b),@er1-            ;0158dba112345678\r
+    mov.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)     ;0158dbc1123456789abc\r
+    mov.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)     ;0158dbc9123456789abcdef0\r
+    mov.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r3l.b)   ;0158dbd3123456789abc\r
+    mov.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r3.w)   ;0158dbe3123456789abc\r
+    mov.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er3.l)   ;0158dbf3123456789abc\r
+    mov.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3l.b)   ;0158dbdb123456789abcdef0\r
+    mov.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3.w)   ;0158dbeb123456789abcdef0\r
+    mov.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er3.l)   ;0158dbfb123456789abcdef0\r
+    mov.w @(0x12345678:32,r3l.b),@0xffff9abc:16           ;0158db40123456789abc\r
+    mov.w @(0x12345678:32,r3l.b),@0x9abcdef0:32           ;0158db48123456789abcdef0\r
+\r
+    mov.w @(0x12345678:32,r3.w),@er1             ;0158eb0112345678\r
+    mov.w @(0x12345678:32,r3.w),@(0x2:2,er1)   ;0158eb1112345678\r
+    mov.w @(0x12345678:32,r3.w),@er1+            ;0158eb8112345678\r
+    mov.w @(0x12345678:32,r3.w),@-er1            ;0158ebb112345678\r
+    mov.w @(0x12345678:32,r3.w),@+er1            ;0158eb9112345678\r
+    mov.w @(0x12345678:32,r3.w),@er1-            ;0158eba112345678\r
+    mov.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)     ;0158ebc1123456789abc\r
+    mov.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)     ;0158ebc9123456789abcdef0\r
+    mov.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r3l.b)   ;0158ebd3123456789abc\r
+    mov.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r3.w)   ;0158ebe3123456789abc\r
+    mov.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er3.l)   ;0158ebf3123456789abc\r
+    mov.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3l.b)   ;0158ebdb123456789abcdef0\r
+    mov.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3.w)   ;0158ebeb123456789abcdef0\r
+    mov.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er3.l)   ;0158ebfb123456789abcdef0\r
+    mov.w @(0x12345678:32,r3.w),@0xffff9abc:16           ;0158eb40123456789abc\r
+    mov.w @(0x12345678:32,r3.w),@0x9abcdef0:32           ;0158eb48123456789abcdef0\r
+\r
+    mov.w @(0x12345678:32,er3.l),@er1             ;0158fb0112345678\r
+    mov.w @(0x12345678:32,er3.l),@(0x2:2,er1)   ;0158fb1112345678\r
+    mov.w @(0x12345678:32,er3.l),@er1+            ;0158fb8112345678\r
+    mov.w @(0x12345678:32,er3.l),@-er1            ;0158fbb112345678\r
+    mov.w @(0x12345678:32,er3.l),@+er1            ;0158fb9112345678\r
+    mov.w @(0x12345678:32,er3.l),@er1-            ;0158fba112345678\r
+    mov.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)     ;0158fbc1123456789abc\r
+    mov.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)     ;0158fbc9123456789abcdef0\r
+    mov.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r3l.b)   ;0158fbd3123456789abc\r
+    mov.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r3.w)   ;0158fbe3123456789abc\r
+    mov.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er3.l)   ;0158fbf3123456789abc\r
+    mov.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3l.b)   ;0158fbdb123456789abcdef0\r
+    mov.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3.w)   ;0158fbeb123456789abcdef0\r
+    mov.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er3.l)   ;0158fbfb123456789abcdef0\r
+    mov.w @(0x12345678:32,er3.l),@0xffff9abc:16           ;0158fb40123456789abc\r
+    mov.w @(0x12345678:32,er3.l),@0x9abcdef0:32           ;0158fb48123456789abcdef0\r
+\r
+    mov.w @0x1234:16,@er1                     ;015840011234\r
+    mov.w @0x1234:16,@(0x2:2,er1)           ;015840111234\r
+    mov.w @0x1234:16,@er1+                    ;015840811234\r
+    mov.w @0x1234:16,@-er1                    ;015840b11234\r
+    mov.w @0x1234:16,@+er1                    ;015840911234\r
+    mov.w @0x1234:16,@er1-                    ;015840a11234\r
+    mov.w @0x1234:16,@(0xffff9abc:16,er1)             ;015840c112349abc\r
+    mov.w @0x1234:16,@(0x9abcdef0:32,er1)             ;015840c912349abcdef0\r
+    mov.w @0x1234:16,@(0xffff9abc:16,r3l.b)           ;015840d312349abc\r
+    mov.w @0x1234:16,@(0xffff9abc:16,r3.w)           ;015840e312349abc\r
+    mov.w @0x1234:16,@(0xffff9abc:16,er3.l)           ;015840f312349abc\r
+    mov.w @0x1234:16,@(0x9abcdef0:32,r3l.b)           ;015840db12349abcdef0\r
+    mov.w @0x1234:16,@(0x9abcdef0:32,r3.w)           ;015840eb12349abcdef0\r
+    mov.w @0x1234:16,@(0x9abcdef0:32,er3.l)           ;015840fb12349abcdef0\r
+    mov.w @0x1234:16,@0xffff9abc:16                   ;0158404012349abc\r
+    mov.w @0x1234:16,@0x9abcdef0:32                   ;0158404812349abcdef0\r
+\r
+    mov.w @0x12345678:32,@er1                     ;0158480112345678\r
+    mov.w @0x12345678:32,@(0x2:2,er1)           ;0158481112345678\r
+    mov.w @0x12345678:32,@er1+                    ;0158488112345678\r
+    mov.w @0x12345678:32,@-er1                    ;015848b112345678\r
+    mov.w @0x12345678:32,@+er1                    ;0158489112345678\r
+    mov.w @0x12345678:32,@er1-                    ;015848a112345678\r
+    mov.w @0x12345678:32,@(0xffff9abc:16,er1)             ;015848c1123456789abc\r
+    mov.w @0x12345678:32,@(0x9abcdef0:32,er1)             ;015848c9123456789abcdef0\r
+    mov.w @0x12345678:32,@(0xffff9abc:16,r3l.b)           ;015848d3123456789abc\r
+    mov.w @0x12345678:32,@(0xffff9abc:16,r3.w)           ;015848e3123456789abc\r
+    mov.w @0x12345678:32,@(0xffff9abc:16,er3.l)           ;015848f3123456789abc\r
+    mov.w @0x12345678:32,@(0x9abcdef0:32,r3l.b)           ;015848db123456789abcdef0\r
+    mov.w @0x12345678:32,@(0x9abcdef0:32,r3.w)           ;015848eb123456789abcdef0\r
+    mov.w @0x12345678:32,@(0x9abcdef0:32,er3.l)           ;015848fb123456789abcdef0\r
+    mov.w @0x12345678:32,@0xffff9abc:16                   ;01584840123456789abc\r
+    mov.w @0x12345678:32,@0x9abcdef0:32                   ;01584848123456789abcdef0\r
+\r
+    mov.l #0x12345678:32,er1                      ;7a0112345678\r
+\r
+    mov.l #0x1234:16,er1                      ;7a091234\r
+\r
+    mov.l #0x1:3,er3                       ;0f9b\r
+\r
+    mov.l #0x12345678:32,@er1                     ;7a74123456780100 \r
+    mov.l #0x12345678:32,@(0x4:2,er1)             ;7a74123456781100\r
+    mov.l #0x12345678:32,@-er1                    ;7a7412345678b100 \r
+    mov.l #0x12345678:32,@er1+                    ;7a74123456788100 \r
+    mov.l #0x12345678:32,@er1-                    ;7a7412345678a100 \r
+    mov.l #0x12345678:32,@+er1                    ;7a74123456789100 \r
+    mov.l #0x12345678:32,@(0x1234:16,er1)             ;7a7412345678c1001234\r
+    mov.l #0x12345678:32,@(0x12345678:32,er1)             ;7a7412345678c90012345678\r
+    mov.l #0x12345678:32,@(0x1234:16,r3l.b)           ;7a7412345678d3001234\r
+    mov.l #0x12345678:32,@(0x1234:16,r3.w)           ;7a7412345678e3001234\r
+    mov.l #0x12345678:32,@(0x1234:16,er3.l)           ;7a7412345678f3001234\r
+    mov.l #0x12345678:32,@(0x12345678:32,r3l.b)           ;7a7412345678db0012345678\r
+    mov.l #0x12345678:32,@(0x12345678:32,r3.w)           ;7a7412345678eb0012345678\r
+    mov.l #0x12345678:32,@(0x12345678:32,er3.l)           ;7a7412345678fb0012345678\r
+    mov.l #0x12345678:32,@0x1234:16                   ;7a741234567840001234\r
+    mov.l #0x12345678:32,@0x12345678:32                   ;7a7412345678480012345678\r
+\r
+    mov.l #0x1234:16,@er1                     ;7a7c12340100  \r
+    mov.l #0x1234:16,@(0x4:2,er1)           ;7a7c12341100\r
+    mov.l #0x1234:16,@-er1                    ;7a7c1234b100  \r
+    mov.l #0x1234:16,@er1+                    ;7a7c12348100  \r
+    mov.l #0x1234:16,@er1-                    ;7a7c1234a100  \r
+    mov.l #0x1234:16,@+er1                    ;7a7c12349100  \r
+    mov.l #0x1234:16,@(0x1234:16,er1)             ;7a7c1234c1001234\r
+    mov.l #0x1234:16,@(0x12345678:32,er1)             ;7a7c1234c90012345678\r
+    mov.l #0x1234:16,@(0x1234:16,r3l.b)           ;7a7c1234d3001234\r
+    mov.l #0x1234:16,@(0x1234:16,r3.w)           ;7a7c1234e3001234\r
+    mov.l #0x1234:16,@(0x1234:16,er3.l)           ;7a7c1234f3001234\r
+    mov.l #0x1234:16,@(0x12345678:32,r3l.b)           ;7a7c1234db0012345678\r
+    mov.l #0x1234:16,@(0x12345678:32,r3.w)           ;7a7c1234eb0012345678\r
+    mov.l #0x1234:16,@(0x12345678:32,er3.l)           ;7a7c1234fb0012345678\r
+    mov.l #0x1234:16,@0x1234:16                   ;7a7c123440001234\r
+    mov.l #0x1234:16,@0x12345678:32                   ;7a7c1234480012345678\r
+\r
+    mov.l #0x12:8,@er1                      ;010d0112\r
+    mov.l #0x12:8,@(0x4:2,er1)            ;010d1112\r
+    mov.l #0x12:8,@-er1                     ;010db112\r
+    mov.l #0x12:8,@er1+                     ;010d8112\r
+    mov.l #0x12:8,@er1-                     ;010da112\r
+    mov.l #0x12:8,@+er1                     ;010d9112\r
+    mov.l #0x12:8,@(0x1234:16,er1)              ;010dc1121234\r
+    mov.l #0x12:8,@(0x12345678:32,er1)              ;010dc91212345678\r
+    mov.l #0x12:8,@(0x1234:16,r3l.b)            ;010dd3121234\r
+    mov.l #0x12:8,@(0x1234:16,r3.w)            ;010de3121234\r
+    mov.l #0x12:8,@(0x1234:16,er3.l)            ;010df3121234\r
+    mov.l #0x12:8,@(0x12345678:32,r3l.b)            ;010ddb1212345678\r
+    mov.l #0x12:8,@(0x12345678:32,r3.w)            ;010deb1212345678\r
+    mov.l #0x12:8,@(0x12345678:32,er3.l)            ;010dfb1212345678\r
+    mov.l #0x12:8,@0x1234:16                    ;010d40121234\r
+    mov.l #0x12:8,@0x12345678:32                    ;010d481212345678\r
+\r
+    mov.l er2,er1                         ;0fa1\r
+\r
+    mov.l er2,@er1                         ;01006992\r
+    mov.l er2,@(0x4:2,er1)               ;01016992\r
+    mov.l er2,@-er1                        ;01006d92\r
+    mov.l er2,@er1+                        ;01036d92\r
+    mov.l er2,@er1-                        ;01016d92\r
+    mov.l er2,@+er1                        ;01026d92\r
+    mov.l er2,@(0x1234:16,er1)                 ;01006f921234\r
+    mov.l er2,@(0x12345678:32,er1)                 ;78906ba212345678\r
+    mov.l er2,@(0x1234:16,r3l.b)               ;01016fb21234\r
+    mov.l er2,@(0x1234:16,r3.w)               ;01026fb21234\r
+    mov.l er2,@(0x1234:16,er3.l)               ;01036fb21234\r
+    mov.l er2,@(0x12345678:32,r3l.b)               ;78b16ba212345678\r
+    mov.l er2,@(0x12345678:32,r3.w)               ;78b26ba212345678\r
+    mov.l er2,@(0x12345678:32,er3.l)               ;78b36ba212345678\r
+    mov.l er2,@0x1234:16                       ;01006b821234\r
+    mov.l er2,@0x12345678:32                       ;01006ba212345678\r
+\r
+    mov.l @er2,er1                         ;01006921  \r
+    mov.l @(0x4:2,er2),er1              ;01016921\r
+    mov.l @er2+,er1                       ;01006d21  \r
+    mov.l @-er2,er1                       ;01036d21  \r
+    mov.l @+er2,er1                       ;01016d21  \r
+    mov.l @er2-,er1                       ;01026d21  \r
+    mov.l @(0x1234:16,er1),er1                 ;01006f111234\r
+    mov.l @(0x12345678:32,er1),er1                 ;78906b2112345678\r
+    mov.l @(0x1234:16,r3l.b),er1               ;01016f311234\r
+    mov.l @(0x1234:16,r3.w),er1               ;01026f311234\r
+    mov.l @(0x1234:16,er3.l),er1               ;01036f311234\r
+    mov.l @(0x12345678:32,r3l.b),er1               ;78b16b2112345678\r
+    mov.l @(0x12345678:32,r3.w),er1               ;78b26b2112345678\r
+    mov.l @(0x12345678:32,er3.l),er1               ;78b36b2112345678\r
+    mov.l @0x1234:16,er1                       ;01006b011234\r
+    mov.l @0x12345678:32,er1                       ;01006b2112345678\r
+\r
+    mov.l @er2,@er1                       ;01080201 \r
+    mov.l @er2,@(0x4:2,er1)             ;01080211\r
+    mov.l @er2,@er1+                      ;01080281\r
+    mov.l @er2,@-er1                      ;010802b1\r
+    mov.l @er2,@+er1                      ;01080291\r
+    mov.l @er2,@er1-                      ;010802a1\r
+    mov.l @er2,@(0x1234:16,er1)               ;010802c11234\r
+    mov.l @er2,@(0x12345678:32,er1)               ;010802c912345678\r
+    mov.l @er2,@(0x1234:16,r3l.b)             ;010802d31234\r
+    mov.l @er2,@(0x1234:16,r3.w)             ;010802e31234\r
+    mov.l @er2,@(0x1234:16,er3.l)             ;010802f31234\r
+    mov.l @er2,@(0x12345678:32,r3l.b)             ;010802db12345678\r
+    mov.l @er2,@(0x12345678:32,r3.w)             ;010802eb12345678\r
+    mov.l @er2,@(0x12345678:32,er3.l)             ;010802fb12345678\r
+    mov.l @er2,@0x1234:16                     ;010802401234\r
+    mov.l @er2,@0x12345678:32                     ;0108024812345678\r
+\r
+    mov.l @(0x4:2,er2),@er1             ;01081201\r
+    mov.l @(0x4:2,er2),@(0x4:2,er1)   ;01081211\r
+    mov.l @(0x4:2,er2),@er1+            ;01081281\r
+    mov.l @(0x4:2,er2),@-er1            ;010812b1\r
+    mov.l @(0x4:2,er2),@+er1            ;01081291\r
+    mov.l @(0x4:2,er2),@er1-            ;010812a1\r
+    mov.l @(0x4:2,er2),@(0x1234:16,er1)     ;010812c11234\r
+    mov.l @(0x4:2,er2),@(0x12345678:32,er1)     ;010812c912345678\r
+    mov.l @(0x4:2,er2),@(0x1234:16,r3l.b)   ;010812d31234\r
+    mov.l @(0x4:2,er2),@(0x1234:16,r3.w)   ;010812e31234\r
+    mov.l @(0x4:2,er2),@(0x1234:16,er3.l)   ;010812f31234\r
+    mov.l @(0x4:2,er2),@(0x12345678:32,r3l.b)   ;010812db12345678\r
+    mov.l @(0x4:2,er2),@(0x12345678:32,r3.w)   ;010812eb12345678\r
+    mov.l @(0x4:2,er2),@(0x12345678:32,er3.l)   ;010812fb12345678\r
+    mov.l @(0x4:2,er2),@0x1234:16           ;010812401234\r
+    mov.l @(0x4:2,er2),@0x12345678:32           ;0108124812345678\r
+\r
+    mov.l @-er2,@er1                      ;0108b201\r
+    mov.l @-er2,@(0x4:2,er1)            ;0108b211\r
+    mov.l @-er2,@er1+                     ;0108b281\r
+    mov.l @-er2,@-er1                     ;0108b2b1\r
+    mov.l @-er2,@+er1                     ;0108b291\r
+    mov.l @-er2,@er1-                     ;0108b2a1\r
+    mov.l @-er2,@(0x1234:16,er1)              ;0108b2c11234\r
+    mov.l @-er2,@(0x12345678:32,er1)              ;0108b2c912345678\r
+    mov.l @-er2,@(0x1234:16,r3l.b)            ;0108b2d31234\r
+    mov.l @-er2,@(0x1234:16,r3.w)            ;0108b2e31234\r
+    mov.l @-er2,@(0x1234:16,er3.l)            ;0108b2f31234\r
+    mov.l @-er2,@(0x12345678:32,r3l.b)            ;0108b2db12345678\r
+    mov.l @-er2,@(0x12345678:32,r3.w)            ;0108b2eb12345678\r
+    mov.l @-er2,@(0x12345678:32,er3.l)            ;0108b2fb12345678\r
+    mov.l @-er2,@0x1234:16                    ;0108b2401234\r
+    mov.l @-er2,@0x12345678:32                    ;0108b24812345678\r
+\r
+    mov.l @er2+,@er1                      ;01088201 \r
+    mov.l @er2+,@(0x4:2,er1)            ;01088211\r
+    mov.l @er2+,@er1+                     ;01088281\r
+    mov.l @er2+,@-er1                     ;010882b1\r
+    mov.l @er2+,@+er1                     ;01088291\r
+    mov.l @er2+,@er1-                     ;010882a1\r
+    mov.l @er2+,@(0x1234:16,er1)              ;010882c11234\r
+    mov.l @er2+,@(0x12345678:32,er1)              ;010882c912345678\r
+    mov.l @er2+,@(0x1234:16,r3l.b)            ;010882d31234\r
+    mov.l @er2+,@(0x1234:16,r3.w)            ;010882e31234\r
+    mov.l @er2+,@(0x1234:16,er3.l)            ;010882f31234\r
+    mov.l @er2+,@(0x12345678:32,r3l.b)            ;010882db12345678\r
+    mov.l @er2+,@(0x12345678:32,r3.w)            ;010882eb12345678\r
+    mov.l @er2+,@(0x12345678:32,er3.l)            ;010882fb12345678\r
+    mov.l @er2+,@0x1234:16                    ;010882401234\r
+    mov.l @er2+,@0x12345678:32                    ;0108824812345678\r
+\r
+    mov.l @er2-,@er1                      ;0108a201 \r
+    mov.l @er2-,@(0x4:2,er1)            ;0108a211\r
+    mov.l @er2-,@er1+                     ;0108a281\r
+    mov.l @er2-,@-er1                     ;0108a2b1\r
+    mov.l @er2-,@+er1                     ;0108a291\r
+    mov.l @er2-,@er1-                     ;0108a2a1\r
+    mov.l @er2-,@(0x1234:16,er1)              ;0108a2c11234\r
+    mov.l @er2-,@(0x12345678:32,er1)              ;0108a2c912345678\r
+    mov.l @er2-,@(0x1234:16,r3l.b)            ;0108a2d31234\r
+    mov.l @er2-,@(0x1234:16,r3.w)            ;0108a2e31234\r
+    mov.l @er2-,@(0x1234:16,er3.l)            ;0108a2f31234\r
+    mov.l @er2-,@(0x12345678:32,r3l.b)            ;0108a2db12345678\r
+    mov.l @er2-,@(0x12345678:32,r3.w)            ;0108a2eb12345678\r
+    mov.l @er2-,@(0x12345678:32,er3.l)            ;0108a2fb12345678\r
+    mov.l @er2-,@0x1234:16                    ;0108a2401234\r
+    mov.l @er2-,@0x12345678:32                    ;0108a24812345678\r
+\r
+    mov.l @+er2,@er1                      ;01089201 \r
+    mov.l @+er2,@(0x4:2,er1)            ;01089211\r
+    mov.l @+er2,@er1+                     ;01089281\r
+    mov.l @+er2,@-er1                     ;010892b1\r
+    mov.l @+er2,@+er1                     ;01089291\r
+    mov.l @+er2,@er1-                     ;010892a1\r
+    mov.l @+er2,@(0x1234:16,er1)              ;010892c11234\r
+    mov.l @+er2,@(0x12345678:32,er1)              ;010892c912345678\r
+    mov.l @+er2,@(0x1234:16,r3l.b)            ;010892d31234\r
+    mov.l @+er2,@(0x1234:16,r3.w)            ;010892e31234\r
+    mov.l @+er2,@(0x1234:16,er3.l)            ;010892f31234\r
+    mov.l @+er2,@(0x12345678:32,r3l.b)            ;010892db12345678\r
+    mov.l @+er2,@(0x12345678:32,r3.w)            ;010892eb12345678\r
+    mov.l @+er2,@(0x12345678:32,er3.l)            ;010892fb12345678\r
+    mov.l @+er2,@0x1234:16                    ;010892401234\r
+    mov.l @+er2,@0x12345678:32                    ;0108924812345678\r
+\r
+    mov.l @(0x1234:16,er2),@er1               ;0108c2011234\r
+    mov.l @(0x1234:16,er2),@(0x4:2,er1)     ;0108c2111234\r
+    mov.l @(0x1234:16,er2),@er1+              ;0108c2811234\r
+    mov.l @(0x1234:16,er2),@-er1              ;0108c2b11234\r
+    mov.l @(0x1234:16,er2),@+er1              ;0108c2911234\r
+    mov.l @(0x1234:16,er2),@er1-              ;0108c2a11234\r
+    mov.l @(0x1234:16,er2),@(0xffff9abc:16,er1)       ;0108c2c112349abc\r
+    mov.l @(0x1234:16,er2),@(0x9abcdef0:32,er1)       ;0108c2c912349abcdef0\r
+    mov.l @(0x1234:16,er2),@(0xffff9abc:16,r3l.b)     ;0108c2d312349abc\r
+    mov.l @(0x1234:16,er2),@(0xffff9abc:16,r3.w)     ;0108c2e312349abc\r
+    mov.l @(0x1234:16,er2),@(0xffff9abc:16,er3.l)     ;0108c2f312349abc\r
+    mov.l @(0x1234:16,er2),@(0x9abcdef0:32,r3l.b)     ;0108c2db12349abcdef0\r
+    mov.l @(0x1234:16,er2),@(0x9abcdef0:32,r3.w)     ;0108c2eb12349abcdef0\r
+    mov.l @(0x1234:16,er2),@(0x9abcdef0:32,er3.l)     ;0108c2fb12349abcdef0\r
+    mov.l @(0x1234:16,er2),@0xffff9abc:16             ;0108c24012349abc\r
+    mov.l @(0x1234:16,er2),@0x9abcdef0:32             ;0108c24812349abcdef0\r
+\r
+    mov.l @(0x12345678:32,er2),@er1               ;0108ca0112345678\r
+    mov.l @(0x12345678:32,er2),@(0x4:2,er1)     ;0108ca1112345678\r
+    mov.l @(0x12345678:32,er2),@er1+              ;0108ca8112345678\r
+    mov.l @(0x12345678:32,er2),@-er1              ;0108cab112345678\r
+    mov.l @(0x12345678:32,er2),@+er1              ;0108ca9112345678\r
+    mov.l @(0x12345678:32,er2),@er1-              ;0108caa112345678\r
+    mov.l @(0x12345678:32,er2),@(0xffff9abc:16,er1)       ;0108cac1123456789abc\r
+    mov.l @(0x12345678:32,er2),@(0x9abcdef0:32,er1)       ;0108cac9123456789abcdef0\r
+    mov.l @(0x12345678:32,er2),@(0xffff9abc:16,r3l.b)     ;0108cad3123456789abc\r
+    mov.l @(0x12345678:32,er2),@(0xffff9abc:16,r3.w)     ;0108cae3123456789abc\r
+    mov.l @(0x12345678:32,er2),@(0xffff9abc:16,er3.l)     ;0108caf3123456789abc\r
+    mov.l @(0x12345678:32,er2),@(0x9abcdef0:32,r3l.b)     ;0108cadb123456789abcdef0\r
+    mov.l @(0x12345678:32,er2),@(0x9abcdef0:32,r3.w)     ;0108caeb123456789abcdef0\r
+    mov.l @(0x12345678:32,er2),@(0x9abcdef0:32,er3.l)     ;0108cafb123456789abcdef0\r
+    mov.l @(0x12345678:32,er2),@0xffff9abc:16             ;0108ca40123456789abc\r
+    mov.l @(0x12345678:32,er2),@0x9abcdef0:32             ;0108ca48123456789abcdef0\r
+\r
+    mov.l @(0x1234:16,r3l.b),@er1             ;0108d3011234\r
+    mov.l @(0x1234:16,r3l.b),@(0x4:2,er1)   ;0108d3111234\r
+    mov.l @(0x1234:16,r3l.b),@er1+            ;0108d3811234\r
+    mov.l @(0x1234:16,r3l.b),@-er1            ;0108d3b11234\r
+    mov.l @(0x1234:16,r3l.b),@+er1            ;0108d3911234\r
+    mov.l @(0x1234:16,r3l.b),@er1-            ;0108d3a11234\r
+    mov.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)     ;0108d3c112349abc\r
+    mov.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)     ;0108d3c912349abcdef0\r
+    mov.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r3l.b)   ;0108d3d312349abc\r
+    mov.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r3.w)   ;0108d3e312349abc\r
+    mov.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er3.l)   ;0108d3f312349abc\r
+    mov.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3l.b)   ;0108d3db12349abcdef0\r
+    mov.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r3.w)   ;0108d3eb12349abcdef0\r
+    mov.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er3.l)   ;0108d3fb12349abcdef0\r
+    mov.l @(0x1234:16,r3l.b),@0xffff9abc:16           ;0108d34012349abc\r
+    mov.l @(0x1234:16,r3l.b),@0x9abcdef0:32           ;0108d34812349abcdef0\r
+\r
+    mov.l @(0x1234:16,r3.w),@er1             ;0108e3011234\r
+    mov.l @(0x1234:16,r3.w),@(0x4:2,er1)   ;0108e3111234\r
+    mov.l @(0x1234:16,r3.w),@er1+            ;0108e3811234\r
+    mov.l @(0x1234:16,r3.w),@-er1            ;0108e3b11234\r
+    mov.l @(0x1234:16,r3.w),@+er1            ;0108e3911234\r
+    mov.l @(0x1234:16,r3.w),@er1-            ;0108e3a11234\r
+    mov.l @(0x1234:16,r3.w),@(0xffff9abc:16,er1)     ;0108e3c112349abc\r
+    mov.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)     ;0108e3c912349abcdef0\r
+    mov.l @(0x1234:16,r3.w),@(0xffff9abc:16,r3l.b)   ;0108e3d312349abc\r
+    mov.l @(0x1234:16,r3.w),@(0xffff9abc:16,r3.w)   ;0108e3e312349abc\r
+    mov.l @(0x1234:16,r3.w),@(0xffff9abc:16,er3.l)   ;0108e3f312349abc\r
+    mov.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r3l.b)   ;0108e3db12349abcdef0\r
+    mov.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r3.w)   ;0108e3eb12349abcdef0\r
+    mov.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er3.l)   ;0108e3fb12349abcdef0\r
+    mov.l @(0x1234:16,r3.w),@0xffff9abc:16           ;0108e34012349abc\r
+    mov.l @(0x1234:16,r3.w),@0x9abcdef0:32           ;0108e34812349abcdef0\r
+\r
+    mov.l @(0x1234:16,er3.l),@er1             ;0108f3011234\r
+    mov.l @(0x1234:16,er3.l),@(0x4:2,er1)   ;0108f3111234\r
+    mov.l @(0x1234:16,er3.l),@er1+            ;0108f3811234\r
+    mov.l @(0x1234:16,er3.l),@-er1            ;0108f3b11234\r
+    mov.l @(0x1234:16,er3.l),@+er1            ;0108f3911234\r
+    mov.l @(0x1234:16,er3.l),@er1-            ;0108f3a11234\r
+    mov.l @(0x1234:16,er3.l),@(0xffff9abc:16,er1)     ;0108f3c112349abc\r
+    mov.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)     ;0108f3c912349abcdef0\r
+    mov.l @(0x1234:16,er3.l),@(0xffff9abc:16,r3l.b)   ;0108f3d312349abc\r
+    mov.l @(0x1234:16,er3.l),@(0xffff9abc:16,r3.w)   ;0108f3e312349abc\r
+    mov.l @(0x1234:16,er3.l),@(0xffff9abc:16,er3.l)   ;0108f3f312349abc\r
+    mov.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r3l.b)   ;0108f3db12349abcdef0\r
+    mov.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r3.w)   ;0108f3eb12349abcdef0\r
+    mov.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er3.l)   ;0108f3fb12349abcdef0\r
+    mov.l @(0x1234:16,er3.l),@0xffff9abc:16           ;0108f34012349abc\r
+    mov.l @(0x1234:16,er3.l),@0x9abcdef0:32           ;0108f34812349abcdef0\r
+\r
+    mov.l @(0x12345678:32,r3l.b),@er1             ;0108db0112345678\r
+    mov.l @(0x12345678:32,r3l.b),@(0x4:2,er1)   ;0108db1112345678\r
+    mov.l @(0x12345678:32,r3l.b),@er1+            ;0108db8112345678\r
+    mov.l @(0x12345678:32,r3l.b),@-er1            ;0108dbb112345678\r
+    mov.l @(0x12345678:32,r3l.b),@+er1            ;0108db9112345678\r
+    mov.l @(0x12345678:32,r3l.b),@er1-            ;0108dba112345678\r
+    mov.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)     ;0108dbc1123456789abc\r
+    mov.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)     ;0108dbc9123456789abcdef0\r
+    mov.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r3l.b)   ;0108dbd3123456789abc\r
+    mov.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r3.w)   ;0108dbe3123456789abc\r
+    mov.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er3.l)   ;0108dbf3123456789abc\r
+    mov.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3l.b)   ;0108dbdb123456789abcdef0\r
+    mov.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r3.w)   ;0108dbeb123456789abcdef0\r
+    mov.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er3.l)   ;0108dbfb123456789abcdef0\r
+    mov.l @(0x12345678:32,r3l.b),@0xffff9abc:16           ;0108db40123456789abc\r
+    mov.l @(0x12345678:32,r3l.b),@0x9abcdef0:32           ;0108db48123456789abcdef0\r
+\r
+    mov.l @(0x12345678:32,r3.w),@er1             ;0108eb0112345678\r
+    mov.l @(0x12345678:32,r3.w),@(0x4:2,er1)   ;0108eb1112345678\r
+    mov.l @(0x12345678:32,r3.w),@er1+            ;0108eb8112345678\r
+    mov.l @(0x12345678:32,r3.w),@-er1            ;0108ebb112345678\r
+    mov.l @(0x12345678:32,r3.w),@+er1            ;0108eb9112345678\r
+    mov.l @(0x12345678:32,r3.w),@er1-            ;0108eba112345678\r
+    mov.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)     ;0108ebc1123456789abc\r
+    mov.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)     ;0108ebc9123456789abcdef0\r
+    mov.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r3l.b)   ;0108ebd3123456789abc\r
+    mov.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r3.w)   ;0108ebe3123456789abc\r
+    mov.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er3.l)   ;0108ebf3123456789abc\r
+    mov.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3l.b)   ;0108ebdb123456789abcdef0\r
+    mov.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r3.w)   ;0108ebeb123456789abcdef0\r
+    mov.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er3.l)   ;0108ebfb123456789abcdef0\r
+    mov.l @(0x12345678:32,r3.w),@0xffff9abc:16           ;0108eb40123456789abc\r
+    mov.l @(0x12345678:32,r3.w),@0x9abcdef0:32           ;0108eb48123456789abcdef0\r
+\r
+    mov.l @(0x12345678:32,er3.l),@er1             ;0108fb0112345678\r
+    mov.l @(0x12345678:32,er3.l),@(0x4:2,er1)   ;0108fb1112345678\r
+    mov.l @(0x12345678:32,er3.l),@er1+            ;0108fb8112345678\r
+    mov.l @(0x12345678:32,er3.l),@-er1            ;0108fbb112345678\r
+    mov.l @(0x12345678:32,er3.l),@+er1            ;0108fb9112345678\r
+    mov.l @(0x12345678:32,er3.l),@er1-            ;0108fba112345678\r
+    mov.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)     ;0108fbc1123456789abc\r
+    mov.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)     ;0108fbc9123456789abcdef0\r
+    mov.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r3l.b)   ;0108fbd3123456789abc\r
+    mov.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r3.w)   ;0108fbe3123456789abc\r
+    mov.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er3.l)   ;0108fbf3123456789abc\r
+    mov.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3l.b)   ;0108fbdb123456789abcdef0\r
+    mov.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r3.w)   ;0108fbeb123456789abcdef0\r
+    mov.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er3.l)   ;0108fbfb123456789abcdef0\r
+    mov.l @(0x12345678:32,er3.l),@0xffff9abc:16           ;0108fb40123456789abc\r
+    mov.l @(0x12345678:32,er3.l),@0x9abcdef0:32           ;0108fb48123456789abcdef0\r
+\r
+    mov.l @0x1234:16,@er1                     ;010840011234\r
+    mov.l @0x1234:16,@(0x4:2,er1)           ;010840111234\r
+    mov.l @0x1234:16,@er1+                    ;010840811234\r
+    mov.l @0x1234:16,@-er1                    ;010840b11234\r
+    mov.l @0x1234:16,@+er1                    ;010840911234\r
+    mov.l @0x1234:16,@er1-                    ;010840a11234\r
+    mov.l @0x1234:16,@(0xffff9abc:16,er1)             ;010840c112349abc\r
+    mov.l @0x1234:16,@(0x9abcdef0:32,er1)             ;010840c912349abcdef0\r
+    mov.l @0x1234:16,@(0xffff9abc:16,r3l.b)           ;010840d312349abc\r
+    mov.l @0x1234:16,@(0xffff9abc:16,r3.w)           ;010840e312349abc\r
+    mov.l @0x1234:16,@(0xffff9abc:16,er3.l)           ;010840f312349abc\r
+    mov.l @0x1234:16,@(0x9abcdef0:32,r3l.b)           ;010840db12349abcdef0\r
+    mov.l @0x1234:16,@(0x9abcdef0:32,r3.w)           ;010840eb12349abcdef0\r
+    mov.l @0x1234:16,@(0x9abcdef0:32,er3.l)           ;010840fb12349abcdef0\r
+    mov.l @0x1234:16,@0xffff9abc:16                   ;0108404012349abc\r
+    mov.l @0x1234:16,@0x9abcdef0:32                   ;0108404812349abcdef0\r
+\r
+    mov.l @0x12345678:32,@er1                     ;0108480112345678\r
+    mov.l @0x12345678:32,@(0x4:2,er1)           ;0108481112345678\r
+    mov.l @0x12345678:32,@er1+                    ;0108488112345678\r
+    mov.l @0x12345678:32,@-er1                    ;010848b112345678\r
+    mov.l @0x12345678:32,@+er1                    ;0108489112345678\r
+    mov.l @0x12345678:32,@er1-                    ;010848a112345678\r
+    mov.l @0x12345678:32,@(0xffff9abc:16,er1)             ;010848c1123456789abc\r
+    mov.l @0x12345678:32,@(0x9abcdef0:32,er1)             ;010848c9123456789abcdef0\r
+    mov.l @0x12345678:32,@(0xffff9abc:16,r3l.b)           ;010848d3123456789abc\r
+    mov.l @0x12345678:32,@(0xffff9abc:16,r3.w)           ;010848e3123456789abc\r
+    mov.l @0x12345678:32,@(0xffff9abc:16,er3.l)           ;010848f3123456789abc\r
+    mov.l @0x12345678:32,@(0x9abcdef0:32,r3l.b)           ;010848db123456789abcdef0\r
+    mov.l @0x12345678:32,@(0x9abcdef0:32,r3.w)           ;010848eb123456789abcdef0\r
+    mov.l @0x12345678:32,@(0x9abcdef0:32,er3.l)           ;010848fb123456789abcdef0\r
+    mov.l @0x12345678:32,@0xffff9abc:16                   ;01084840123456789abc\r
+    mov.l @0x12345678:32,@0x9abcdef0:32                   ;01084848123456789abcdef0\r
+\r
+    movtpe.b r2h,@0x1234:16                    ;6ac21234\r
+    movfpe.b @0x1234:16,r1h                    ;6a411234\r
+\r
+    ldm @sp+,(er0-er1)                  ;01106d71\r
+    ldm @sp+,(er1-er2)                  ;01106d72\r
+    ldm @sp+,(er2-er3)                  ;01106d73\r
+    ldm @sp+,(er3-er4)                  ;01106d74\r
+    ldm @sp+,(er4-er5)                  ;01106d75\r
+    ldm @sp+,(er5-er6)                  ;01106d76\r
+    ldm @sp+,(er6-er7)                  ;01106d77\r
+\r
+    ldm @sp+,(er0-er2)                  ;01206d72\r
+    ldm @sp+,(er1-er3)                  ;01206d73\r
+    ldm @sp+,(er2-er4)                  ;01206d74\r
+    ldm @sp+,(er3-er5)                  ;01206d75\r
+    ldm @sp+,(er4-er6)                  ;01206d76\r
+    ldm @sp+,(er5-er7)                  ;01206d77\r
+\r
+    ldm @sp+,(er0-er3)                  ;01306d73\r
+    ldm @sp+,(er1-er4)                  ;01306d74\r
+    ldm @sp+,(er2-er5)                  ;01306d75\r
+    ldm @sp+,(er3-er6)                  ;01306d76\r
+    ldm @sp+,(er4-er7)                  ;01306d77\r
+\r
+    stm (er0-er1),@-sp                  ;01106df0\r
+    stm (er1-er2),@-sp                  ;01106df1\r
+    stm (er2-er3),@-sp                  ;01106df2\r
+    stm (er3-er4),@-sp                  ;01106df3\r
+    stm (er4-er5),@-sp                  ;01106df4\r
+    stm (er5-er6),@-sp                  ;01106df5\r
+    stm (er6-er7),@-sp                  ;01106df6\r
+\r
+    stm (er0-er2),@-sp                  ;01206df0\r
+    stm (er1-er3),@-sp                  ;01206df1\r
+    stm (er2-er4),@-sp                  ;01206df2\r
+    stm (er3-er5),@-sp                  ;01206df3\r
+    stm (er4-er6),@-sp                  ;01206df4\r
+    stm (er5-er7),@-sp                  ;01206df5\r
+\r
+    stm (er0-er3),@-sp                  ;01306df0\r
+    stm (er1-er4),@-sp                  ;01306df1\r
+    stm (er2-er5),@-sp                  ;01306df2\r
+    stm (er3-er6),@-sp                  ;01306df3\r
+    stm (er4-er7),@-sp                  ;01306df4\r
+\r
+    eepmov.b                            ;7b5c598f\r
+\r
+    eepmov.w                            ;7bd4598f\r
+\r
+    movmd.b                              ;7b94\r
+    movmd.w                              ;7ba4\r
+    movmd.l                              ;7bb4\r
+    movsd.b  label                       ;7b840004\r
+    nop                                  ;0000\r
+    nop                                  ;0000\r
+label:\r
+\r
+       .end\r
+\r
diff --git a/gdb/testsuite/gdb.disasm/t02_mova.exp b/gdb/testsuite/gdb.disasm/t02_mova.exp
new file mode 100644 (file)
index 0000000..899bbfd
--- /dev/null
@@ -0,0 +1,486 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t02_mova"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "mova/b.l\t@\\(0x1234(:16|),r3l.b\\),er1" \
+       "mova/b.c @(0x1234:16,r3l.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),r3.w\\),er1" \
+       "mova/b.c @(0x1234:16,r3.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),r3l.b\\),er1" \
+       "mova/w.c @(0x1234:16,r3l.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),r3.w\\),er1" \
+       "mova/w.c @(0x1234:16,r3.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),r3l.b\\),er1" \
+       "mova/l.c @(0x1234:16,r3l.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),r3.w\\),er1" \
+       "mova/l.c @(0x1234:16,r3.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),r3l.b\\),er1" \
+       "mova/b.c @(0x12345678:32,r3l.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),r3.w\\),er1" \
+       "mova/b.c @(0x12345678:32,r3.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),r3l.b\\),er1" \
+       "mova/w.c @(0x12345678:32,r3l.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),r3.w\\),er1" \
+       "mova/w.c @(0x12345678:32,r3.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),r3l.b\\),er1" \
+       "mova/l.c @(0x12345678:32,r3l.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),r3.w\\),er1" \
+       "mova/l.c @(0x12345678:32,r3.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),r3l.b\\),er1" \
+       "mova/b.l @(0x1234:16,r3l.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),r3.w\\),er1" \
+       "mova/b.l @(0x1234:16,r3.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),r3l.b\\),er1" \
+       "mova/w.l @(0x1234:16,r3l.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),r3.w\\),er1" \
+       "mova/w.l @(0x1234:16,r3.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),r3l.b\\),er1" \
+       "mova/l.l @(0x1234:16,r3l.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),r3.w\\),er1" \
+       "mova/l.l @(0x1234:16,r3.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),r3l.b\\),er1" \
+       "mova/b.l @(0x12345678:32,r3l.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),r3.w\\),er1" \
+       "mova/b.l @(0x12345678:32,r3.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),r3l.b\\),er1" \
+       "mova/w.l @(0x12345678:32,r3l.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),r3.w\\),er1" \
+       "mova/w.l @(0x12345678:32,r3.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),r3l.b\\),er1" \
+       "mova/l.l @(0x12345678:32,r3l.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),r3.w\\),er1" \
+       "mova/l.l @(0x12345678:32,r3.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@er2.b\\),er1" \
+       "mova/b.l @(0x1234:16,@er2.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x1(:2|),er2\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x1:2,er2).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@er2\\+.b\\),er1" \
+       "mova/b.l @(0x1234:16,@er2+.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@-er2.b\\),er1" \
+       "mova/b.l @(0x1234:16,@-er2.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\+er2.b\\),er1" \
+       "mova/b.l @(0x1234:16,@+er2.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@er2-.b\\),er1" \
+       "mova/b.l @(0x1234:16,@er2-.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,er2).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,er2).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,r2l.b).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2.w\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,r2.w).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2.l\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,er2.l).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,r2l.b).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,r2.w).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\).b\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,er2.l).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@0x9abc(:16|).b\\),er1" \
+       "mova/b.l @(0x1234:16,@0x9abc:16.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@0x9abcdef0(:32|).b\\),er1" \
+       "mova/b.l @(0x1234:16,@0x9abcdef0:32.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@er2.w\\),er1" \
+       "mova/b.l @(0x1234:16,@er2.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x2(:2|),er2\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x2:2,er2).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@er2\\+.w\\),er1" \
+       "mova/b.l @(0x1234:16,@er2+.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@-er2.w\\),er1" \
+       "mova/b.l @(0x1234:16,@-er2.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\+er2.w\\),er1" \
+       "mova/b.l @(0x1234:16,@+er2.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@er2-.w\\),er1" \
+       "mova/b.l @(0x1234:16,@er2-.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,er2).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,er2).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,r2l.b).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2.w\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,r2.w).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2.l\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abc:16,er2.l).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,r2l.b).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,r2.w).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\).w\\),er1" \
+       "mova/b.l @(0x1234:16,@(0x9abcdef0:32,er2.l).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@0x9abc(:16|).w\\),er1" \
+       "mova/b.l @(0x1234:16,@0x9abc:16.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x1234(:16|),@0x9abcdef0(:32|).w\\),er1" \
+       "mova/b.l @(0x1234:16,@0x9abcdef0:32.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@er2.b\\),er1" \
+       "mova/w.l @(0x1234:16,@er2.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x1(:2|),er2\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x1:2,er2).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@er2\\+.b\\),er1" \
+       "mova/w.l @(0x1234:16,@er2+.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@-er2.b\\),er1" \
+       "mova/w.l @(0x1234:16,@-er2.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\+er2.b\\),er1" \
+       "mova/w.l @(0x1234:16,@+er2.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@er2-.b\\),er1" \
+       "mova/w.l @(0x1234:16,@er2-.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,er2).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,er2).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,r2l.b).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2.w\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,r2.w).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2.l\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,er2.l).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,r2l.b).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,r2.w).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\).b\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,er2.l).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@0x9abc(:16|).b\\),er1" \
+       "mova/w.l @(0x1234:16,@0x9abc:16.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@0x9abcdef0(:32|).b\\),er1" \
+       "mova/w.l @(0x1234:16,@0x9abcdef0:32.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@er2.w\\),er1" \
+       "mova/w.l @(0x1234:16,@er2.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x2(:2|),er2\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x2:2,er2).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@er2\\+.w\\),er1" \
+       "mova/w.l @(0x1234:16,@er2+.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@-er2.w\\),er1" \
+       "mova/w.l @(0x1234:16,@-er2.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\+er2.w\\),er1" \
+       "mova/w.l @(0x1234:16,@+er2.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@er2-.w\\),er1" \
+       "mova/w.l @(0x1234:16,@er2-.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,er2).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,er2).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,r2l.b).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2.w\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,r2.w).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2.l\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abc:16,er2.l).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,r2l.b).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,r2.w).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\).w\\),er1" \
+       "mova/w.l @(0x1234:16,@(0x9abcdef0:32,er2.l).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@0x9abc(:16|).w\\),er1" \
+       "mova/w.l @(0x1234:16,@0x9abc:16.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x1234(:16|),@0x9abcdef0(:32|).w\\),er1" \
+       "mova/w.l @(0x1234:16,@0x9abcdef0:32.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@er2.b\\),er1" \
+       "mova/l.l @(0x1234:16,@er2.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x1(:2|),er2\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x1:2,er2).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@er2\\+.b\\),er1" \
+       "mova/l.l @(0x1234:16,@er2+.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@-er2.b\\),er1" \
+       "mova/l.l @(0x1234:16,@-er2.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\+er2.b\\),er1" \
+       "mova/l.l @(0x1234:16,@+er2.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@er2-.b\\),er1" \
+       "mova/l.l @(0x1234:16,@er2-.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,er2).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,er2).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,r2l.b).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2.w\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,r2.w).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2.l\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,er2.l).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,r2l.b).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,r2.w).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\).b\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,er2.l).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@0x9abc(:16|).b\\),er1" \
+       "mova/l.l @(0x1234:16,@0x9abc:16.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@0x9abcdef0(:32|).b\\),er1" \
+       "mova/l.l @(0x1234:16,@0x9abcdef0:32.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@er2.w\\),er1" \
+       "mova/l.l @(0x1234:16,@er2.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x2(:2|),er2\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x2:2,er2).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@er2\\+.w\\),er1" \
+       "mova/l.l @(0x1234:16,@er2+.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@-er2.w\\),er1" \
+       "mova/l.l @(0x1234:16,@-er2.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\+er2.w\\),er1" \
+       "mova/l.l @(0x1234:16,@+er2.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@er2-.w\\),er1" \
+       "mova/l.l @(0x1234:16,@er2-.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,er2).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,er2).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,r2l.b).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),r2.w\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,r2.w).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abc(:16|),er2.l\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abc:16,er2.l).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,r2l.b).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,r2.w).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\).w\\),er1" \
+       "mova/l.l @(0x1234:16,@(0x9abcdef0:32,er2.l).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@0x9abc(:16|).w\\),er1" \
+       "mova/l.l @(0x1234:16,@0x9abc:16.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x1234(:16|),@0x9abcdef0(:32|).w\\),er1" \
+       "mova/l.l @(0x1234:16,@0x9abcdef0:32.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@er2.b\\),er1" \
+       "mova/b.l @(0x12345678:32,@er2.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x1(:2|),er2\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x1:2,er2).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@er2\\+.b\\),er1" \
+       "mova/b.l @(0x12345678:32,@er2+.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@-er2.b\\),er1" \
+       "mova/b.l @(0x12345678:32,@-er2.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\+er2.b\\),er1" \
+       "mova/b.l @(0x12345678:32,@+er2.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@er2-.b\\),er1" \
+       "mova/b.l @(0x12345678:32,@er2-.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,er2).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,er2).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,r2l.b).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,r2.w).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,er2.l).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,r2l.b).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,r2.w).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,er2.l).b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@0x9abc(:16|).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@0x9abc:16.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@0x9abcdef0(:32|).b\\),er1" \
+       "mova/b.l @(0x12345678:32,@0x9abcdef0:32.b),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@er2.w\\),er1" \
+       "mova/b.l @(0x12345678:32,@er2.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x2(:2|),er2\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x2:2,er2).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@er2\\+.w\\),er1" \
+       "mova/b.l @(0x12345678:32,@er2+.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@-er2.w\\),er1" \
+       "mova/b.l @(0x12345678:32,@-er2.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\+er2.w\\),er1" \
+       "mova/b.l @(0x12345678:32,@+er2.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@er2-.w\\),er1" \
+       "mova/b.l @(0x12345678:32,@er2-.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,er2).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,er2).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,r2l.b).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,r2.w).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abc:16,er2.l).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,r2l.b).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,r2.w).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@(0x9abcdef0:32,er2.l).w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@0x9abc(:16|).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@0x9abc:16.w),er1"
+gdb_test "x" "mova/b.l\t@\\(0x12345678(:32|),@0x9abcdef0(:32|).w\\),er1" \
+       "mova/b.l @(0x12345678:32,@0x9abcdef0:32.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@er2.b\\),er1" \
+       "mova/w.l @(0x12345678:32,@er2.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x1(:2|),er2\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x1:2,er2).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@er2\\+.b\\),er1" \
+       "mova/w.l @(0x12345678:32,@er2+.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@-er2.b\\),er1" \
+       "mova/w.l @(0x12345678:32,@-er2.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\+er2.b\\),er1" \
+       "mova/w.l @(0x12345678:32,@+er2.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@er2-.b\\),er1" \
+       "mova/w.l @(0x12345678:32,@er2-.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,er2).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,er2).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,r2l.b).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,r2.w).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,er2.l).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,r2l.b).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,r2.w).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,er2.l).b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@0x9abc(:16|).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@0x9abc:16.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@0x9abcdef0(:32|).b\\),er1" \
+       "mova/w.l @(0x12345678:32,@0x9abcdef0:32.b),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@er2.w\\),er1" \
+       "mova/w.l @(0x12345678:32,@er2.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x2(:2|),er2\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x2:2,er2).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@er2\\+.w\\),er1" \
+       "mova/w.l @(0x12345678:32,@er2+.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@-er2.w\\),er1" \
+       "mova/w.l @(0x12345678:32,@-er2.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\+er2.w\\),er1" \
+       "mova/w.l @(0x12345678:32,@+er2.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@er2-.w\\),er1" \
+       "mova/w.l @(0x12345678:32,@er2-.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,er2).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,er2).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,r2l.b).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,r2.w).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abc:16,er2.l).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,r2l.b).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,r2.w).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@(0x9abcdef0:32,er2.l).w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@0x9abc(:16|).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@0x9abc:16.w),er1"
+gdb_test "x" "mova/w.l\t@\\(0x12345678(:32|),@0x9abcdef0(:32|).w\\),er1" \
+       "mova/w.l @(0x12345678:32,@0x9abcdef0:32.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@er2.b\\),er1" \
+       "mova/l.l @(0x12345678:32,@er2.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x1(:2|),er2\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x1:2,er2).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@er2\\+.b\\),er1" \
+       "mova/l.l @(0x12345678:32,@er2+.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@-er2.b\\),er1" \
+       "mova/l.l @(0x12345678:32,@-er2.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\+er2.b\\),er1" \
+       "mova/l.l @(0x12345678:32,@+er2.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@er2-.b\\),er1" \
+       "mova/l.l @(0x12345678:32,@er2-.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,er2).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,er2).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,r2l.b).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,r2.w).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,er2.l).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,r2l.b).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,r2.w).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,er2.l).b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@0x9abc(:16|).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@0x9abc:16.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@0x9abcdef0(:32|).b\\),er1" \
+       "mova/l.l @(0x12345678:32,@0x9abcdef0:32.b),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@er2.w\\),er1" \
+       "mova/l.l @(0x12345678:32,@er2.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x2(:2|),er2\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x2:2,er2).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@er2\\+.w\\),er1" \
+       "mova/l.l @(0x12345678:32,@er2+.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@-er2.w\\),er1" \
+       "mova/l.l @(0x12345678:32,@-er2.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\+er2.w\\),er1" \
+       "mova/l.l @(0x12345678:32,@+er2.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@er2-.w\\),er1" \
+       "mova/l.l @(0x12345678:32,@er2-.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,er2).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,er2).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,r2l.b).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,r2.w).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abc:16,er2.l).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,r2l.b).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,r2.w).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@(0x9abcdef0:32,er2.l).w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@0x9abc(:16|).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@0x9abc:16.w),er1"
+gdb_test "x" "mova/l.l\t@\\(0x12345678(:32|),@0x9abcdef0(:32|).w\\),er1" \
+       "mova/l.l @(0x12345678:32,@0x9abcdef0:32.w),er1"
diff --git a/gdb/testsuite/gdb.disasm/t02_mova.s b/gdb/testsuite/gdb.disasm/t02_mova.s
new file mode 100644 (file)
index 0000000..8a2e228
--- /dev/null
@@ -0,0 +1,238 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;mova\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    mova/b.c @(0x1234:16,r3l.b),er1              ;7A891234\r
+    mova/b.c @(0x1234:16,r3.w),er1              ;7A991234\r
+    mova/w.c @(0x1234:16,r3l.b),er1           ;7AA91234\r
+    mova/w.c @(0x1234:16,r3.w),er1           ;7AB91234\r
+    mova/l.c @(0x1234:16,r3l.b),er1           ;7AC91234\r
+    mova/l.c @(0x1234:16,r3.w),er1           ;7AD91234\r
+    mova/b.c @(0x12345678:32,r3l.b),er1              ;7A8112345678\r
+    mova/b.c @(0x12345678:32,r3.w),er1              ;7A9112345678\r
+    mova/w.c @(0x12345678:32,r3l.b),er1           ;7AA112345678\r
+    mova/w.c @(0x12345678:32,r3.w),er1           ;7AB112345678\r
+    mova/l.c @(0x12345678:32,r3l.b),er1           ;7AC112345678\r
+    mova/l.c @(0x12345678:32,r3.w),er1           ;7AD112345678\r
+\r
+    mova/b.l @(0x1234:16,r3l.b),er1              ;78B87A891234\r
+    mova/b.l @(0x1234:16,r3.w),er1              ;78397A991234\r
+    mova/w.l @(0x1234:16,r3l.b),er1           ;78B87AA91234\r
+    mova/w.l @(0x1234:16,r3.w),er1           ;78397AB91234\r
+    mova/l.l @(0x1234:16,r3l.b),er1           ;78B87AC91234\r
+    mova/l.l @(0x1234:16,r3.w),er1           ;78397AD91234\r
+    mova/b.l @(0x12345678:32,r3l.b),er1              ;78B87A8112345678\r
+    mova/b.l @(0x12345678:32,r3.w),er1              ;78397A9112345678\r
+    mova/w.l @(0x12345678:32,r3l.b),er1           ;78B87AA112345678\r
+    mova/w.l @(0x12345678:32,r3.w),er1           ;78397AB112345678\r
+    mova/l.l @(0x12345678:32,r3l.b),er1           ;78B87AC112345678\r
+    mova/l.l @(0x12345678:32,r3.w),er1           ;78397AD112345678\r
+\r
+    mova/b.l @(0x1234:16,@er2.b),er1              ;017F02811234\r
+    mova/b.l @(0x1234:16,@(0x1:2,er2).b),er1       ;017F12811234\r
+    mova/b.l @(0x1234:16,@er2+.b),er1             ;017F82811234\r
+    mova/b.l @(0x1234:16,@-er2.b),er1             ;017FB2811234\r
+    mova/b.l @(0x1234:16,@+er2.b),er1             ;017F92811234\r
+    mova/b.l @(0x1234:16,@er2-.b),er1             ;017FA2811234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,er2).b),er1      ;017FC2819ABC1234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,er2).b),er1      ;017FCA819ABCDEF01234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,r2L.b).b),er1    ;017FD2819ABC1234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,r2.w).b),er1    ;017FE2819ABC1234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,er2.l).b),er1    ;017FF2819ABC1234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,r2L.b).b),er1    ;017FDA819ABCDEF01234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,r2.w).b),er1    ;017FEA819ABCDEF01234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,er2.l).b),er1    ;017FFA819ABCDEF01234\r
+    mova/b.l @(0x1234:16,@0xFFFF9ABC:16.b),er1            ;017F40819ABC1234\r
+    mova/b.l @(0x1234:16,@0x9ABCDEF0:32.b),er1            ;017F48819ABCDEF01234\r
+\r
+    mova/b.l @(0x1234:16,@er2.w),er1              ;015F02911234\r
+    mova/b.l @(0x1234:16,@(0x2:2,er2).w),er1    ;015F12911234\r
+    mova/b.l @(0x1234:16,@er2+.w),er1             ;015F82911234\r
+    mova/b.l @(0x1234:16,@-er2.w),er1             ;015FB2911234\r
+    mova/b.l @(0x1234:16,@+er2.w),er1             ;015F92911234\r
+    mova/b.l @(0x1234:16,@er2-.w),er1             ;015FA2911234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,er2).w),er1      ;015FC2919ABC1234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,er2).w),er1      ;015FCA919ABCDEF01234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,r2L.b).w),er1    ;015FD2919ABC1234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,r2.w).w),er1    ;015FE2919ABC1234\r
+    mova/b.l @(0x1234:16,@(0xFFFF9ABC:16,er2.l).w),er1    ;015FF2919ABC1234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,r2L.b).w),er1    ;015FDA919ABCDEF01234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,r2.w).w),er1    ;015FEA919ABCDEF01234\r
+    mova/b.l @(0x1234:16,@(0x9ABCDEF0:32,er2.l).w),er1    ;015FFA919ABCDEF01234\r
+    mova/b.l @(0x1234:16,@0xFFFF9ABC:16.w),er1            ;015F40919ABC1234\r
+    mova/b.l @(0x1234:16,@0x9ABCDEF0:32.w),er1            ;015F48919ABCDEF01234\r
+\r
+    mova/w.l @(0x1234:16,@er2.b),er1           ;017F02A11234\r
+    mova/w.l @(0x1234:16,@(0x1:2,er2).b),er1    ;017F12A11234\r
+    mova/w.l @(0x1234:16,@er2+.b),er1          ;017F82A11234\r
+    mova/w.l @(0x1234:16,@-er2.b),er1          ;017FB2A11234\r
+    mova/w.l @(0x1234:16,@+er2.b),er1          ;017F92A11234\r
+    mova/w.l @(0x1234:16,@er2-.b),er1          ;017FA2A11234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,er2).b),er1   ;017FC2A19ABC1234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,er2).b),er1   ;017FCAA19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,r2L.b).b),er1 ;017FD2A19ABC1234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,r2.w).b),er1 ;017FE2A19ABC1234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,er2.l).b),er1 ;017FF2A19ABC1234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,r2L.b).b),er1 ;017FDAA19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,r2.w).b),er1 ;017FEAA19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,er2.l).b),er1 ;017FFAA19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@0xFFFF9ABC:16.b),er1         ;017F40A19ABC1234\r
+    mova/w.l @(0x1234:16,@0x9ABCDEF0:32.b),er1         ;017F48A19ABCDEF01234\r
+\r
+    mova/w.l @(0x1234:16,@er2.w),er1           ;015F02B11234\r
+    mova/w.l @(0x1234:16,@(0x2:2,er2).w),er1 ;015F12B11234\r
+    mova/w.l @(0x1234:16,@er2+.w),er1          ;015F82B11234\r
+    mova/w.l @(0x1234:16,@-er2.w),er1          ;015FB2B11234\r
+    mova/w.l @(0x1234:16,@+er2.w),er1          ;015F92B11234\r
+    mova/w.l @(0x1234:16,@er2-.w),er1          ;015FA2B11234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,er2).w),er1   ;015FC2B19ABC1234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,er2).w),er1   ;015FCAB19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,r2L.b).w),er1 ;015FD2B19ABC1234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,r2.w).w),er1 ;015FE2B19ABC1234\r
+    mova/w.l @(0x1234:16,@(0xFFFF9ABC:16,er2.l).w),er1 ;015FF2B19ABC1234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,r2L.b).w),er1 ;015FDAB19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,r2.w).w),er1 ;015FEAB19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@(0x9ABCDEF0:32,er2.l).w),er1 ;015FFAB19ABCDEF01234\r
+    mova/w.l @(0x1234:16,@0xFFFF9ABC:16.w),er1         ;015F40B19ABC1234\r
+    mova/w.l @(0x1234:16,@0x9ABCDEF0:32.w),er1         ;015F48B19ABCDEF01234\r
+\r
+    mova/l.l @(0x1234:16,@er2.b),er1           ;017F02C11234\r
+    mova/l.l @(0x1234:16,@(0x1:2,er2).b),er1    ;017F12C11234\r
+    mova/l.l @(0x1234:16,@er2+.b),er1          ;017F82C11234\r
+    mova/l.l @(0x1234:16,@-er2.b),er1          ;017FB2C11234\r
+    mova/l.l @(0x1234:16,@+er2.b),er1          ;017F92C11234\r
+    mova/l.l @(0x1234:16,@er2-.b),er1          ;017FA2C11234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,er2).b),er1   ;017FC2C19ABC1234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,er2).b),er1   ;017FCAC19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,r2L.b).b),er1 ;017FD2C19ABC1234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,r2.w).b),er1 ;017FE2C19ABC1234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,er2.l).b),er1 ;017FF2C19ABC1234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,r2L.b).b),er1 ;017FDAC19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,r2.w).b),er1 ;017FEAC19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,er2.l).b),er1 ;017FFAC19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@0xFFFF9ABC:16.b),er1         ;017F40C19ABC1234\r
+    mova/l.l @(0x1234:16,@0x9ABCDEF0:32.b),er1         ;017F48C19ABCDEF01234\r
+\r
+    mova/l.l @(0x1234:16,@er2.w),er1           ;015F02D11234\r
+    mova/l.l @(0x1234:16,@(0x2:2,er2).w),er1   ;015F12D11234\r
+    mova/l.l @(0x1234:16,@er2+.w),er1          ;015F82D11234\r
+    mova/l.l @(0x1234:16,@-er2.w),er1          ;015FB2D11234\r
+    mova/l.l @(0x1234:16,@+er2.w),er1          ;015F92D11234\r
+    mova/l.l @(0x1234:16,@er2-.w),er1          ;015FA2D11234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,er2).w),er1   ;015FC2D19ABC1234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,er2).w),er1   ;015FCAD19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,r2L.b).w),er1 ;015FD2D19ABC1234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,r2.w).w),er1 ;015FE2D19ABC1234\r
+    mova/l.l @(0x1234:16,@(0xFFFF9ABC:16,er2.l).w),er1 ;015FF2D19ABC1234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,r2L.b).w),er1 ;015FDAD19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,r2.w).w),er1 ;015FEAD19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@(0x9ABCDEF0:32,er2.l).w),er1 ;015FFAD19ABCDEF01234\r
+    mova/l.l @(0x1234:16,@0xFFFF9ABC:16.w),er1         ;015F40D19ABC1234\r
+    mova/l.l @(0x1234:16,@0x9ABCDEF0:32.w),er1         ;015F48D19ABCDEF01234\r
+\r
+    mova/b.l @(0x12345678:32,@er2.b),er1              ;017F028912345678\r
+    mova/b.l @(0x12345678:32,@(0x1:2,er2).b),er1       ;017F128912345678\r
+    mova/b.l @(0x12345678:32,@er2+.b),er1             ;017F828912345678\r
+    mova/b.l @(0x12345678:32,@-er2.b),er1             ;017FB28912345678\r
+    mova/b.l @(0x12345678:32,@+er2.b),er1             ;017F928912345678\r
+    mova/b.l @(0x12345678:32,@er2-.b),er1             ;017FA28912345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,er2).b),er1      ;017FC2899ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,er2).b),er1      ;017FCA899ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,r2L.b).b),er1    ;017FD2899ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,r2.w).b),er1    ;017FE2899ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,er2.l).b),er1    ;017FF2899ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,r2L.b).b),er1    ;017FDA899ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,r2.w).b),er1    ;017FEA899ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,er2.l).b),er1    ;017FFA899ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@0xFFFF9ABC:16.b),er1            ;017F40899ABC12345678\r
+    mova/b.l @(0x12345678:32,@0x9ABCDEF0:32.b),er1            ;017F48899ABCDEF012345678\r
+\r
+    mova/b.l @(0x12345678:32,@er2.w),er1              ;015F029912345678\r
+    mova/b.l @(0x12345678:32,@(0x2:2,er2).w),er1      ;015F129912345678\r
+    mova/b.l @(0x12345678:32,@er2+.w),er1             ;015F829912345678\r
+    mova/b.l @(0x12345678:32,@-er2.w),er1             ;015FB29912345678\r
+    mova/b.l @(0x12345678:32,@+er2.w),er1             ;015F929912345678\r
+    mova/b.l @(0x12345678:32,@er2-.w),er1             ;015FA29912345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,er2).w),er1      ;015FC2999ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,er2).w),er1      ;015FCA999ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,r2L.b).w),er1    ;015FD2999ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,r2.w).w),er1    ;015FE2999ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0xFFFF9ABC:16,er2.l).w),er1    ;015FF2999ABC12345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,r2L.b).w),er1    ;015FDA999ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,r2.w).w),er1    ;015FEA999ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@(0x9ABCDEF0:32,er2.l).w),er1    ;015FFA999ABCDEF012345678\r
+    mova/b.l @(0x12345678:32,@0xFFFF9ABC:16.w),er1            ;015F40999ABC12345678\r
+    mova/b.l @(0x12345678:32,@0x9ABCDEF0:32.w),er1            ;015F48999ABCDEF012345678\r
+\r
+    mova/w.l @(0x12345678:32,@er2.b),er1           ;017F02A912345678\r
+    mova/w.l @(0x12345678:32,@(0x1:2,er2).b),er1   ;017F12A912345678\r
+    mova/w.l @(0x12345678:32,@er2+.b),er1          ;017F82A912345678\r
+    mova/w.l @(0x12345678:32,@-er2.b),er1          ;017FB2A912345678\r
+    mova/w.l @(0x12345678:32,@+er2.b),er1          ;017F92A912345678\r
+    mova/w.l @(0x12345678:32,@er2-.b),er1          ;017FA2A912345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,er2).b),er1   ;017FC2A99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,er2).b),er1   ;017FCAA99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,r2L.b).b),er1 ;017FD2A99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,r2.w).b),er1 ;017FE2A99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,er2.l).b),er1 ;017FF2A99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,r2L.b).b),er1 ;017FDAA99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,r2.w).b),er1 ;017FEAA99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,er2.l).b),er1 ;017FFAA99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@0xFFFF9ABC:16.b),er1         ;017F40A99ABC12345678\r
+    mova/w.l @(0x12345678:32,@0x9ABCDEF0:32.b),er1         ;017F48A99ABCDEF012345678\r
+\r
+    mova/w.l @(0x12345678:32,@er2.w),er1           ;015F02B912345678\r
+    mova/w.l @(0x12345678:32,@(0x2:2,er2).w),er1   ;015F12B912345678\r
+    mova/w.l @(0x12345678:32,@er2+.w),er1          ;015F82B912345678\r
+    mova/w.l @(0x12345678:32,@-er2.w),er1          ;015FB2B912345678\r
+    mova/w.l @(0x12345678:32,@+er2.w),er1          ;015F92B912345678\r
+    mova/w.l @(0x12345678:32,@er2-.w),er1          ;015FA2B912345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,er2).w),er1   ;015FC2B99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,er2).w),er1   ;015FCAB99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,r2L.b).w),er1 ;015FD2B99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,r2.w).w),er1 ;015FE2B99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0xFFFF9ABC:16,er2.l).w),er1 ;015FF2B99ABC12345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,r2L.b).w),er1 ;015FDAB99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,r2.w).w),er1 ;015FEAB99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@(0x9ABCDEF0:32,er2.l).w),er1 ;015FFAB99ABCDEF012345678\r
+    mova/w.l @(0x12345678:32,@0xFFFF9ABC:16.w),er1         ;015F40B99ABC12345678\r
+    mova/w.l @(0x12345678:32,@0x9ABCDEF0:32.w),er1         ;015F48B99ABCDEF012345678\r
+\r
+    mova/l.l @(0x12345678:32,@er2.b),er1           ;017F02C912345678\r
+    mova/l.l @(0x12345678:32,@(0x1:2,er2).b),er1   ;017F12C912345678\r
+    mova/l.l @(0x12345678:32,@er2+.b),er1          ;017F82C912345678\r
+    mova/l.l @(0x12345678:32,@-er2.b),er1          ;017FB2C912345678\r
+    mova/l.l @(0x12345678:32,@+er2.b),er1          ;017F92C912345678\r
+    mova/l.l @(0x12345678:32,@er2-.b),er1          ;017FA2C912345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,er2).b),er1   ;017FC2C99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,er2).b),er1   ;017FCAC99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,r2L.b).b),er1 ;017FD2C99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,r2.w).b),er1 ;017FE2C99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,er2.l).b),er1 ;017FF2C99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,r2L.b).b),er1 ;017FDAC99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,r2.w).b),er1 ;017FEAC99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,er2.l).b),er1 ;017FFAC99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@0xFFFF9ABC:16.b),er1         ;017F40C99ABC12345678\r
+    mova/l.l @(0x12345678:32,@0x9ABCDEF0:32.b),er1         ;017F48C99ABCDEF012345678\r
+\r
+    mova/l.l @(0x12345678:32,@er2.w),er1           ;015F02D912345678\r
+    mova/l.l @(0x12345678:32,@(0x2:2,er2).w),er1 ;015F12D912345678\r
+    mova/l.l @(0x12345678:32,@er2+.w),er1          ;015F82D912345678\r
+    mova/l.l @(0x12345678:32,@-er2.w),er1          ;015FB2D912345678\r
+    mova/l.l @(0x12345678:32,@+er2.w),er1          ;015F92D912345678\r
+    mova/l.l @(0x12345678:32,@er2-.w),er1          ;015FA2D912345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,er2).w),er1   ;015FC2D99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,er2).w),er1   ;015FCAD99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,r2L.b).w),er1 ;015FD2D99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,r2.w).w),er1 ;015FE2D99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0xFFFF9ABC:16,er2.l).w),er1 ;015FF2D99ABC12345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,r2L.b).w),er1 ;015FDAD99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,r2.w).w),er1 ;015FEAD99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@(0x9ABCDEF0:32,er2.l).w),er1 ;015FFAD99ABCDEF012345678\r
+    mova/l.l @(0x12345678:32,@0xFFFF9ABC:16.w),er1         ;015F40D99ABC12345678\r
+    mova/l.l @(0x12345678:32,@0x9ABCDEF0:32.w),er1         ;015F48D99ABCDEF012345678\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t03_add.exp b/gdb/testsuite/gdb.disasm/t03_add.exp
new file mode 100644 (file)
index 0000000..5128fb9
--- /dev/null
@@ -0,0 +1,1876 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t03_add"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "add.b\t#0x12(:8|),r1h" \
+       "add.b #0x12:8,r1h"
+gdb_test "x" "add.b\t#0x12(:8|),@er1" \
+       "add.b #0x12:8,@er1"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x3(:2|),er1\\)" \
+       "add.b #0x12:8,@(0x3:2,er1)"
+gdb_test "x" "add.b\t#0x12(:8|),@er1\\+" \
+       "add.b #0x12:8,@er1+"
+gdb_test "x" "add.b\t#0x12(:8|),@-er1" \
+       "add.b #0x12:8,@-er1"
+gdb_test "x" "add.b\t#0x12(:8|),@\\+er1" \
+       "add.b #0x12:8,@+er1"
+gdb_test "x" "add.b\t#0x12(:8|),@er1-" \
+       "add.b #0x12:8,@er1-"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x1234(:16|),er1\\)" \
+       "add.b #0x12:8,@(0x1234:16,er1)"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x12345678(:32|),er1\\)" \
+       "add.b #0x12:8,@(0x12345678:32,er1)"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x1234(:16|),r2l.b\\)" \
+       "add.b #0x12:8,@(0x1234:16,r2l.b)"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x1234(:16|),r2.w\\)" \
+       "add.b #0x12:8,@(0x1234:16,r2.w)"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x1234(:16|),er2.l\\)" \
+       "add.b #0x12:8,@(0x1234:16,er2.l)"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x12345678(:32|),r2l.b\\)" \
+       "add.b #0x12:8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x12345678(:32|),r2.w\\)" \
+       "add.b #0x12:8,@(0x12345678:32,r2.w)"
+gdb_test "x" "add.b\t#0x12(:8|),@\\(0x12345678(:32|),er2.l\\)" \
+       "add.b #0x12:8,@(0x12345678:32,er2.l)"
+gdb_test "x" "add.b\t#0x12(:8|),@0x9a(:8|)" \
+       "add.b #0x12:8,@0x9a:8"
+gdb_test "x" "add.b\t#0x12(:8|),@0x1234(:16|)" \
+       "add.b #0x12:8,@0x1234:16"
+gdb_test "x" "add.b\t#0x12(:8|),@0x12345678(:32|)" \
+       "add.b #0x12:8,@0x12345678:32"
+gdb_test "x" "add.b\tr3h,r1h" \
+       "add.b r3h,r1h"
+gdb_test "x" "add.b\tr3h,@er1" \
+       "add.b r3h,@er1"
+gdb_test "x" "add.b\tr3h,@\\(0x3(:2|),er1\\)" \
+       "add.b r3h,@(0x3:2,er1)"
+gdb_test "x" "add.b\tr3h,@er1\\+" \
+       "add.b r3h,@er1+"
+gdb_test "x" "add.b\tr3h,@-er1" \
+       "add.b r3h,@-er1"
+gdb_test "x" "add.b\tr3h,@\\+er1" \
+       "add.b r3h,@+er1"
+gdb_test "x" "add.b\tr3h,@er1-" \
+       "add.b r3h,@er1-"
+gdb_test "x" "add.b\tr3h,@\\(0x1234(:16|),er1\\)" \
+       "add.b r3h,@(0x1234:16,er1)"
+gdb_test "x" "add.b\tr3h,@\\(0x12345678(:32|),er1\\)" \
+       "add.b r3h,@(0x12345678:32,er1)"
+gdb_test "x" "add.b\tr3h,@\\(0x1234(:16|),r2l.b\\)" \
+       "add.b r3h,@(0x1234:16,r2l.b)"
+gdb_test "x" "add.b\tr3h,@\\(0x1234(:16|),r2.w\\)" \
+       "add.b r3h,@(0x1234:16,r2.w)"
+gdb_test "x" "add.b\tr3h,@\\(0x1234(:16|),er2.l\\)" \
+       "add.b r3h,@(0x1234:16,er2.l)"
+gdb_test "x" "add.b\tr3h,@\\(0x12345678(:32|),r2l.b\\)" \
+       "add.b r3h,@(0x12345678:32,r2l.b)"
+gdb_test "x" "add.b\tr3h,@\\(0x12345678(:32|),r2.w\\)" \
+       "add.b r3h,@(0x12345678:32,r2.w)"
+gdb_test "x" "add.b\tr3h,@\\(0x12345678(:32|),er2.l\\)" \
+       "add.b r3h,@(0x12345678:32,er2.l)"
+gdb_test "x" "add.b\tr3h,@0x12(:8|)" \
+       "add.b r3h,@0x12:8"
+gdb_test "x" "add.b\tr3h,@0x1234(:16|)" \
+       "add.b r3h,@0x1234:16"
+gdb_test "x" "add.b\tr3h,@0x12345678(:32|)" \
+       "add.b r3h,@0x12345678:32"
+gdb_test "x" "add.b\t@er3,r1h" \
+       "add.b @er3,r1h"
+gdb_test "x" "add.b\t@\\(0x3(:2|),er3\\),r1h" \
+       "add.b @(0x3:2,er3),r1h"
+gdb_test "x" "add.b\t@er3\\+,r1h" \
+       "add.b @er3+,r1h"
+gdb_test "x" "add.b\t@-er3,r1h" \
+       "add.b @-er3,r1h"
+gdb_test "x" "add.b\t@\\+er3,r1h" \
+       "add.b @+er3,r1h"
+gdb_test "x" "add.b\t@er3-,r1h" \
+       "add.b @er3-,r1h"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er1\\),r1h" \
+       "add.b @(0x1234:16,er1),r1h"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er1\\),r1h" \
+       "add.b @(0x12345678:32,er1),r1h"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r2l.b\\),r1h" \
+       "add.b @(0x1234:16,r2l.b),r1h"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r2.w\\),r1h" \
+       "add.b @(0x1234:16,r2.w),r1h"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er2.l\\),r1h" \
+       "add.b @(0x1234:16,er2.l),r1h"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r2l.b\\),r1h" \
+       "add.b @(0x12345678:32,r2l.b),r1h"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r2.w\\),r1h" \
+       "add.b @(0x12345678:32,r2.w),r1h"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er2.l\\),r1h" \
+       "add.b @(0x12345678:32,er2.l),r1h"
+gdb_test "x" "add.b\t@0x12(:8|),r1h" \
+       "add.b @0x12:8,r1h"
+gdb_test "x" "add.b\t@0x1234(:16|),r1h" \
+       "add.b @0x1234:16,r1h"
+gdb_test "x" "add.b\t@0x12345678(:32|),r1h" \
+       "add.b @0x12345678:32,r1h"
+gdb_test "x" "add.b\t@er3,@er1" \
+       "add.b @er3,@er1"
+gdb_test "x" "add.b\t@er3,@\\(0x3(:2|),er1\\)" \
+       "add.b @er3,@(0x3:2,er1)"
+gdb_test "x" "add.b\t@er3,@-er1" \
+       "add.b @er3,@-er1"
+gdb_test "x" "add.b\t@er3,@er1\\+" \
+       "add.b @er3,@er1+"
+gdb_test "x" "add.b\t@er3,@er1-" \
+       "add.b @er3,@er1-"
+gdb_test "x" "add.b\t@er3,@\\+er1" \
+       "add.b @er3,@+er1"
+gdb_test "x" "add.b\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.b @er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@er3,@0x9abc(:16|)" \
+       "add.b @er3,@0x9abc:16"
+gdb_test "x" "add.b\t@er3,@0x9abcdef0(:32|)" \
+       "add.b @er3,@0x9abcdef0:32"
+gdb_test "x" "add.b\t@-er3,@er1" \
+       "add.b @-er3,@er1"
+gdb_test "x" "add.b\t@-er3,@\\(0x3(:2|),er1\\)" \
+       "add.b @-er3,@(0x3:2,er1)"
+gdb_test "x" "add.b\t@-er3,@-er1" \
+       "add.b @-er3,@-er1"
+gdb_test "x" "add.b\t@-er3,@er1\\+" \
+       "add.b @-er3,@er1+"
+gdb_test "x" "add.b\t@-er3,@er1-" \
+       "add.b @-er3,@er1-"
+gdb_test "x" "add.b\t@-er3,@\\+er1" \
+       "add.b @-er3,@+er1"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.b @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@-er3,@0x9abc(:16|)" \
+       "add.b @-er3,@0x9abc:16"
+gdb_test "x" "add.b\t@-er3,@0x9abcdef0(:32|)" \
+       "add.b @-er3,@0x9abcdef0:32"
+gdb_test "x" "add.b\t@er3\\+,@er1" \
+       "add.b @er3+,@er1"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x3(:2|),er1\\)" \
+       "add.b @er3+,@(0x3:2,er1)"
+gdb_test "x" "add.b\t@er3\\+,@-er1" \
+       "add.b @er3+,@-er1"
+gdb_test "x" "add.b\t@er3\\+,@er1\\+" \
+       "add.b @er3+,@er1+"
+gdb_test "x" "add.b\t@er3\\+,@er1-" \
+       "add.b @er3+,@er1-"
+gdb_test "x" "add.b\t@er3\\+,@\\+er1" \
+       "add.b @er3+,@+er1"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "add.b @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@er3\\+,@0x9abc(:16|)" \
+       "add.b @er3+,@0x9abc:16"
+gdb_test "x" "add.b\t@er3\\+,@0x9abcdef0(:32|)" \
+       "add.b @er3+,@0x9abcdef0:32"
+gdb_test "x" "add.b\t@er3-,@er1" \
+       "add.b @er3-,@er1"
+gdb_test "x" "add.b\t@er3-,@\\(0x3(:2|),er1\\)" \
+       "add.b @er3-,@(0x3:2,er1)"
+gdb_test "x" "add.b\t@er3-,@-er1" \
+       "add.b @er3-,@-er1"
+gdb_test "x" "add.b\t@er3-,@er1\\+" \
+       "add.b @er3-,@er1+"
+gdb_test "x" "add.b\t@er3-,@er1-" \
+       "add.b @er3-,@er1-"
+gdb_test "x" "add.b\t@er3-,@\\+er1" \
+       "add.b @er3-,@+er1"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "add.b @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@er3-,@0x9abc(:16|)" \
+       "add.b @er3-,@0x9abc:16"
+gdb_test "x" "add.b\t@er3-,@0x9abcdef0(:32|)" \
+       "add.b @er3-,@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\+er3,@er1" \
+       "add.b @+er3,@er1"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x3(:2|),er1\\)" \
+       "add.b @+er3,@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\+er3,@-er1" \
+       "add.b @+er3,@-er1"
+gdb_test "x" "add.b\t@\\+er3,@er1\\+" \
+       "add.b @+er3,@er1+"
+gdb_test "x" "add.b\t@\\+er3,@er1-" \
+       "add.b @+er3,@er1-"
+gdb_test "x" "add.b\t@\\+er3,@\\+er1" \
+       "add.b @+er3,@+er1"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.b @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\+er3,@0x9abc(:16|)" \
+       "add.b @+er3,@0x9abc:16"
+gdb_test "x" "add.b\t@\\+er3,@0x9abcdef0(:32|)" \
+       "add.b @+er3,@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@er1" \
+       "add.b @(0x1234:16,er3),@er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x1234:16,er3),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "add.b @(0x1234:16,er3),@-er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "add.b @(0x1234:16,er3),@er1+"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "add.b @(0x1234:16,er3),@er1-"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "add.b @(0x1234:16,er3),@+er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "add.b @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "add.b @(0x12345678:32,er3),@er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x12345678:32,er3),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "add.b @(0x12345678:32,er3),@-er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "add.b @(0x12345678:32,er3),@er1+"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "add.b @(0x12345678:32,er3),@er1-"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "add.b @(0x12345678:32,er3),@+er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "add.b @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "add.b @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "add.b @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "add.b @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "add.b @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "add.b @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "add.b @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "add.b @(0x1234:16,r3.w),@er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "add.b @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "add.b @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "add.b @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "add.b @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "add.b @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "add.b @(0x1234:16,er3.l),@er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "add.b @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "add.b @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "add.b @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "add.b @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "add.b @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "add.b @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "add.b @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "add.b @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "add.b @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "add.b @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "add.b @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "add.b @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "add.b @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "add.b @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "add.b @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "add.b @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "add.b @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "add.b @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x3:2,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "add.b @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "add.b @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "add.b @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "add.b @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "add.b @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "add.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "add.b @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "add.b\t@0x1234(:16|),@er1" \
+       "add.b @0x1234:16,@er1"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x3(:2|),er1\\)" \
+       "add.b @0x1234:16,@(0x3:2,er1)"
+gdb_test "x" "add.b\t@0x1234(:16|),@-er1" \
+       "add.b @0x1234:16,@-er1"
+gdb_test "x" "add.b\t@0x1234(:16|),@er1\\+" \
+       "add.b @0x1234:16,@er1+"
+gdb_test "x" "add.b\t@0x1234(:16|),@er1-" \
+       "add.b @0x1234:16,@er1-"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\+er1" \
+       "add.b @0x1234:16,@+er1"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@0x1234(:16|),@0x9abc(:16|)" \
+       "add.b @0x1234:16,@0x9abc:16"
+gdb_test "x" "add.b\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "add.b @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "add.b\t@0x12345678(:32|),@er1" \
+       "add.b @0x12345678:32,@er1"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x3(:2|),er1\\)" \
+       "add.b @0x12345678:32,@(0x3:2,er1)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@-er1" \
+       "add.b @0x12345678:32,@-er1"
+gdb_test "x" "add.b\t@0x12345678(:32|),@er1\\+" \
+       "add.b @0x12345678:32,@er1+"
+gdb_test "x" "add.b\t@0x12345678(:32|),@er1-" \
+       "add.b @0x12345678:32,@er1-"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\+er1" \
+       "add.b @0x12345678:32,@+er1"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "add.b @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.b @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.b @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.b @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.b @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.b @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.b @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.b\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "add.b @0x12345678:32,@0x9abc:16"
+gdb_test "x" "add.b\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "add.b @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "add.w\t#0x1234(:16|),r1" \
+       "add.w #0x1234:16,r1"
+gdb_test "x" "add.w\t#0x7(:3|),r2" \
+       "add.w #0x7:3,r2"
+gdb_test "x" "add.w\t#0x1234(:16|),@er1" \
+       "add.w #0x1234:16,@er1"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "add.w #0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "add.w\t#0x1234(:16|),@er1\\+" \
+       "add.w #0x1234:16,@er1+"
+gdb_test "x" "add.w\t#0x1234(:16|),@-er1" \
+       "add.w #0x1234:16,@-er1"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\+er1" \
+       "add.w #0x1234:16,@+er1"
+gdb_test "x" "add.w\t#0x1234(:16|),@er1-" \
+       "add.w #0x1234:16,@er1-"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "add.w #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t#0x1234(:16|),@0x9abc(:16|)" \
+       "add.w #0x1234:16,@0x9abc:16"
+gdb_test "x" "add.w\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "add.w #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "add.w\t#0x7(:3|),@er1" \
+       "add.w #0x7:3,@er1"
+gdb_test "x" "add.w\t#0x7(:3|),@0x1234(:16|)" \
+       "add.w #0x7:3,@0x1234:16"
+gdb_test "x" "add.w\t#0x7(:3|),@0x12345678(:32|)" \
+       "add.w #0x7:3,@0x12345678:32"
+gdb_test "x" "add.w\tr3,r1" \
+       "add.w r3,r1"
+gdb_test "x" "add.w\tr3,@er1" \
+       "add.w r3,@er1"
+gdb_test "x" "add.w\tr3,@\\(0x6(:2|),er1\\)" \
+       "add.w r3,@(0x6:2,er1)"
+gdb_test "x" "add.w\tr3,@er1\\+" \
+       "add.w r3,@er1+"
+gdb_test "x" "add.w\tr3,@-er1" \
+       "add.w r3,@-er1"
+gdb_test "x" "add.w\tr3,@\\+er1" \
+       "add.w r3,@+er1"
+gdb_test "x" "add.w\tr3,@er1-" \
+       "add.w r3,@er1-"
+gdb_test "x" "add.w\tr3,@\\(0x1234(:16|),er1\\)" \
+       "add.w r3,@(0x1234:16,er1)"
+gdb_test "x" "add.w\tr3,@\\(0x12345678(:32|),er1\\)" \
+       "add.w r3,@(0x12345678:32,er1)"
+gdb_test "x" "add.w\tr3,@\\(0x1234(:16|),r2l.b\\)" \
+       "add.w r3,@(0x1234:16,r2l.b)"
+gdb_test "x" "add.w\tr3,@\\(0x1234(:16|),r2.w\\)" \
+       "add.w r3,@(0x1234:16,r2.w)"
+gdb_test "x" "add.w\tr3,@\\(0x1234(:16|),er2.l\\)" \
+       "add.w r3,@(0x1234:16,er2.l)"
+gdb_test "x" "add.w\tr3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "add.w r3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "add.w\tr3,@\\(0x12345678(:32|),r2.w\\)" \
+       "add.w r3,@(0x12345678:32,r2.w)"
+gdb_test "x" "add.w\tr3,@\\(0x12345678(:32|),er2.l\\)" \
+       "add.w r3,@(0x12345678:32,er2.l)"
+gdb_test "x" "add.w\tr3,@0x1234(:16|)" \
+       "add.w r3,@0x1234:16"
+gdb_test "x" "add.w\tr3,@0x12345678(:32|)" \
+       "add.w r3,@0x12345678:32"
+gdb_test "x" "add.w\t@er3,r1" \
+       "add.w @er3,r1"
+gdb_test "x" "add.w\t@\\(0x6(:2|),er1\\),r1" \
+       "add.w @(0x6:2,er1),r1"
+gdb_test "x" "add.w\t@er3\\+,r1" \
+       "add.w @er3+,r1"
+gdb_test "x" "add.w\t@-er3,r1" \
+       "add.w @-er3,r1"
+gdb_test "x" "add.w\t@\\+er3,r1" \
+       "add.w @+er3,r1"
+gdb_test "x" "add.w\t@er3-,r1" \
+       "add.w @er3-,r1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er1\\),r1" \
+       "add.w @(0x1234:16,er1),r1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er1\\),r1" \
+       "add.w @(0x12345678:32,er1),r1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r2l.b\\),r1" \
+       "add.w @(0x1234:16,r2l.b),r1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r2.w\\),r1" \
+       "add.w @(0x1234:16,r2.w),r1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er2.l\\),r1" \
+       "add.w @(0x1234:16,er2.l),r1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r2l.b\\),r1" \
+       "add.w @(0x12345678:32,r2l.b),r1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r2.w\\),r1" \
+       "add.w @(0x12345678:32,r2.w),r1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er2.l\\),r1" \
+       "add.w @(0x12345678:32,er2.l),r1"
+gdb_test "x" "add.w\t@0x1234(:16|),r1" \
+       "add.w @0x1234:16,r1"
+gdb_test "x" "add.w\t@0x12345678(:32|),r1" \
+       "add.w @0x12345678:32,r1"
+gdb_test "x" "add.w\t@er3,@er1" \
+       "add.w @er3,@er1"
+gdb_test "x" "add.w\t@er3,@\\(0x6(:2|),er1\\)" \
+       "add.w @er3,@(0x6:2,er1)"
+gdb_test "x" "add.w\t@er3,@-er1" \
+       "add.w @er3,@-er1"
+gdb_test "x" "add.w\t@er3,@er1\\+" \
+       "add.w @er3,@er1+"
+gdb_test "x" "add.w\t@er3,@er1-" \
+       "add.w @er3,@er1-"
+gdb_test "x" "add.w\t@er3,@\\+er1" \
+       "add.w @er3,@+er1"
+gdb_test "x" "add.w\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.w @er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@er3,@0x9abc(:16|)" \
+       "add.w @er3,@0x9abc:16"
+gdb_test "x" "add.w\t@er3,@0x9abcdef0(:32|)" \
+       "add.w @er3,@0x9abcdef0:32"
+gdb_test "x" "add.w\t@-er3,@er1" \
+       "add.w @-er3,@er1"
+gdb_test "x" "add.w\t@-er3,@\\(0x6(:2|),er1\\)" \
+       "add.w @-er3,@(0x6:2,er1)"
+gdb_test "x" "add.w\t@-er3,@-er1" \
+       "add.w @-er3,@-er1"
+gdb_test "x" "add.w\t@-er3,@er1\\+" \
+       "add.w @-er3,@er1+"
+gdb_test "x" "add.w\t@-er3,@er1-" \
+       "add.w @-er3,@er1-"
+gdb_test "x" "add.w\t@-er3,@\\+er1" \
+       "add.w @-er3,@+er1"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.w @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@-er3,@0x9abc(:16|)" \
+       "add.w @-er3,@0x9abc:16"
+gdb_test "x" "add.w\t@-er3,@0x9abcdef0(:32|)" \
+       "add.w @-er3,@0x9abcdef0:32"
+gdb_test "x" "add.w\t@er3\\+,@er1" \
+       "add.w @er3+,@er1"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x6(:2|),er1\\)" \
+       "add.w @er3+,@(0x6:2,er1)"
+gdb_test "x" "add.w\t@er3\\+,@-er1" \
+       "add.w @er3+,@-er1"
+gdb_test "x" "add.w\t@er3\\+,@er1\\+" \
+       "add.w @er3+,@er1+"
+gdb_test "x" "add.w\t@er3\\+,@er1-" \
+       "add.w @er3+,@er1-"
+gdb_test "x" "add.w\t@er3\\+,@\\+er1" \
+       "add.w @er3+,@+er1"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "add.w @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@er3\\+,@0x9abc(:16|)" \
+       "add.w @er3+,@0x9abc:16"
+gdb_test "x" "add.w\t@er3\\+,@0x9abcdef0(:32|)" \
+       "add.w @er3+,@0x9abcdef0:32"
+gdb_test "x" "add.w\t@er3-,@er1" \
+       "add.w @er3-,@er1"
+gdb_test "x" "add.w\t@er3-,@\\(0x6(:2|),er1\\)" \
+       "add.w @er3-,@(0x6:2,er1)"
+gdb_test "x" "add.w\t@er3-,@-er1" \
+       "add.w @er3-,@-er1"
+gdb_test "x" "add.w\t@er3-,@er1\\+" \
+       "add.w @er3-,@er1+"
+gdb_test "x" "add.w\t@er3-,@er1-" \
+       "add.w @er3-,@er1-"
+gdb_test "x" "add.w\t@er3-,@\\+er1" \
+       "add.w @er3-,@+er1"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "add.w @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@er3-,@0x9abc(:16|)" \
+       "add.w @er3-,@0x9abc:16"
+gdb_test "x" "add.w\t@er3-,@0x9abcdef0(:32|)" \
+       "add.w @er3-,@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\+er3,@er1" \
+       "add.w @+er3,@er1"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x6(:2|),er1\\)" \
+       "add.w @+er3,@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\+er3,@-er1" \
+       "add.w @+er3,@-er1"
+gdb_test "x" "add.w\t@\\+er3,@er1\\+" \
+       "add.w @+er3,@er1+"
+gdb_test "x" "add.w\t@\\+er3,@er1-" \
+       "add.w @+er3,@er1-"
+gdb_test "x" "add.w\t@\\+er3,@\\+er1" \
+       "add.w @+er3,@+er1"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.w @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\+er3,@0x9abc(:16|)" \
+       "add.w @+er3,@0x9abc:16"
+gdb_test "x" "add.w\t@\\+er3,@0x9abcdef0(:32|)" \
+       "add.w @+er3,@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@er1" \
+       "add.w @(0x1234:16,er3),@er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x1234:16,er3),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "add.w @(0x1234:16,er3),@-er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "add.w @(0x1234:16,er3),@er1+"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "add.w @(0x1234:16,er3),@er1-"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "add.w @(0x1234:16,er3),@+er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "add.w @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "add.w @(0x12345678:32,er3),@er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x12345678:32,er3),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "add.w @(0x12345678:32,er3),@-er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "add.w @(0x12345678:32,er3),@er1+"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "add.w @(0x12345678:32,er3),@er1-"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "add.w @(0x12345678:32,er3),@+er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "add.w @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "add.w @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "add.w @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "add.w @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "add.w @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "add.w @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "add.w @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "add.w @(0x1234:16,r3.w),@er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "add.w @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "add.w @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "add.w @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "add.w @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "add.w @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "add.w @(0x1234:16,er3.l),@er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "add.w @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "add.w @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "add.w @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "add.w @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "add.w @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "add.w @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "add.w @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "add.w @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "add.w @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "add.w @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "add.w @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "add.w @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "add.w @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "add.w @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "add.w @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "add.w @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "add.w @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "add.w @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x6:2,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "add.w @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "add.w @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "add.w @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "add.w @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "add.w @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "add.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "add.w @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "add.w\t@0x1234(:16|),@er1" \
+       "add.w @0x1234:16,@er1"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "add.w @0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "add.w\t@0x1234(:16|),@-er1" \
+       "add.w @0x1234:16,@-er1"
+gdb_test "x" "add.w\t@0x1234(:16|),@er1\\+" \
+       "add.w @0x1234:16,@er1+"
+gdb_test "x" "add.w\t@0x1234(:16|),@er1-" \
+       "add.w @0x1234:16,@er1-"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\+er1" \
+       "add.w @0x1234:16,@+er1"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@0x1234(:16|),@0x9abc(:16|)" \
+       "add.w @0x1234:16,@0x9abc:16"
+gdb_test "x" "add.w\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "add.w @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "add.w\t@0x12345678(:32|),@er1" \
+       "add.w @0x12345678:32,@er1"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x6(:2|),er1\\)" \
+       "add.w @0x12345678:32,@(0x6:2,er1)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@-er1" \
+       "add.w @0x12345678:32,@-er1"
+gdb_test "x" "add.w\t@0x12345678(:32|),@er1\\+" \
+       "add.w @0x12345678:32,@er1+"
+gdb_test "x" "add.w\t@0x12345678(:32|),@er1-" \
+       "add.w @0x12345678:32,@er1-"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\+er1" \
+       "add.w @0x12345678:32,@+er1"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "add.w @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.w @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.w @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.w @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.w @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.w @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.w @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.w\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "add.w @0x12345678:32,@0x9abc:16"
+gdb_test "x" "add.w\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "add.w @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "add.l\t#0x12345678(:32|),er1" \
+       "add.l #0x12345678:32,er1"
+gdb_test "x" "add.l\t#0x1234(:16|),er1" \
+       "add.l #0x1234:16,er1"
+gdb_test "x" "add.l\t#0x7(:3|),er2" \
+       "add.l #0x7:3,er2"
+gdb_test "x" "add.l\t#0x12345678(:32|),@er1" \
+       "add.l #0x12345678:32,@er1"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "add.l #0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@er1\\+" \
+       "add.l #0x12345678:32,@er1+"
+gdb_test "x" "add.l\t#0x12345678(:32|),@-er1" \
+       "add.l #0x12345678:32,@-er1"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\+er1" \
+       "add.l #0x12345678:32,@+er1"
+gdb_test "x" "add.l\t#0x12345678(:32|),@er1-" \
+       "add.l #0x12345678:32,@er1-"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "add.l #0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l #0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l #0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l #0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l #0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l #0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l #0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t#0x12345678(:32|),@0x9abc(:16|)" \
+       "add.l #0x12345678:32,@0x9abc:16"
+gdb_test "x" "add.l\t#0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "add.l #0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "add.l\t#0x1234(:16|),@er1" \
+       "add.l #0x1234:16,@er1"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "add.l #0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "add.l\t#0x1234(:16|),@er1\\+" \
+       "add.l #0x1234:16,@er1+"
+gdb_test "x" "add.l\t#0x1234(:16|),@-er1" \
+       "add.l #0x1234:16,@-er1"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\+er1" \
+       "add.l #0x1234:16,@+er1"
+gdb_test "x" "add.l\t#0x1234(:16|),@er1-" \
+       "add.l #0x1234:16,@er1-"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "add.l #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t#0x1234(:16|),@0x9abc(:16|)" \
+       "add.l #0x1234:16,@0x9abc:16"
+gdb_test "x" "add.l\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "add.l #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "add.l\ter3,er1" \
+       "add.l er3,er1"
+gdb_test "x" "add.l\ter3,@er1" \
+       "add.l er3,@er1"
+gdb_test "x" "add.l\ter3,@\\(0xc(:2|),er1\\)" \
+       "add.l er3,@(0xc:2,er1)"
+gdb_test "x" "add.l\ter3,@er1\\+" \
+       "add.l er3,@er1+"
+gdb_test "x" "add.l\ter3,@-er1" \
+       "add.l er3,@-er1"
+gdb_test "x" "add.l\ter3,@\\+er1" \
+       "add.l er3,@+er1"
+gdb_test "x" "add.l\ter3,@er1-" \
+       "add.l er3,@er1-"
+gdb_test "x" "add.l\ter3,@\\(0x1234(:16|),er1\\)" \
+       "add.l er3,@(0x1234:16,er1)"
+gdb_test "x" "add.l\ter3,@\\(0x12345678(:32|),er1\\)" \
+       "add.l er3,@(0x12345678:32,er1)"
+gdb_test "x" "add.l\ter3,@\\(0x1234(:16|),r2l.b\\)" \
+       "add.l er3,@(0x1234:16,r2l.b)"
+gdb_test "x" "add.l\ter3,@\\(0x1234(:16|),r2.w\\)" \
+       "add.l er3,@(0x1234:16,r2.w)"
+gdb_test "x" "add.l\ter3,@\\(0x1234(:16|),er2.l\\)" \
+       "add.l er3,@(0x1234:16,er2.l)"
+gdb_test "x" "add.l\ter3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "add.l er3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "add.l\ter3,@\\(0x12345678(:32|),r2.w\\)" \
+       "add.l er3,@(0x12345678:32,r2.w)"
+gdb_test "x" "add.l\ter3,@\\(0x12345678(:32|),er2.l\\)" \
+       "add.l er3,@(0x12345678:32,er2.l)"
+gdb_test "x" "add.l\ter3,@0x1234(:16|)" \
+       "add.l er3,@0x1234:16"
+gdb_test "x" "add.l\ter3,@0x12345678(:32|)" \
+       "add.l er3,@0x12345678:32"
+gdb_test "x" "add.l\t@er3,er1" \
+       "add.l @er3,er1"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),er1" \
+       "add.l @(0xc:2,er3),er1"
+gdb_test "x" "add.l\t@er3\\+,er1" \
+       "add.l @er3+,er1"
+gdb_test "x" "add.l\t@-er3,er1" \
+       "add.l @-er3,er1"
+gdb_test "x" "add.l\t@\\+er3,er1" \
+       "add.l @+er3,er1"
+gdb_test "x" "add.l\t@er3-,er1" \
+       "add.l @er3-,er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er1\\),er1" \
+       "add.l @(0x1234:16,er1),er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er1\\),er1" \
+       "add.l @(0x12345678:32,er1),er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r2l.b\\),er1" \
+       "add.l @(0x1234:16,r2l.b),er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r2.w\\),er1" \
+       "add.l @(0x1234:16,r2.w),er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er2.l\\),er1" \
+       "add.l @(0x1234:16,er2.l),er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r2l.b\\),er1" \
+       "add.l @(0x12345678:32,r2l.b),er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r2.w\\),er1" \
+       "add.l @(0x12345678:32,r2.w),er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er2.l\\),er1" \
+       "add.l @(0x12345678:32,er2.l),er1"
+gdb_test "x" "add.l\t@0x1234(:16|),er1" \
+       "add.l @0x1234:16,er1"
+gdb_test "x" "add.l\t@0x12345678(:32|),er1" \
+       "add.l @0x12345678:32,er1"
+gdb_test "x" "add.l\t@er3,@er1" \
+       "add.l @er3,@er1"
+gdb_test "x" "add.l\t@er3,@\\(0xc(:2|),er1\\)" \
+       "add.l @er3,@(0xc:2,er1)"
+gdb_test "x" "add.l\t@er3,@-er1" \
+       "add.l @er3,@-er1"
+gdb_test "x" "add.l\t@er3,@er1\\+" \
+       "add.l @er3,@er1+"
+gdb_test "x" "add.l\t@er3,@er1-" \
+       "add.l @er3,@er1-"
+gdb_test "x" "add.l\t@er3,@\\+er1" \
+       "add.l @er3,@+er1"
+gdb_test "x" "add.l\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.l @er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@er3,@0x9abc(:16|)" \
+       "add.l @er3,@0x9abc:16"
+gdb_test "x" "add.l\t@er3,@0x9abcdef0(:32|)" \
+       "add.l @er3,@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@er1" \
+       "add.l @(0xc:2,er3),@er1"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0xc:2,er3),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@-er1" \
+       "add.l @(0xc:2,er3),@-er1"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@er1\\+" \
+       "add.l @(0xc:2,er3),@er1+"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@er1-" \
+       "add.l @(0xc:2,er3),@er1-"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\+er1" \
+       "add.l @(0xc:2,er3),@+er1"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0xc:2,er3),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0xc:2,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0xc:2,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0xc:2,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0xc:2,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@0x9abc(:16|)" \
+       "add.l @(0xc:2,er3),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0xc(:2|),er3\\),@0x9abcdef0(:32|)" \
+       "add.l @(0xc:2,er3),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@-er3,@er1" \
+       "add.l @-er3,@er1"
+gdb_test "x" "add.l\t@-er3,@\\(0xc(:2|),er1\\)" \
+       "add.l @-er3,@(0xc:2,er1)"
+gdb_test "x" "add.l\t@-er3,@-er1" \
+       "add.l @-er3,@-er1"
+gdb_test "x" "add.l\t@-er3,@er1\\+" \
+       "add.l @-er3,@er1+"
+gdb_test "x" "add.l\t@-er3,@er1-" \
+       "add.l @-er3,@er1-"
+gdb_test "x" "add.l\t@-er3,@\\+er1" \
+       "add.l @-er3,@+er1"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.l @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@-er3,@0x9abc(:16|)" \
+       "add.l @-er3,@0x9abc:16"
+gdb_test "x" "add.l\t@-er3,@0x9abcdef0(:32|)" \
+       "add.l @-er3,@0x9abcdef0:32"
+gdb_test "x" "add.l\t@er3\\+,@er1" \
+       "add.l @er3+,@er1"
+gdb_test "x" "add.l\t@er3\\+,@\\(0xc(:2|),er1\\)" \
+       "add.l @er3+,@(0xc:2,er1)"
+gdb_test "x" "add.l\t@er3\\+,@-er1" \
+       "add.l @er3+,@-er1"
+gdb_test "x" "add.l\t@er3\\+,@er1\\+" \
+       "add.l @er3+,@er1+"
+gdb_test "x" "add.l\t@er3\\+,@er1-" \
+       "add.l @er3+,@er1-"
+gdb_test "x" "add.l\t@er3\\+,@\\+er1" \
+       "add.l @er3+,@+er1"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "add.l @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@er3\\+,@0x9abc(:16|)" \
+       "add.l @er3+,@0x9abc:16"
+gdb_test "x" "add.l\t@er3\\+,@0x9abcdef0(:32|)" \
+       "add.l @er3+,@0x9abcdef0:32"
+gdb_test "x" "add.l\t@er3-,@er1" \
+       "add.l @er3-,@er1"
+gdb_test "x" "add.l\t@er3-,@\\(0xc(:2|),er1\\)" \
+       "add.l @er3-,@(0xc:2,er1)"
+gdb_test "x" "add.l\t@er3-,@-er1" \
+       "add.l @er3-,@-er1"
+gdb_test "x" "add.l\t@er3-,@er1\\+" \
+       "add.l @er3-,@er1+"
+gdb_test "x" "add.l\t@er3-,@er1-" \
+       "add.l @er3-,@er1-"
+gdb_test "x" "add.l\t@er3-,@\\+er1" \
+       "add.l @er3-,@+er1"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "add.l @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@er3-,@0x9abc(:16|)" \
+       "add.l @er3-,@0x9abc:16"
+gdb_test "x" "add.l\t@er3-,@0x9abcdef0(:32|)" \
+       "add.l @er3-,@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\+er3,@er1" \
+       "add.l @+er3,@er1"
+gdb_test "x" "add.l\t@\\+er3,@\\(0xc(:2|),er1\\)" \
+       "add.l @+er3,@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\+er3,@-er1" \
+       "add.l @+er3,@-er1"
+gdb_test "x" "add.l\t@\\+er3,@er1\\+" \
+       "add.l @+er3,@er1+"
+gdb_test "x" "add.l\t@\\+er3,@er1-" \
+       "add.l @+er3,@er1-"
+gdb_test "x" "add.l\t@\\+er3,@\\+er1" \
+       "add.l @+er3,@+er1"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "add.l @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\+er3,@0x9abc(:16|)" \
+       "add.l @+er3,@0x9abc:16"
+gdb_test "x" "add.l\t@\\+er3,@0x9abcdef0(:32|)" \
+       "add.l @+er3,@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@er1" \
+       "add.l @(0x1234:16,er3),@er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x1234:16,er3),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "add.l @(0x1234:16,er3),@-er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "add.l @(0x1234:16,er3),@er1+"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "add.l @(0x1234:16,er3),@er1-"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "add.l @(0x1234:16,er3),@+er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "add.l @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "add.l @(0x12345678:32,er3),@er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x12345678:32,er3),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "add.l @(0x12345678:32,er3),@-er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "add.l @(0x12345678:32,er3),@er1+"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "add.l @(0x12345678:32,er3),@er1-"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "add.l @(0x12345678:32,er3),@+er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "add.l @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "add.l @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "add.l @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "add.l @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "add.l @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "add.l @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "add.l @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "add.l @(0x1234:16,r3.w),@er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x1234:16,r3.w),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "add.l @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "add.l @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "add.l @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "add.l @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "add.l @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "add.l @(0x1234:16,er3.l),@er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x1234:16,er3.l),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "add.l @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "add.l @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "add.l @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "add.l @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "add.l @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "add.l @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "add.l @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "add.l @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "add.l @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "add.l @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "add.l @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "add.l @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "add.l @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "add.l @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "add.l @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "add.l @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "add.l @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "add.l @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0xc:2,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "add.l @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "add.l @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "add.l @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "add.l @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "add.l @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "add.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "add.l @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "add.l\t@0x1234(:16|),@er1" \
+       "add.l @0x1234:16,@er1"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "add.l @0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "add.l\t@0x1234(:16|),@-er1" \
+       "add.l @0x1234:16,@-er1"
+gdb_test "x" "add.l\t@0x1234(:16|),@er1\\+" \
+       "add.l @0x1234:16,@er1+"
+gdb_test "x" "add.l\t@0x1234(:16|),@er1-" \
+       "add.l @0x1234:16,@er1-"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\+er1" \
+       "add.l @0x1234:16,@+er1"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@0x1234(:16|),@0x9abc(:16|)" \
+       "add.l @0x1234:16,@0x9abc:16"
+gdb_test "x" "add.l\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "add.l @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "add.l\t@0x12345678(:32|),@er1" \
+       "add.l @0x12345678:32,@er1"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "add.l @0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@-er1" \
+       "add.l @0x12345678:32,@-er1"
+gdb_test "x" "add.l\t@0x12345678(:32|),@er1\\+" \
+       "add.l @0x12345678:32,@er1+"
+gdb_test "x" "add.l\t@0x12345678(:32|),@er1-" \
+       "add.l @0x12345678:32,@er1-"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\+er1" \
+       "add.l @0x12345678:32,@+er1"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "add.l @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "add.l @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "add.l @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "add.l @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "add.l @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "add.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "add.l @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "add.l @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "add.l\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "add.l @0x12345678:32,@0x9abc:16"
+gdb_test "x" "add.l\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "add.l @0x12345678:32,@0x9abcdef0:32"
diff --git a/gdb/testsuite/gdb.disasm/t03_add.s b/gdb/testsuite/gdb.disasm/t03_add.s
new file mode 100644 (file)
index 0000000..a20aded
--- /dev/null
@@ -0,0 +1,978 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;arith_1\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    add.b #0x12:8,r1h                            ;8112\r
+    add.b #0x12:8,@er1                           ;7d108012\r
+    add.b #0x12:8,@(0x3:2,er1)               ;017768188012\r
+    add.b #0x12:8,@er1+                      ;01746c188012\r
+    add.b #0x12:8,@-er1                      ;01776c188012\r
+    add.b #0x12:8,@+er1                      ;01756c188012\r
+    add.b #0x12:8,@er1-                      ;01766c188012\r
+    add.b #0x12:8,@(0x1234:16,er1)           ;01746e1812348012\r
+    add.b #0x12:8,@(0x12345678:32,er1)       ;78146a28123456788012\r
+    add.b #0x12:8,@(0x1234:16,r2l.b)         ;01756e2812348012\r
+    add.b #0x12:8,@(0x1234:16,r2.w)         ;01766e2812348012\r
+    add.b #0x12:8,@(0x1234:16,er2.l)         ;01776e2812348012\r
+    add.b #0x12:8,@(0x12345678:32,r2l.b)     ;78256a28123456788012\r
+    add.b #0x12:8,@(0x12345678:32,r2.w)     ;78266a28123456788012\r
+    add.b #0x12:8,@(0x12345678:32,er2.l)     ;78276a28123456788012\r
+    add.b #0x12:8,@0xffffff9a:8                  ;7f9a8012\r
+    add.b #0x12:8,@0x1234:16                     ;6a1812348012\r
+    add.b #0x12:8,@0x12345678:32                 ;6a38123456788012\r
+\r
+    add.b r3h,r1h                                ;0831\r
+\r
+    add.b r3h,@er1                               ;7d100830\r
+    add.b r3h,@(0x3:2,er1)                   ;01793113\r
+    add.b r3h,@er1+                          ;01798113\r
+    add.b r3h,@-er1                          ;0179b113\r
+    add.b r3h,@+er1                          ;01799113\r
+    add.b r3h,@er1-                          ;0179a113\r
+    add.b r3h,@(0x1234:16,er1)               ;0179c1131234\r
+    add.b r3h,@(0x12345678:32,er1)           ;0179c91312345678\r
+    add.b r3h,@(0x1234:16,r2l.b)             ;0179d2131234\r
+    add.b r3h,@(0x1234:16,r2.w)             ;0179e2131234\r
+    add.b r3h,@(0x1234:16,er2.l)             ;0179f2131234\r
+    add.b r3h,@(0x12345678:32,r2l.b)         ;0179da1312345678\r
+    add.b r3h,@(0x12345678:32,r2.w)         ;0179ea1312345678\r
+    add.b r3h,@(0x12345678:32,er2.l)         ;0179fa1312345678\r
+    add.b r3h,@0xffffff12:8                      ;7f120830\r
+    add.b r3h,@0x1234:16                         ;6a1812340830\r
+    add.b r3h,@0x12345678:32                     ;6a38123456780830\r
+\r
+    add.b @er3,r1h                               ;7c300801\r
+    add.b @(0x3:2,er3),r1h                   ;017a3311\r
+    add.b @er3+,r1h                          ;017a8311\r
+    add.b @-er3,r1h                          ;017ab311\r
+    add.b @+er3,r1h                          ;017a9311\r
+    add.b @er3-,r1h                          ;017aa311\r
+    add.b @(0x1234:16,er1),r1h               ;017ac1111234\r
+    add.b @(0x12345678:32,er1),r1h           ;017ac91112345678\r
+    add.b @(0x1234:16,r2l.b),r1h             ;017ad2111234\r
+    add.b @(0x1234:16,r2.w),r1h             ;017ae2111234\r
+    add.b @(0x1234:16,er2.l),r1h             ;017af2111234\r
+    add.b @(0x12345678:32,r2l.b),r1h         ;017ada1112345678\r
+    add.b @(0x12345678:32,r2.w),r1h         ;017aea1112345678\r
+    add.b @(0x12345678:32,er2.l),r1h         ;017afa1112345678\r
+    add.b @0xffffff12:8,r1h                      ;7e120801\r
+    add.b @0x1234:16,r1h                         ;6a1012340801\r
+    add.b @0x12345678:32,r1h                     ;6a30123456780801\r
+\r
+    add.b @er3,@er1                                ;7c350110\r
+    add.b @er3,@(3:2,er1)                          ;7c353110\r
+    add.b @er3,@-er1                               ;7c35b110\r
+    add.b @er3,@er1+                               ;7c358110\r
+    add.b @er3,@er1-                               ;7c35a110\r
+    add.b @er3,@+er1                               ;7c359110\r
+    add.b @er3,@(0xffff9abc:16,er1)                ;7c35c1109abc\r
+    add.b @er3,@(0x9abcdef0:32,er1)                ;7c35c9109abcdef0\r
+    add.b @er3,@(0xffff9abc:16,r2l.b)              ;7c35d2109abc\r
+    add.b @er3,@(0xffff9abc:16,r2.w)              ;7c35e2109abc\r
+    add.b @er3,@(0xffff9abc:16,er2.l)              ;7c35f2109abc\r
+    add.b @er3,@(0x9abcdef0:32,r2l.b)              ;7c35da109abcdef0\r
+    add.b @er3,@(0x9abcdef0:32,r2.w)              ;7c35ea109abcdef0\r
+    add.b @er3,@(0x9abcdef0:32,er2.l)              ;7c35fa109abcdef0\r
+    add.b @er3,@0xffff9abc:16                      ;7c3540109abc\r
+    add.b @er3,@0x9abcdef0:32                      ;7c3548109abcdef0\r
+\r
+    add.b @-er3,@er1                               ;01776c3c0110\r
+    add.b @-er3,@(3:2,er1)                         ;01776c3c3110\r
+    add.b @-er3,@-er1                              ;01776c3cb110\r
+    add.b @-er3,@er1+                              ;01776c3c8110\r
+    add.b @-er3,@er1-                              ;01776c3ca110\r
+    add.b @-er3,@+er1                              ;01776c3c9110\r
+    add.b @-er3,@(0xffff9abc:16,er1)               ;01776c3cc1109abc\r
+    add.b @-er3,@(0x9abcdef0:32,er1)               ;01776c3cc9109abcdef0\r
+    add.b @-er3,@(0xffff9abc:16,r2l.b)             ;01776c3cd2109abc\r
+    add.b @-er3,@(0xffff9abc:16,r2.w)             ;01776c3ce2109abc\r
+    add.b @-er3,@(0xffff9abc:16,er2.l)             ;01776c3cf2109abc\r
+    add.b @-er3,@(0x9abcdef0:32,r2l.b)             ;01776c3cda109abcdef0\r
+    add.b @-er3,@(0x9abcdef0:32,r2.w)             ;01776c3cea109abcdef0\r
+    add.b @-er3,@(0x9abcdef0:32,er2.l)             ;01776c3cfa109abcdef0\r
+    add.b @-er3,@0xffff9abc:16                     ;01776c3c40109abc\r
+    add.b @-er3,@0x9abcdef0:32                     ;01776c3c48109abcdef0\r
+\r
+    add.b @er3+,@er1                               ;01746c3c0110\r
+    add.b @er3+,@(3:2,er1)                         ;01746c3c3110\r
+    add.b @er3+,@-er1                              ;01746c3cb110\r
+    add.b @er3+,@er1+                              ;01746c3c8110\r
+    add.b @er3+,@er1-                              ;01746c3ca110\r
+    add.b @er3+,@+er1                              ;01746c3c9110\r
+    add.b @er3+,@(0xffff9abc:16,er1)               ;01746c3cc1109abc\r
+    add.b @er3+,@(0x9abcdef0:32,er1)               ;01746c3cc9109abcdef0\r
+    add.b @er3+,@(0xffff9abc:16,r2l.b)             ;01746c3cd2109abc\r
+    add.b @er3+,@(0xffff9abc:16,r2.w)             ;01746c3ce2109abc\r
+    add.b @er3+,@(0xffff9abc:16,er2.l)             ;01746c3cf2109abc\r
+    add.b @er3+,@(0x9abcdef0:32,r2l.b)             ;01746c3cda109abcdef0\r
+    add.b @er3+,@(0x9abcdef0:32,r2.w)             ;01746c3cea109abcdef0\r
+    add.b @er3+,@(0x9abcdef0:32,er2.l)             ;01746c3cfa109abcdef0\r
+    add.b @er3+,@0xffff9abc:16                     ;01746c3c40109abc\r
+    add.b @er3+,@0x9abcdef0:32                     ;01746c3c48109abcdef0\r
+\r
+    add.b @er3-,@er1                               ;01766c3c0110\r
+    add.b @er3-,@(3:2,er1)                         ;01766c3c3110\r
+    add.b @er3-,@-er1                              ;01766c3cb110\r
+    add.b @er3-,@er1+                              ;01766c3c8110\r
+    add.b @er3-,@er1-                              ;01766c3ca110\r
+    add.b @er3-,@+er1                              ;01766c3c9110\r
+    add.b @er3-,@(0xffff9abc:16,er1)               ;01766c3cc1109abc\r
+    add.b @er3-,@(0x9abcdef0:32,er1)               ;01766c3cc9109abcdef0\r
+    add.b @er3-,@(0xffff9abc:16,r2l.b)             ;01766c3cd2109abc\r
+    add.b @er3-,@(0xffff9abc:16,r2.w)             ;01766c3ce2109abc\r
+    add.b @er3-,@(0xffff9abc:16,er2.l)             ;01766c3cf2109abc\r
+    add.b @er3-,@(0x9abcdef0:32,r2l.b)             ;01766c3cda109abcdef0\r
+    add.b @er3-,@(0x9abcdef0:32,r2.w)             ;01766c3cea109abcdef0\r
+    add.b @er3-,@(0x9abcdef0:32,er2.l)             ;01766c3cfa109abcdef0\r
+    add.b @er3-,@0xffff9abc:16                     ;01766c3c40109abc\r
+    add.b @er3-,@0x9abcdef0:32                     ;01766c3c48109abcdef0\r
+\r
+    add.b @+er3,@er1                               ;01756c3c0110\r
+    add.b @+er3,@(3:2,er1)                         ;01756c3c3110\r
+    add.b @+er3,@-er1                              ;01756c3cb110\r
+    add.b @+er3,@er1+                              ;01756c3c8110\r
+    add.b @+er3,@er1-                              ;01756c3ca110\r
+    add.b @+er3,@+er1                              ;01756c3c9110\r
+    add.b @+er3,@(0xffff9abc:16,er1)               ;01756c3cc1109abc\r
+    add.b @+er3,@(0x9abcdef0:32,er1)               ;01756c3cc9109abcdef0\r
+    add.b @+er3,@(0xffff9abc:16,r2l.b)             ;01756c3cd2109abc\r
+    add.b @+er3,@(0xffff9abc:16,r2.w)             ;01756c3ce2109abc\r
+    add.b @+er3,@(0xffff9abc:16,er2.l)             ;01756c3cf2109abc\r
+    add.b @+er3,@(0x9abcdef0:32,r2l.b)             ;01756c3cda109abcdef0\r
+    add.b @+er3,@(0x9abcdef0:32,r2.w)             ;01756c3cea109abcdef0\r
+    add.b @+er3,@(0x9abcdef0:32,er2.l)             ;01756c3cfa109abcdef0\r
+    add.b @+er3,@0xffff9abc:16                     ;01756c3c40109abc\r
+    add.b @+er3,@0x9abcdef0:32                     ;01756c3c48109abcdef0\r
+\r
+    add.b @(0x1234:16,er3),@er1                         ;01746e3c12340110\r
+    add.b @(0x1234:16,er3),@(3:2,er1)                   ;01746e3c12343110\r
+    add.b @(0x1234:16,er3),@-er1                        ;01746e3c1234b110\r
+    add.b @(0x1234:16,er3),@er1+                        ;01746e3c12348110\r
+    add.b @(0x1234:16,er3),@er1-                        ;01746e3c1234a110\r
+    add.b @(0x1234:16,er3),@+er1                        ;01746e3c12349110\r
+    add.b @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01746e3c1234c1109abc\r
+    add.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01746e3c1234c9109abcdef0\r
+    add.b @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01746e3c1234d2109abc\r
+    add.b @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01746e3c1234e2109abc\r
+    add.b @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01746e3c1234f2109abc\r
+    add.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01746e3c1234da109abcdef0\r
+    add.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01746e3c1234ea109abcdef0\r
+    add.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01746e3c1234fa109abcdef0\r
+    add.b @(0x1234:16,er3),@0xffff9abc:16               ;01746e3c123440109abc\r
+    add.b @(0x1234:16,er3),@0x9abcdef0:32               ;01746e3c123448109abcdef0\r
+\r
+    add.b @(0x12345678:32,er3),@er1                         ;78346a2c123456780110\r
+    add.b @(0x12345678:32,er3),@(3:2,er1)                   ;78346a2c123456783110\r
+    add.b @(0x12345678:32,er3),@-er1                        ;78346a2c12345678b110\r
+    add.b @(0x12345678:32,er3),@er1+                        ;78346a2c123456788110\r
+    add.b @(0x12345678:32,er3),@er1-                        ;78346a2c12345678a110\r
+    add.b @(0x12345678:32,er3),@+er1                        ;78346a2c123456789110\r
+    add.b @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346a2c12345678c1109abc\r
+    add.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346a2c12345678c9109abcdef0\r
+    add.b @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346a2c12345678d2109abc\r
+    add.b @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346a2c12345678e2109abc\r
+    add.b @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346a2c12345678f2109abc\r
+    add.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346a2c12345678da109abcdef0\r
+    add.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346a2c12345678ea109abcdef0\r
+    add.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346a2c12345678fa109abcdef0\r
+    add.b @(0x12345678:32,er3),@0xffff9abc:16               ;78346a2c1234567840109abc\r
+    add.b @(0x12345678:32,er3),@0x9abcdef0:32               ;78346a2c1234567848109abcdef0\r
+\r
+    add.b @(0x1234:16,r3l.b),@er1                       ;01756e3c12340110\r
+    add.b @(0x1234:16,r3l.b),@(3:2,er1)                 ;01756e3c12343110\r
+    add.b @(0x1234:16,r3l.b),@-er1                      ;01756e3c1234b110\r
+    add.b @(0x1234:16,r3l.b),@er1+                      ;01756e3c12348110\r
+    add.b @(0x1234:16,r3l.b),@er1-                      ;01756e3c1234a110\r
+    add.b @(0x1234:16,r3l.b),@+er1                      ;01756e3c12349110\r
+    add.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01756e3c1234c1109abc\r
+    add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01756e3c1234c9109abcdef0\r
+    add.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01756e3c1234d2109abc\r
+    add.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01756e3c1234e2109abc\r
+    add.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01756e3c1234f2109abc\r
+    add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01756e3c1234da109abcdef0\r
+    add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01756e3c1234ea109abcdef0\r
+    add.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01756e3c1234fa109abcdef0\r
+    add.b @(0x1234:16,r3l.b),@0xffff9abc:16             ;01756e3c123440109abc\r
+    add.b @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01756e3c123448109abcdef0\r
+\r
+    add.b @(0x1234:16,r3.w),@er1                       ;01766e3c12340110\r
+    add.b @(0x1234:16,r3.w),@(3:2,er1)                 ;01766e3c12343110\r
+    add.b @(0x1234:16,r3.w),@-er1                      ;01766e3c1234b110\r
+    add.b @(0x1234:16,r3.w),@er1+                      ;01766e3c12348110\r
+    add.b @(0x1234:16,r3.w),@er1-                      ;01766e3c1234a110\r
+    add.b @(0x1234:16,r3.w),@+er1                      ;01766e3c12349110\r
+    add.b @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01766e3c1234c1109abc\r
+    add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01766e3c1234c9109abcdef0\r
+    add.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01766e3c1234d2109abc\r
+    add.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01766e3c1234e2109abc\r
+    add.b @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01766e3c1234f2109abc\r
+    add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01766e3c1234da109abcdef0\r
+    add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01766e3c1234ea109abcdef0\r
+    add.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01766e3c1234fa109abcdef0\r
+    add.b @(0x1234:16,r3.w),@0xffff9abc:16             ;01766e3c123440109abc\r
+    add.b @(0x1234:16,r3.w),@0x9abcdef0:32             ;01766e3c123448109abcdef0\r
+\r
+    add.b @(0x1234:16,er3.l),@er1                       ;01776e3c12340110\r
+    add.b @(0x1234:16,er3.l),@(3:2,er1)                 ;01776e3c12343110\r
+    add.b @(0x1234:16,er3.l),@-er1                      ;01776e3c1234b110\r
+    add.b @(0x1234:16,er3.l),@er1+                      ;01776e3c12348110\r
+    add.b @(0x1234:16,er3.l),@er1-                      ;01776e3c1234a110\r
+    add.b @(0x1234:16,er3.l),@+er1                      ;01776e3c12349110\r
+    add.b @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01776e3c1234c1109abc\r
+    add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01776e3c1234c9109abcdef0\r
+    add.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01776e3c1234d2109abc\r
+    add.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01776e3c1234e2109abc\r
+    add.b @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01776e3c1234f2109abc\r
+    add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01776e3c1234da109abcdef0\r
+    add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01776e3c1234ea109abcdef0\r
+    add.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01776e3c1234fa109abcdef0\r
+    add.b @(0x1234:16,er3.l),@0xffff9abc:16             ;01776e3c123440109abc\r
+    add.b @(0x1234:16,er3.l),@0x9abcdef0:32             ;01776e3c123448109abcdef0\r
+\r
+    add.b @(0x12345678:32,r3l.b),@er1                       ;78356a2c123456780110\r
+    add.b @(0x12345678:32,r3l.b),@(3:2,er1)                 ;78356a2c123456783110\r
+    add.b @(0x12345678:32,r3l.b),@-er1                      ;78356a2c12345678b110\r
+    add.b @(0x12345678:32,r3l.b),@er1+                      ;78356a2c123456788110\r
+    add.b @(0x12345678:32,r3l.b),@er1-                      ;78356a2c12345678a110\r
+    add.b @(0x12345678:32,r3l.b),@+er1                      ;78356a2c123456789110\r
+    add.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356a2c12345678c1109abc\r
+    add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356a2c12345678c9109abcdef0\r
+    add.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356a2c12345678d2109abc\r
+    add.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356a2c12345678e2109abc\r
+    add.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356a2c12345678f2109abc\r
+    add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356a2c12345678da109abcdef0\r
+    add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356a2c12345678ea109abcdef0\r
+    add.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356a2c12345678fa109abcdef0\r
+    add.b @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356a2c1234567840109abc\r
+    add.b @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356a2c1234567848109abcdef0\r
+\r
+    add.b @(0x12345678:32,r3.w),@er1                       ;78366a2c123456780110\r
+    add.b @(0x12345678:32,r3.w),@(3:2,er1)                 ;78366a2c123456783110\r
+    add.b @(0x12345678:32,r3.w),@-er1                      ;78366a2c12345678b110\r
+    add.b @(0x12345678:32,r3.w),@er1+                      ;78366a2c123456788110\r
+    add.b @(0x12345678:32,r3.w),@er1-                      ;78366a2c12345678a110\r
+    add.b @(0x12345678:32,r3.w),@+er1                      ;78366a2c123456789110\r
+    add.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366a2c12345678c1109abc\r
+    add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366a2c12345678c9109abcdef0\r
+    add.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366a2c12345678d2109abc\r
+    add.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366a2c12345678e2109abc\r
+    add.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366a2c12345678f2109abc\r
+    add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366a2c12345678da109abcdef0\r
+    add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366a2c12345678ea109abcdef0\r
+    add.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366a2c12345678fa109abcdef0\r
+    add.b @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366a2c1234567840109abc\r
+    add.b @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366a2c1234567848109abcdef0\r
+\r
+    add.b @(0x12345678:32,er3.l),@er1                       ;78376a2c123456780110\r
+    add.b @(0x12345678:32,er3.l),@(3:2,er1)                 ;78376a2c123456783110\r
+    add.b @(0x12345678:32,er3.l),@-er1                      ;78376a2c12345678b110\r
+    add.b @(0x12345678:32,er3.l),@er1+                      ;78376a2c123456788110\r
+    add.b @(0x12345678:32,er3.l),@er1-                      ;78376a2c12345678a110\r
+    add.b @(0x12345678:32,er3.l),@+er1                      ;78376a2c123456789110\r
+    add.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376a2c12345678c1109abc\r
+    add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376a2c12345678c9109abcdef0\r
+    add.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376a2c12345678d2109abc\r
+    add.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376a2c12345678e2109abc\r
+    add.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376a2c12345678f2109abc\r
+    add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376a2c12345678da109abcdef0\r
+    add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376a2c12345678ea109abcdef0\r
+    add.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376a2c12345678fa109abcdef0\r
+    add.b @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376a2c1234567840109abc\r
+    add.b @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376a2c1234567848109abcdef0\r
+\r
+    add.b @0x1234:16,@er1                              ;6a1512340110\r
+    add.b @0x1234:16,@(3:2,er1)                        ;6a1512343110\r
+    add.b @0x1234:16,@-er1                             ;6a151234b110\r
+    add.b @0x1234:16,@er1+                             ;6a1512348110\r
+    add.b @0x1234:16,@er1-                             ;6a151234a110\r
+    add.b @0x1234:16,@+er1                             ;6a1512349110\r
+    add.b @0x1234:16,@(0xffff9abc:16,er1)              ;6a151234c1109abc\r
+    add.b @0x1234:16,@(0x9abcdef0:32,er1)              ;6a151234c9109abcdef0\r
+    add.b @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6a151234d2109abc\r
+    add.b @0x1234:16,@(0xffff9abc:16,r2.w)            ;6a151234e2109abc\r
+    add.b @0x1234:16,@(0xffff9abc:16,er2.l)            ;6a151234f2109abc\r
+    add.b @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6a151234da109abcdef0\r
+    add.b @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6a151234ea109abcdef0\r
+    add.b @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6a151234fa109abcdef0\r
+    add.b @0x1234:16,@0xffff9abc:16                    ;6a15123440109abc\r
+    add.b @0x1234:16,@0x9abcdef0:32                    ;6a15123448109abcdef0\r
+\r
+    add.b @0x12345678:32,@er1                              ;6a35123456780110\r
+    add.b @0x12345678:32,@(3:2,er1)                        ;6a35123456783110\r
+    add.b @0x12345678:32,@-er1                             ;6a3512345678b110\r
+    add.b @0x12345678:32,@er1+                             ;6a35123456788110\r
+    add.b @0x12345678:32,@er1-                             ;6a3512345678a110\r
+    add.b @0x12345678:32,@+er1                             ;6a35123456789110\r
+    add.b @0x12345678:32,@(0xffff9abc:16,er1)              ;6a3512345678c1109abc\r
+    add.b @0x12345678:32,@(0x9abcdef0:32,er1)              ;6a3512345678c9109abcdef0\r
+    add.b @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6a3512345678d2109abc\r
+    add.b @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6a3512345678e2109abc\r
+    add.b @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6a3512345678f2109abc\r
+    add.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6a3512345678da109abcdef0\r
+    add.b @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6a3512345678ea109abcdef0\r
+    add.b @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6a3512345678fa109abcdef0\r
+    add.b @0x12345678:32,@0xffff9abc:16                    ;6a351234567840109abc\r
+    add.b @0x12345678:32,@0x9abcdef0:32                    ;6a351234567848109abcdef0\r
+\r
+    add.w #0x1234:16,r1                                    ;79111234\r
+    add.w #0x7:3,r2                                        ;0a72\r
+    add.w #0x1234:16,@er1                              ;015e01101234\r
+    add.w #0x1234:16,@(0x6:2,er1)                      ;015e31101234\r
+    add.w #0x1234:16,@er1+                             ;015e81101234\r
+    add.w #0x1234:16,@-er1                             ;015eb1101234\r
+    add.w #0x1234:16,@+er1                             ;015e91101234\r
+    add.w #0x1234:16,@er1-                             ;015ea1101234\r
+    add.w #0x1234:16,@(0xffff9abc:16,er1)           ;015ec1109abc1234\r
+    add.w #0x1234:16,@(0x9abcdef0:32,er1)           ;015ec9109abcdef01234\r
+    add.w #0x1234:16,@(0xffff9abc:16,r2l.b)         ;015ed2109abc1234\r
+    add.w #0x1234:16,@(0xffff9abc:16,r2.w)         ;015ee2109abc1234\r
+    add.w #0x1234:16,@(0xffff9abc:16,er2.l)         ;015ef2109abc1234\r
+    add.w #0x1234:16,@(0x9abcdef0:32,r2l.b)         ;015eda109abcdef01234\r
+    add.w #0x1234:16,@(0x9abcdef0:32,r2.w)         ;015eea109abcdef01234\r
+    add.w #0x1234:16,@(0x9abcdef0:32,er2.l)         ;015efa109abcdef01234\r
+    add.w #0x1234:16,@0xffff9abc:16                    ;015e40109abc1234\r
+    add.w #0x1234:16,@0x9abcdef0:32                    ;015e48109abcdef01234\r
+\r
+    add.w #0x7:3,@er1                       ;7d900a70\r
+    add.w #0x7:3,@0x1234:16                     ;6b1812340a70\r
+    add.w #0x7:3,@0x12345678:32                     ;6b38123456780a70\r
+\r
+    add.w r3,r1                           ;0931\r
+\r
+    add.w r3,@er1                         ;7d900930\r
+    add.w r3,@(0x6:2,er1)                ;01593113\r
+    add.w r3,@er1+                        ;01598113\r
+    add.w r3,@-er1                        ;0159b113\r
+    add.w r3,@+er1                        ;01599113\r
+    add.w r3,@er1-                        ;0159a113\r
+    add.w r3,@(0x1234:16,er1)                  ;0159c1131234\r
+    add.w r3,@(0x12345678:32,er1)                  ;0159c91312345678\r
+    add.w r3,@(0x1234:16,r2l.b)                ;0159d2131234\r
+    add.w r3,@(0x1234:16,r2.w)                ;0159e2131234\r
+    add.w r3,@(0x1234:16,er2.l)                ;0159f2131234\r
+    add.w r3,@(0x12345678:32,r2l.b)                ;0159da1312345678\r
+    add.w r3,@(0x12345678:32,r2.w)                ;0159ea1312345678\r
+    add.w r3,@(0x12345678:32,er2.l)                ;0159fa1312345678\r
+    add.w r3,@0x1234:16                       ;6b1812340930\r
+    add.w r3,@0x12345678:32                       ;6b38123456780930\r
+\r
+    add.w @er3,r1                         ;7cb00901\r
+    add.w @(0x6:2,er1),r1               ;015a3111\r
+    add.w @er3+,r1                       ;015a8311\r
+    add.w @-er3,r1                       ;015ab311\r
+    add.w @+er3,r1                       ;015a9311\r
+    add.w @er3-,r1                       ;015aa311\r
+    add.w @(0x1234:16,er1),r1                  ;015ac1111234\r
+    add.w @(0x12345678:32,er1),r1                  ;015ac91112345678\r
+    add.w @(0x1234:16,r2l.b),r1                ;015ad2111234\r
+    add.w @(0x1234:16,r2.w),r1                ;015ae2111234\r
+    add.w @(0x1234:16,er2.l),r1                ;015af2111234\r
+    add.w @(0x12345678:32,r2l.b),r1                ;015ada1112345678\r
+    add.w @(0x12345678:32,r2.w),r1                ;015aea1112345678\r
+    add.w @(0x12345678:32,er2.l),r1                ;015afa1112345678\r
+    add.w @0x1234:16,r1                       ;6b1012340901\r
+    add.w @0x12345678:32,r1                       ;6b30123456780901\r
+\r
+    add.w @er3,@er1                                ;7cb50110\r
+    add.w @er3,@(6:2,er1)                          ;7cb53110\r
+    add.w @er3,@-er1                               ;7cb5b110\r
+    add.w @er3,@er1+                               ;7cb58110\r
+    add.w @er3,@er1-                               ;7cb5a110\r
+    add.w @er3,@+er1                               ;7cb59110\r
+    add.w @er3,@(0xffff9abc:16,er1)                ;7cb5c1109abc\r
+    add.w @er3,@(0x9abcdef0:32,er1)                ;7cb5c9109abcdef0\r
+    add.w @er3,@(0xffff9abc:16,r2l.b)              ;7cb5d2109abc\r
+    add.w @er3,@(0xffff9abc:16,r2.w)              ;7cb5e2109abc\r
+    add.w @er3,@(0xffff9abc:16,er2.l)              ;7cb5f2109abc\r
+    add.w @er3,@(0x9abcdef0:32,r2l.b)              ;7cb5da109abcdef0\r
+    add.w @er3,@(0x9abcdef0:32,r2.w)              ;7cb5ea109abcdef0\r
+    add.w @er3,@(0x9abcdef0:32,er2.l)              ;7cb5fa109abcdef0\r
+    add.w @er3,@0xffff9abc:16                      ;7cb540109abc\r
+    add.w @er3,@0x9abcdef0:32                      ;7cb548109abcdef0\r
+\r
+    add.w @-er3,@er1                               ;01576d3c0110\r
+    add.w @-er3,@(6:2,er1)                         ;01576d3c3110\r
+    add.w @-er3,@-er1                              ;01576d3cb110\r
+    add.w @-er3,@er1+                              ;01576d3c8110\r
+    add.w @-er3,@er1-                              ;01576d3ca110\r
+    add.w @-er3,@+er1                              ;01576d3c9110\r
+    add.w @-er3,@(0xffff9abc:16,er1)               ;01576d3cc1109abc\r
+    add.w @-er3,@(0x9abcdef0:32,er1)               ;01576d3cc9109abcdef0\r
+    add.w @-er3,@(0xffff9abc:16,r2l.b)             ;01576d3cd2109abc\r
+    add.w @-er3,@(0xffff9abc:16,r2.w)             ;01576d3ce2109abc\r
+    add.w @-er3,@(0xffff9abc:16,er2.l)             ;01576d3cf2109abc\r
+    add.w @-er3,@(0x9abcdef0:32,r2l.b)             ;01576d3cda109abcdef0\r
+    add.w @-er3,@(0x9abcdef0:32,r2.w)             ;01576d3cea109abcdef0\r
+    add.w @-er3,@(0x9abcdef0:32,er2.l)             ;01576d3cfa109abcdef0\r
+    add.w @-er3,@0xffff9abc:16                     ;01576d3c40109abc\r
+    add.w @-er3,@0x9abcdef0:32                     ;01576d3c48109abcdef0\r
+\r
+    add.w @er3+,@er1                               ;01546d3c0110\r
+    add.w @er3+,@(6:2,er1)                         ;01546d3c3110\r
+    add.w @er3+,@-er1                              ;01546d3cb110\r
+    add.w @er3+,@er1+                              ;01546d3c8110\r
+    add.w @er3+,@er1-                              ;01546d3ca110\r
+    add.w @er3+,@+er1                              ;01546d3c9110\r
+    add.w @er3+,@(0xffff9abc:16,er1)               ;01546d3cc1109abc\r
+    add.w @er3+,@(0x9abcdef0:32,er1)               ;01546d3cc9109abcdef0\r
+    add.w @er3+,@(0xffff9abc:16,r2l.b)             ;01546d3cd2109abc\r
+    add.w @er3+,@(0xffff9abc:16,r2.w)             ;01546d3ce2109abc\r
+    add.w @er3+,@(0xffff9abc:16,er2.l)             ;01546d3cf2109abc\r
+    add.w @er3+,@(0x9abcdef0:32,r2l.b)             ;01546d3cda109abcdef0\r
+    add.w @er3+,@(0x9abcdef0:32,r2.w)             ;01546d3cea109abcdef0\r
+    add.w @er3+,@(0x9abcdef0:32,er2.l)             ;01546d3cfa109abcdef0\r
+    add.w @er3+,@0xffff9abc:16                     ;01546d3c40109abc\r
+    add.w @er3+,@0x9abcdef0:32                     ;01546d3c48109abcdef0\r
+\r
+    add.w @er3-,@er1                               ;01566d3c0110\r
+    add.w @er3-,@(6:2,er1)                         ;01566d3c3110\r
+    add.w @er3-,@-er1                              ;01566d3cb110\r
+    add.w @er3-,@er1+                              ;01566d3c8110\r
+    add.w @er3-,@er1-                              ;01566d3ca110\r
+    add.w @er3-,@+er1                              ;01566d3c9110\r
+    add.w @er3-,@(0xffff9abc:16,er1)               ;01566d3cc1109abc\r
+    add.w @er3-,@(0x9abcdef0:32,er1)               ;01566d3cc9109abcdef0\r
+    add.w @er3-,@(0xffff9abc:16,r2l.b)             ;01566d3cd2109abc\r
+    add.w @er3-,@(0xffff9abc:16,r2.w)             ;01566d3ce2109abc\r
+    add.w @er3-,@(0xffff9abc:16,er2.l)             ;01566d3cf2109abc\r
+    add.w @er3-,@(0x9abcdef0:32,r2l.b)             ;01566d3cda109abcdef0\r
+    add.w @er3-,@(0x9abcdef0:32,r2.w)             ;01566d3cea109abcdef0\r
+    add.w @er3-,@(0x9abcdef0:32,er2.l)             ;01566d3cfa109abcdef0\r
+    add.w @er3-,@0xffff9abc:16                     ;01566d3c40109abc\r
+    add.w @er3-,@0x9abcdef0:32                     ;01566d3c48109abcdef0\r
+\r
+    add.w @+er3,@er1                               ;01556d3c0110\r
+    add.w @+er3,@(6:2,er1)                         ;01556d3c3110\r
+    add.w @+er3,@-er1                              ;01556d3cb110\r
+    add.w @+er3,@er1+                              ;01556d3c8110\r
+    add.w @+er3,@er1-                              ;01556d3ca110\r
+    add.w @+er3,@+er1                              ;01556d3c9110\r
+    add.w @+er3,@(0xffff9abc:16,er1)               ;01556d3cc1109abc\r
+    add.w @+er3,@(0x9abcdef0:32,er1)               ;01556d3cc9109abcdef0\r
+    add.w @+er3,@(0xffff9abc:16,r2l.b)             ;01556d3cd2109abc\r
+    add.w @+er3,@(0xffff9abc:16,r2.w)             ;01556d3ce2109abc\r
+    add.w @+er3,@(0xffff9abc:16,er2.l)             ;01556d3cf2109abc\r
+    add.w @+er3,@(0x9abcdef0:32,r2l.b)             ;01556d3cda109abcdef0\r
+    add.w @+er3,@(0x9abcdef0:32,r2.w)             ;01556d3cea109abcdef0\r
+    add.w @+er3,@(0x9abcdef0:32,er2.l)             ;01556d3cfa109abcdef0\r
+    add.w @+er3,@0xffff9abc:16                     ;01556d3c40109abc\r
+    add.w @+er3,@0x9abcdef0:32                     ;01556d3c48109abcdef0\r
+\r
+    add.w @(0x1234:16,er3),@er1                         ;01546f3c12340110\r
+    add.w @(0x1234:16,er3),@(6:2,er1)                   ;01546f3c12343110\r
+    add.w @(0x1234:16,er3),@-er1                        ;01546f3c1234b110\r
+    add.w @(0x1234:16,er3),@er1+                        ;01546f3c12348110\r
+    add.w @(0x1234:16,er3),@er1-                        ;01546f3c1234a110\r
+    add.w @(0x1234:16,er3),@+er1                        ;01546f3c12349110\r
+    add.w @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01546f3c1234c1109abc\r
+    add.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01546f3c1234c9109abcdef0\r
+    add.w @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01546f3c1234d2109abc\r
+    add.w @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01546f3c1234e2109abc\r
+    add.w @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01546f3c1234f2109abc\r
+    add.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01546f3c1234da109abcdef0\r
+    add.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01546f3c1234ea109abcdef0\r
+    add.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01546f3c1234fa109abcdef0\r
+    add.w @(0x1234:16,er3),@0xffff9abc:16               ;01546f3c123440109abc\r
+    add.w @(0x1234:16,er3),@0x9abcdef0:32               ;01546f3c123448109abcdef0\r
+\r
+    add.w @(0x12345678:32,er3),@er1                         ;78346b2c123456780110\r
+    add.w @(0x12345678:32,er3),@(6:2,er1)                   ;78346b2c123456783110\r
+    add.w @(0x12345678:32,er3),@-er1                        ;78346b2c12345678b110\r
+    add.w @(0x12345678:32,er3),@er1+                        ;78346b2c123456788110\r
+    add.w @(0x12345678:32,er3),@er1-                        ;78346b2c12345678a110\r
+    add.w @(0x12345678:32,er3),@+er1                        ;78346b2c123456789110\r
+    add.w @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346b2c12345678c1109abc\r
+    add.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346b2c12345678c9109abcdef0\r
+    add.w @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346b2c12345678d2109abc\r
+    add.w @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346b2c12345678e2109abc\r
+    add.w @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346b2c12345678f2109abc\r
+    add.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346b2c12345678da109abcdef0\r
+    add.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346b2c12345678ea109abcdef0\r
+    add.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346b2c12345678fa109abcdef0\r
+    add.w @(0x12345678:32,er3),@0xffff9abc:16               ;78346b2c1234567840109abc\r
+    add.w @(0x12345678:32,er3),@0x9abcdef0:32               ;78346b2c1234567848109abcdef0\r
+\r
+    add.w @(0x1234:16,r3l.b),@er1                       ;01556f3c12340110\r
+    add.w @(0x1234:16,r3l.b),@(6:2,er1)                 ;01556f3c12343110\r
+    add.w @(0x1234:16,r3l.b),@-er1                      ;01556f3c1234b110\r
+    add.w @(0x1234:16,r3l.b),@er1+                      ;01556f3c12348110\r
+    add.w @(0x1234:16,r3l.b),@er1-                      ;01556f3c1234a110\r
+    add.w @(0x1234:16,r3l.b),@+er1                      ;01556f3c12349110\r
+    add.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01556f3c1234c1109abc\r
+    add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01556f3c1234c9109abcdef0\r
+    add.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01556f3c1234d2109abc\r
+    add.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01556f3c1234e2109abc\r
+    add.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01556f3c1234f2109abc\r
+    add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01556f3c1234da109abcdef0\r
+    add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01556f3c1234ea109abcdef0\r
+    add.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01556f3c1234fa109abcdef0\r
+    add.w @(0x1234:16,r3l.b),@0xffff9abc:16             ;01556f3c123440109abc\r
+    add.w @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01556f3c123448109abcdef0\r
+\r
+    add.w @(0x1234:16,r3.w),@er1                       ;01566f3c12340110\r
+    add.w @(0x1234:16,r3.w),@(6:2,er1)                 ;01566f3c12343110\r
+    add.w @(0x1234:16,r3.w),@-er1                      ;01566f3c1234b110\r
+    add.w @(0x1234:16,r3.w),@er1+                      ;01566f3c12348110\r
+    add.w @(0x1234:16,r3.w),@er1-                      ;01566f3c1234a110\r
+    add.w @(0x1234:16,r3.w),@+er1                      ;01566f3c12349110\r
+    add.w @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01566f3c1234c1109abc\r
+    add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01566f3c1234c9109abcdef0\r
+    add.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01566f3c1234d2109abc\r
+    add.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01566f3c1234e2109abc\r
+    add.w @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01566f3c1234f2109abc\r
+    add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01566f3c1234da109abcdef0\r
+    add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01566f3c1234ea109abcdef0\r
+    add.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01566f3c1234fa109abcdef0\r
+    add.w @(0x1234:16,r3.w),@0xffff9abc:16             ;01566f3c123440109abc\r
+    add.w @(0x1234:16,r3.w),@0x9abcdef0:32             ;01566f3c123448109abcdef0\r
+\r
+    add.w @(0x1234:16,er3.l),@er1                       ;01576f3c12340110\r
+    add.w @(0x1234:16,er3.l),@(6:2,er1)                 ;01576f3c12343110\r
+    add.w @(0x1234:16,er3.l),@-er1                      ;01576f3c1234b110\r
+    add.w @(0x1234:16,er3.l),@er1+                      ;01576f3c12348110\r
+    add.w @(0x1234:16,er3.l),@er1-                      ;01576f3c1234a110\r
+    add.w @(0x1234:16,er3.l),@+er1                      ;01576f3c12349110\r
+    add.w @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01576f3c1234c1109abc\r
+    add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01576f3c1234c9109abcdef0\r
+    add.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01576f3c1234d2109abc\r
+    add.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01576f3c1234e2109abc\r
+    add.w @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01576f3c1234f2109abc\r
+    add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01576f3c1234da109abcdef0\r
+    add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01576f3c1234ea109abcdef0\r
+    add.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01576f3c1234fa109abcdef0\r
+    add.w @(0x1234:16,er3.l),@0xffff9abc:16             ;01576f3c123440109abc\r
+    add.w @(0x1234:16,er3.l),@0x9abcdef0:32             ;01576f3c123448109abcdef0\r
+\r
+    add.w @(0x12345678:32,r3l.b),@er1                       ;78356b2c123456780110\r
+    add.w @(0x12345678:32,r3l.b),@(6:2,er1)                 ;78356b2c123456783110\r
+    add.w @(0x12345678:32,r3l.b),@-er1                      ;78356b2c12345678b110\r
+    add.w @(0x12345678:32,r3l.b),@er1+                      ;78356b2c123456788110\r
+    add.w @(0x12345678:32,r3l.b),@er1-                      ;78356b2c12345678a110\r
+    add.w @(0x12345678:32,r3l.b),@+er1                      ;78356b2c123456789110\r
+    add.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356b2c12345678c1109abc\r
+    add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356b2c12345678c9109abcdef0\r
+    add.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356b2c12345678d2109abc\r
+    add.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356b2c12345678e2109abc\r
+    add.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356b2c12345678f2109abc\r
+    add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356b2c12345678da109abcdef0\r
+    add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356b2c12345678ea109abcdef0\r
+    add.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356b2c12345678fa109abcdef0\r
+    add.w @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356b2c1234567840109abc\r
+    add.w @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356b2c1234567848109abcdef0\r
+\r
+    add.w @(0x12345678:32,r3.w),@er1                       ;78366b2c123456780110\r
+    add.w @(0x12345678:32,r3.w),@(6:2,er1)                 ;78366b2c123456783110\r
+    add.w @(0x12345678:32,r3.w),@-er1                      ;78366b2c12345678b110\r
+    add.w @(0x12345678:32,r3.w),@er1+                      ;78366b2c123456788110\r
+    add.w @(0x12345678:32,r3.w),@er1-                      ;78366b2c12345678a110\r
+    add.w @(0x12345678:32,r3.w),@+er1                      ;78366b2c123456789110\r
+    add.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366b2c12345678c1109abc\r
+    add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366b2c12345678c9109abcdef0\r
+    add.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366b2c12345678d2109abc\r
+    add.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366b2c12345678e2109abc\r
+    add.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366b2c12345678f2109abc\r
+    add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366b2c12345678da109abcdef0\r
+    add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366b2c12345678ea109abcdef0\r
+    add.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366b2c12345678fa109abcdef0\r
+    add.w @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366b2c1234567840109abc\r
+    add.w @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366b2c1234567848109abcdef0\r
+\r
+    add.w @(0x12345678:32,er3.l),@er1                       ;78376b2c123456780110\r
+    add.w @(0x12345678:32,er3.l),@(6:2,er1)                 ;78376b2c123456783110\r
+    add.w @(0x12345678:32,er3.l),@-er1                      ;78376b2c12345678b110\r
+    add.w @(0x12345678:32,er3.l),@er1+                      ;78376b2c123456788110\r
+    add.w @(0x12345678:32,er3.l),@er1-                      ;78376b2c12345678a110\r
+    add.w @(0x12345678:32,er3.l),@+er1                      ;78376b2c123456789110\r
+    add.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376b2c12345678c1109abc\r
+    add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376b2c12345678c9109abcdef0\r
+    add.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376b2c12345678d2109abc\r
+    add.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376b2c12345678e2109abc\r
+    add.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376b2c12345678f2109abc\r
+    add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376b2c12345678da109abcdef0\r
+    add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376b2c12345678ea109abcdef0\r
+    add.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376b2c12345678fa109abcdef0\r
+    add.w @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376b2c1234567840109abc\r
+    add.w @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376b2c1234567848109abcdef0\r
+\r
+    add.w @0x1234:16,@er1                              ;6b1512340110\r
+    add.w @0x1234:16,@(6:2,er1)                        ;6b1512343110\r
+    add.w @0x1234:16,@-er1                             ;6b151234b110\r
+    add.w @0x1234:16,@er1+                             ;6b1512348110\r
+    add.w @0x1234:16,@er1-                             ;6b151234a110\r
+    add.w @0x1234:16,@+er1                             ;6b1512349110\r
+    add.w @0x1234:16,@(0xffff9abc:16,er1)              ;6b151234c1109abc\r
+    add.w @0x1234:16,@(0x9abcdef0:32,er1)              ;6b151234c9109abcdef0\r
+    add.w @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6b151234d2109abc\r
+    add.w @0x1234:16,@(0xffff9abc:16,r2.w)            ;6b151234e2109abc\r
+    add.w @0x1234:16,@(0xffff9abc:16,er2.l)            ;6b151234f2109abc\r
+    add.w @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6b151234da109abcdef0\r
+    add.w @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6b151234ea109abcdef0\r
+    add.w @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6b151234fa109abcdef0\r
+    add.w @0x1234:16,@0xffff9abc:16                    ;6b15123440109abc\r
+    add.w @0x1234:16,@0x9abcdef0:32                    ;6b15123448109abcdef0\r
+\r
+    add.w @0x12345678:32,@er1                              ;6b35123456780110\r
+    add.w @0x12345678:32,@(6:2,er1)                        ;6b35123456783110\r
+    add.w @0x12345678:32,@-er1                             ;6b3512345678b110\r
+    add.w @0x12345678:32,@er1+                             ;6b35123456788110\r
+    add.w @0x12345678:32,@er1-                             ;6b3512345678a110\r
+    add.w @0x12345678:32,@+er1                             ;6b35123456789110\r
+    add.w @0x12345678:32,@(0xffff9abc:16,er1)              ;6b3512345678c1109abc\r
+    add.w @0x12345678:32,@(0x9abcdef0:32,er1)              ;6b3512345678c9109abcdef0\r
+    add.w @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6b3512345678d2109abc\r
+    add.w @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6b3512345678e2109abc\r
+    add.w @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6b3512345678f2109abc\r
+    add.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6b3512345678da109abcdef0\r
+    add.w @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6b3512345678ea109abcdef0\r
+    add.w @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6b3512345678fa109abcdef0\r
+    add.w @0x12345678:32,@0xffff9abc:16                    ;6b351234567840109abc\r
+    add.w @0x12345678:32,@0x9abcdef0:32                    ;6b351234567848109abcdef0\r
+\r
+    add.l #0x12345678:32,er1                      ;7a1112345678\r
+    add.l #0x1234:16,er1                       ;7a191234\r
+    add.l #0x7:3,er2                         ;0afa\r
+    add.l #0x12345678:32,@er1                      ;010e011812345678\r
+    add.l #0x12345678:32,@(0xc:2,er1)             ;010e311812345678\r
+    add.l #0x12345678:32,@er1+                     ;010e811812345678\r
+    add.l #0x12345678:32,@-er1                     ;010eb11812345678\r
+    add.l #0x12345678:32,@+er1                     ;010e911812345678\r
+    add.l #0x12345678:32,@er1-                     ;010ea11812345678\r
+    add.l #0x12345678:32,@(0xffff9abc:16,er1)               ;010ec1189abc12345678\r
+    add.l #0x12345678:32,@(0x9abcdef0:32,er1)               ;010ec9189abcdef012345678\r
+    add.l #0x12345678:32,@(0xffff9abc:16,r2l.b)             ;010ed2189abc12345678\r
+    add.l #0x12345678:32,@(0xffff9abc:16,r2.w)             ;010ee2189abc12345678\r
+    add.l #0x12345678:32,@(0xffff9abc:16,er2.l)             ;010ef2189abc12345678\r
+    add.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)             ;010eda189abcdef012345678\r
+    add.l #0x12345678:32,@(0x9abcdef0:32,r2.w)             ;010eea189abcdef012345678\r
+    add.l #0x12345678:32,@(0x9abcdef0:32,er2.l)             ;010efa189abcdef012345678\r
+    add.l #0x12345678:32,@0xffff9abc:16                     ;010e40189abc12345678\r
+    add.l #0x12345678:32,@0x9abcdef0:32                     ;010e48189abcdef012345678\r
+    add.l #0x1234:16,@er1                      ;010e01101234\r
+    add.l #0x1234:16,@(0xc:2,er1)             ;010e31101234\r
+    add.l #0x1234:16,@er1+                     ;010e81101234\r
+    add.l #0x1234:16,@-er1                     ;010eb1101234\r
+    add.l #0x1234:16,@+er1                     ;010e91101234\r
+    add.l #0x1234:16,@er1-                     ;010ea1101234\r
+    add.l #0x1234:16,@(0xffff9abc:16,er1)               ;010ec1109abc1234\r
+    add.l #0x1234:16,@(0x9abcdef0:32,er1)               ;010ec9109abcdef01234\r
+    add.l #0x1234:16,@(0xffff9abc:16,r2l.b)             ;010ed2109abc1234\r
+    add.l #0x1234:16,@(0xffff9abc:16,r2.w)             ;010ee2109abc1234\r
+    add.l #0x1234:16,@(0xffff9abc:16,er2.l)             ;010ef2109abc1234\r
+    add.l #0x1234:16,@(0x9abcdef0:32,r2l.b)             ;010eda109abcdef01234\r
+    add.l #0x1234:16,@(0x9abcdef0:32,r2.w)             ;010eea109abcdef01234\r
+    add.l #0x1234:16,@(0x9abcdef0:32,er2.l)             ;010efa109abcdef01234\r
+    add.l #0x1234:16,@0xffff9abc:16                     ;010e40109abc1234\r
+    add.l #0x1234:16,@0x9abcdef0:32                     ;010e48109abcdef01234\r
+\r
+    add.l er3,er1                           ;0ab1\r
+\r
+    add.l er3,@er1                         ;01090113\r
+    add.l er3,@(0xc:2,er1)                ;01093113\r
+    add.l er3,@er1+                        ;01098113\r
+    add.l er3,@-er1                        ;0109b113\r
+    add.l er3,@+er1                        ;01099113\r
+    add.l er3,@er1-                        ;0109a113\r
+    add.l er3,@(0x1234:16,er1)                  ;0109c1131234\r
+    add.l er3,@(0x12345678:32,er1)                  ;0109c91312345678\r
+    add.l er3,@(0x1234:16,r2l.b)                ;0109d2131234\r
+    add.l er3,@(0x1234:16,r2.w)                ;0109e2131234\r
+    add.l er3,@(0x1234:16,er2.l)                ;0109f2131234\r
+    add.l er3,@(0x12345678:32,r2l.b)                ;0109da1312345678\r
+    add.l er3,@(0x12345678:32,r2.w)                ;0109ea1312345678\r
+    add.l er3,@(0x12345678:32,er2.l)                ;0109fa1312345678\r
+    add.l er3,@0x1234:16                       ;010940131234\r
+    add.l er3,@0x12345678:32                       ;0109481312345678\r
+\r
+    add.l @er3,er1                         ;010a0311\r
+    add.l @(0xc:2,er3),er1               ;010a3311\r
+    add.l @er3+,er1                       ;010a8311\r
+    add.l @-er3,er1                       ;010ab311\r
+    add.l @+er3,er1                       ;010a9311\r
+    add.l @er3-,er1                       ;010aa311\r
+    add.l @(0x1234:16,er1),er1                  ;010ac1111234\r
+    add.l @(0x12345678:32,er1),er1                  ;010ac91112345678\r
+    add.l @(0x1234:16,r2l.b),er1                ;010ad2111234\r
+    add.l @(0x1234:16,r2.w),er1                ;010ae2111234\r
+    add.l @(0x1234:16,er2.l),er1                ;010af2111234\r
+    add.l @(0x12345678:32,r2l.b),er1                ;010ada1112345678\r
+    add.l @(0x12345678:32,r2.w),er1                ;010aea1112345678\r
+    add.l @(0x12345678:32,er2.l),er1                ;010afa1112345678\r
+    add.l @0x1234:16,er1                       ;010a40111234\r
+    add.l @0x12345678:32,er1                       ;010a481112345678\r
+\r
+    add.l @er3,@er1                                ;0104693c0110\r
+    add.l @er3,@(0xc:2,er1)                          ;0104693c3110\r
+    add.l @er3,@-er1                               ;0104693cb110\r
+    add.l @er3,@er1+                               ;0104693c8110\r
+    add.l @er3,@er1-                               ;0104693ca110\r
+    add.l @er3,@+er1                               ;0104693c9110\r
+    add.l @er3,@(0xffff9abc:16,er1)                ;0104693cc1109abc\r
+    add.l @er3,@(0x9abcdef0:32,er1)                ;0104693cc9109abcdef0\r
+    add.l @er3,@(0xffff9abc:16,r2l.b)              ;0104693cd2109abc\r
+    add.l @er3,@(0xffff9abc:16,r2.w)              ;0104693ce2109abc\r
+    add.l @er3,@(0xffff9abc:16,er2.l)              ;0104693cf2109abc\r
+    add.l @er3,@(0x9abcdef0:32,r2l.b)              ;0104693cda109abcdef0\r
+    add.l @er3,@(0x9abcdef0:32,r2.w)              ;0104693cea109abcdef0\r
+    add.l @er3,@(0x9abcdef0:32,er2.l)              ;0104693cfa109abcdef0\r
+    add.l @er3,@0xffff9abc:16                      ;0104693c40109abc\r
+    add.l @er3,@0x9abcdef0:32                      ;0104693c48109abcdef0\r
+\r
+    add.l @(0xc:2,er3),@er1                       ;0107693c0110\r
+    add.l @(0xc:2,er3),@(0xc:2,er1)                 ;0107693c3110\r
+    add.l @(0xc:2,er3),@-er1                      ;0107693cb110\r
+    add.l @(0xc:2,er3),@er1+                      ;0107693c8110\r
+    add.l @(0xc:2,er3),@er1-                      ;0107693ca110\r
+    add.l @(0xc:2,er3),@+er1                      ;0107693c9110\r
+    add.l @(0xc:2,er3),@(0xffff9abc:16,er1)       ;0107693cc1109abc\r
+    add.l @(0xc:2,er3),@(0x9abcdef0:32,er1)       ;0107693cc9109abcdef0\r
+    add.l @(0xc:2,er3),@(0xffff9abc:16,r2l.b)     ;0107693cd2109abc\r
+    add.l @(0xc:2,er3),@(0xffff9abc:16,r2.w)     ;0107693ce2109abc\r
+    add.l @(0xc:2,er3),@(0xffff9abc:16,er2.l)     ;0107693cf2109abc\r
+    add.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)     ;0107693cda109abcdef0\r
+    add.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)     ;0107693cea109abcdef0\r
+    add.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)     ;0107693cfa109abcdef0\r
+    add.l @(0xc:2,er3),@0xffff9abc:16             ;0107693c40109abc\r
+    add.l @(0xc:2,er3),@0x9abcdef0:32             ;0107693c48109abcdef0\r
+\r
+    add.l @-er3,@er1                               ;01076d3c0110\r
+    add.l @-er3,@(0xc:2,er1)                         ;01076d3c3110\r
+    add.l @-er3,@-er1                              ;01076d3cb110\r
+    add.l @-er3,@er1+                              ;01076d3c8110\r
+    add.l @-er3,@er1-                              ;01076d3ca110\r
+    add.l @-er3,@+er1                              ;01076d3c9110\r
+    add.l @-er3,@(0xffff9abc:16,er1)               ;01076d3cc1109abc\r
+    add.l @-er3,@(0x9abcdef0:32,er1)               ;01076d3cc9109abcdef0\r
+    add.l @-er3,@(0xffff9abc:16,r2l.b)             ;01076d3cd2109abc\r
+    add.l @-er3,@(0xffff9abc:16,r2.w)             ;01076d3ce2109abc\r
+    add.l @-er3,@(0xffff9abc:16,er2.l)             ;01076d3cf2109abc\r
+    add.l @-er3,@(0x9abcdef0:32,r2l.b)             ;01076d3cda109abcdef0\r
+    add.l @-er3,@(0x9abcdef0:32,r2.w)             ;01076d3cea109abcdef0\r
+    add.l @-er3,@(0x9abcdef0:32,er2.l)             ;01076d3cfa109abcdef0\r
+    add.l @-er3,@0xffff9abc:16                     ;01076d3c40109abc\r
+    add.l @-er3,@0x9abcdef0:32                     ;01076d3c48109abcdef0\r
+\r
+    add.l @er3+,@er1                               ;01046d3c0110\r
+    add.l @er3+,@(0xc:2,er1)                         ;01046d3c3110\r
+    add.l @er3+,@-er1                              ;01046d3cb110\r
+    add.l @er3+,@er1+                              ;01046d3c8110\r
+    add.l @er3+,@er1-                              ;01046d3ca110\r
+    add.l @er3+,@+er1                              ;01046d3c9110\r
+    add.l @er3+,@(0xffff9abc:16,er1)               ;01046d3cc1109abc\r
+    add.l @er3+,@(0x9abcdef0:32,er1)               ;01046d3cc9109abcdef0\r
+    add.l @er3+,@(0xffff9abc:16,r2l.b)             ;01046d3cd2109abc\r
+    add.l @er3+,@(0xffff9abc:16,r2.w)             ;01046d3ce2109abc\r
+    add.l @er3+,@(0xffff9abc:16,er2.l)             ;01046d3cf2109abc\r
+    add.l @er3+,@(0x9abcdef0:32,r2l.b)             ;01046d3cda109abcdef0\r
+    add.l @er3+,@(0x9abcdef0:32,r2.w)             ;01046d3cea109abcdef0\r
+    add.l @er3+,@(0x9abcdef0:32,er2.l)             ;01046d3cfa109abcdef0\r
+    add.l @er3+,@0xffff9abc:16                     ;01046d3c40109abc\r
+    add.l @er3+,@0x9abcdef0:32                     ;01046d3c48109abcdef0\r
+\r
+    add.l @er3-,@er1                               ;01066d3c0110\r
+    add.l @er3-,@(0xc:2,er1)                         ;01066d3c3110\r
+    add.l @er3-,@-er1                              ;01066d3cb110\r
+    add.l @er3-,@er1+                              ;01066d3c8110\r
+    add.l @er3-,@er1-                              ;01066d3ca110\r
+    add.l @er3-,@+er1                              ;01066d3c9110\r
+    add.l @er3-,@(0xffff9abc:16,er1)               ;01066d3cc1109abc\r
+    add.l @er3-,@(0x9abcdef0:32,er1)               ;01066d3cc9109abcdef0\r
+    add.l @er3-,@(0xffff9abc:16,r2l.b)             ;01066d3cd2109abc\r
+    add.l @er3-,@(0xffff9abc:16,r2.w)             ;01066d3ce2109abc\r
+    add.l @er3-,@(0xffff9abc:16,er2.l)             ;01066d3cf2109abc\r
+    add.l @er3-,@(0x9abcdef0:32,r2l.b)             ;01066d3cda109abcdef0\r
+    add.l @er3-,@(0x9abcdef0:32,r2.w)             ;01066d3cea109abcdef0\r
+    add.l @er3-,@(0x9abcdef0:32,er2.l)             ;01066d3cfa109abcdef0\r
+    add.l @er3-,@0xffff9abc:16                     ;01066d3c40109abc\r
+    add.l @er3-,@0x9abcdef0:32                     ;01066d3c48109abcdef0\r
+\r
+    add.l @+er3,@er1                               ;01056d3c0110\r
+    add.l @+er3,@(0xc:2,er1)                         ;01056d3c3110\r
+    add.l @+er3,@-er1                              ;01056d3cb110\r
+    add.l @+er3,@er1+                              ;01056d3c8110\r
+    add.l @+er3,@er1-                              ;01056d3ca110\r
+    add.l @+er3,@+er1                              ;01056d3c9110\r
+    add.l @+er3,@(0xffff9abc:16,er1)               ;01056d3cc1109abc\r
+    add.l @+er3,@(0x9abcdef0:32,er1)               ;01056d3cc9109abcdef0\r
+    add.l @+er3,@(0xffff9abc:16,r2l.b)             ;01056d3cd2109abc\r
+    add.l @+er3,@(0xffff9abc:16,r2.w)             ;01056d3ce2109abc\r
+    add.l @+er3,@(0xffff9abc:16,er2.l)             ;01056d3cf2109abc\r
+    add.l @+er3,@(0x9abcdef0:32,r2l.b)             ;01056d3cda109abcdef0\r
+    add.l @+er3,@(0x9abcdef0:32,r2.w)             ;01056d3cea109abcdef0\r
+    add.l @+er3,@(0x9abcdef0:32,er2.l)             ;01056d3cfa109abcdef0\r
+    add.l @+er3,@0xffff9abc:16                     ;01056d3c40109abc\r
+    add.l @+er3,@0x9abcdef0:32                     ;01056d3c48109abcdef0\r
+\r
+    add.l @(0x1234:16,er3),@er1                         ;01046f3c12340110\r
+    add.l @(0x1234:16,er3),@(0xc:2,er1)                   ;01046f3c12343110\r
+    add.l @(0x1234:16,er3),@-er1                        ;01046f3c1234b110\r
+    add.l @(0x1234:16,er3),@er1+                        ;01046f3c12348110\r
+    add.l @(0x1234:16,er3),@er1-                        ;01046f3c1234a110\r
+    add.l @(0x1234:16,er3),@+er1                        ;01046f3c12349110\r
+    add.l @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01046f3c1234c1109abc\r
+    add.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01046f3c1234c9109abcdef0\r
+    add.l @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01046f3c1234d2109abc\r
+    add.l @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01046f3c1234e2109abc\r
+    add.l @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01046f3c1234f2109abc\r
+    add.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01046f3c1234da109abcdef0\r
+    add.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01046f3c1234ea109abcdef0\r
+    add.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01046f3c1234fa109abcdef0\r
+    add.l @(0x1234:16,er3),@0xffff9abc:16               ;01046f3c123440109abc\r
+    add.l @(0x1234:16,er3),@0x9abcdef0:32               ;01046f3c123448109abcdef0\r
+\r
+    add.l @(0x12345678:32,er3),@er1                         ;78b46b2c123456780110\r
+    add.l @(0x12345678:32,er3),@(0xc:2,er1)                   ;78b46b2c123456783110\r
+    add.l @(0x12345678:32,er3),@-er1                        ;78b46b2c12345678b110\r
+    add.l @(0x12345678:32,er3),@er1+                        ;78b46b2c123456788110\r
+    add.l @(0x12345678:32,er3),@er1-                        ;78b46b2c12345678a110\r
+    add.l @(0x12345678:32,er3),@+er1                        ;78b46b2c123456789110\r
+    add.l @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78b46b2c12345678c1109abc\r
+    add.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78b46b2c12345678c9109abcdef0\r
+    add.l @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78b46b2c12345678d2109abc\r
+    add.l @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78b46b2c12345678e2109abc\r
+    add.l @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78b46b2c12345678f2109abc\r
+    add.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78b46b2c12345678da109abcdef0\r
+    add.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78b46b2c12345678ea109abcdef0\r
+    add.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78b46b2c12345678fa109abcdef0\r
+    add.l @(0x12345678:32,er3),@0xffff9abc:16               ;78b46b2c1234567840109abc\r
+    add.l @(0x12345678:32,er3),@0x9abcdef0:32               ;78b46b2c1234567848109abcdef0\r
+\r
+    add.l @(0x1234:16,r3l.b),@er1                       ;01056f3c12340110\r
+    add.l @(0x1234:16,r3l.b),@(0xc:2,er1)                 ;01056f3c12343110\r
+    add.l @(0x1234:16,r3l.b),@-er1                      ;01056f3c1234b110\r
+    add.l @(0x1234:16,r3l.b),@er1+                      ;01056f3c12348110\r
+    add.l @(0x1234:16,r3l.b),@er1-                      ;01056f3c1234a110\r
+    add.l @(0x1234:16,r3l.b),@+er1                      ;01056f3c12349110\r
+    add.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01056f3c1234c1109abc\r
+    add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01056f3c1234c9109abcdef0\r
+    add.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01056f3c1234d2109abc\r
+    add.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01056f3c1234e2109abc\r
+    add.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01056f3c1234f2109abc\r
+    add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01056f3c1234da109abcdef0\r
+    add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01056f3c1234ea109abcdef0\r
+    add.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01056f3c1234fa109abcdef0\r
+    add.l @(0x1234:16,r3l.b),@0xffff9abc:16             ;01056f3c123440109abc\r
+    add.l @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01056f3c123448109abcdef0\r
+\r
+    add.l @(0x1234:16,r3.w),@er1                       ;01066f3c12340110\r
+    add.l @(0x1234:16,r3.w),@(0xc:2,er1)                 ;01066f3c12343110\r
+    add.l @(0x1234:16,r3.w),@-er1                      ;01066f3c1234b110\r
+    add.l @(0x1234:16,r3.w),@er1+                      ;01066f3c12348110\r
+    add.l @(0x1234:16,r3.w),@er1-                      ;01066f3c1234a110\r
+    add.l @(0x1234:16,r3.w),@+er1                      ;01066f3c12349110\r
+    add.l @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01066f3c1234c1109abc\r
+    add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01066f3c1234c9109abcdef0\r
+    add.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01066f3c1234d2109abc\r
+    add.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01066f3c1234e2109abc\r
+    add.l @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01066f3c1234f2109abc\r
+    add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01066f3c1234da109abcdef0\r
+    add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01066f3c1234ea109abcdef0\r
+    add.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01066f3c1234fa109abcdef0\r
+    add.l @(0x1234:16,r3.w),@0xffff9abc:16             ;01066f3c123440109abc\r
+    add.l @(0x1234:16,r3.w),@0x9abcdef0:32             ;01066f3c123448109abcdef0\r
+\r
+    add.l @(0x1234:16,er3.l),@er1                       ;01076f3c12340110\r
+    add.l @(0x1234:16,er3.l),@(0xc:2,er1)                 ;01076f3c12343110\r
+    add.l @(0x1234:16,er3.l),@-er1                      ;01076f3c1234b110\r
+    add.l @(0x1234:16,er3.l),@er1+                      ;01076f3c12348110\r
+    add.l @(0x1234:16,er3.l),@er1-                      ;01076f3c1234a110\r
+    add.l @(0x1234:16,er3.l),@+er1                      ;01076f3c12349110\r
+    add.l @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01076f3c1234c1109abc\r
+    add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01076f3c1234c9109abcdef0\r
+    add.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01076f3c1234d2109abc\r
+    add.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01076f3c1234e2109abc\r
+    add.l @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01076f3c1234f2109abc\r
+    add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01076f3c1234da109abcdef0\r
+    add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01076f3c1234ea109abcdef0\r
+    add.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01076f3c1234fa109abcdef0\r
+    add.l @(0x1234:16,er3.l),@0xffff9abc:16             ;01076f3c123440109abc\r
+    add.l @(0x1234:16,er3.l),@0x9abcdef0:32             ;01076f3c123448109abcdef0\r
+\r
+    add.l @(0x12345678:32,r3l.b),@er1                       ;78b56b2c123456780110\r
+    add.l @(0x12345678:32,r3l.b),@(0xc:2,er1)                 ;78b56b2c123456783110\r
+    add.l @(0x12345678:32,r3l.b),@-er1                      ;78b56b2c12345678b110\r
+    add.l @(0x12345678:32,r3l.b),@er1+                      ;78b56b2c123456788110\r
+    add.l @(0x12345678:32,r3l.b),@er1-                      ;78b56b2c12345678a110\r
+    add.l @(0x12345678:32,r3l.b),@+er1                      ;78b56b2c123456789110\r
+    add.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78b56b2c12345678c1109abc\r
+    add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78b56b2c12345678c9109abcdef0\r
+    add.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78b56b2c12345678d2109abc\r
+    add.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78b56b2c12345678e2109abc\r
+    add.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78b56b2c12345678f2109abc\r
+    add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78b56b2c12345678da109abcdef0\r
+    add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78b56b2c12345678ea109abcdef0\r
+    add.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78b56b2c12345678fa109abcdef0\r
+    add.l @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78b56b2c1234567840109abc\r
+    add.l @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78b56b2c1234567848109abcdef0\r
+\r
+    add.l @(0x12345678:32,r3.w),@er1                       ;78b66b2c123456780110\r
+    add.l @(0x12345678:32,r3.w),@(0xc:2,er1)                 ;78b66b2c123456783110\r
+    add.l @(0x12345678:32,r3.w),@-er1                      ;78b66b2c12345678b110\r
+    add.l @(0x12345678:32,r3.w),@er1+                      ;78b66b2c123456788110\r
+    add.l @(0x12345678:32,r3.w),@er1-                      ;78b66b2c12345678a110\r
+    add.l @(0x12345678:32,r3.w),@+er1                      ;78b66b2c123456789110\r
+    add.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78b66b2c12345678c1109abc\r
+    add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78b66b2c12345678c9109abcdef0\r
+    add.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78b66b2c12345678d2109abc\r
+    add.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78b66b2c12345678e2109abc\r
+    add.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78b66b2c12345678f2109abc\r
+    add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78b66b2c12345678da109abcdef0\r
+    add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78b66b2c12345678ea109abcdef0\r
+    add.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78b66b2c12345678fa109abcdef0\r
+    add.l @(0x12345678:32,r3.w),@0xffff9abc:16             ;78b66b2c1234567840109abc\r
+    add.l @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78b66b2c1234567848109abcdef0\r
+\r
+    add.l @(0x12345678:32,er3.l),@er1                       ;78b76b2c123456780110\r
+    add.l @(0x12345678:32,er3.l),@(0xc:2,er1)                 ;78b76b2c123456783110\r
+    add.l @(0x12345678:32,er3.l),@-er1                      ;78b76b2c12345678b110\r
+    add.l @(0x12345678:32,er3.l),@er1+                      ;78b76b2c123456788110\r
+    add.l @(0x12345678:32,er3.l),@er1-                      ;78b76b2c12345678a110\r
+    add.l @(0x12345678:32,er3.l),@+er1                      ;78b76b2c123456789110\r
+    add.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78b76b2c12345678c1109abc\r
+    add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78b76b2c12345678c9109abcdef0\r
+    add.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78b76b2c12345678d2109abc\r
+    add.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78b76b2c12345678e2109abc\r
+    add.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78b76b2c12345678f2109abc\r
+    add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78b76b2c12345678da109abcdef0\r
+    add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78b76b2c12345678ea109abcdef0\r
+    add.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78b76b2c12345678fa109abcdef0\r
+    add.l @(0x12345678:32,er3.l),@0xffff9abc:16             ;78b76b2c1234567840109abc\r
+    add.l @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78b76b2c1234567848109abcdef0\r
+\r
+    add.l @0x1234:16,@er1                              ;01046b0c12340110\r
+    add.l @0x1234:16,@(0xc:2,er1)                        ;01046b0c12343110\r
+    add.l @0x1234:16,@-er1                             ;01046b0c1234b110\r
+    add.l @0x1234:16,@er1+                             ;01046b0c12348110\r
+    add.l @0x1234:16,@er1-                             ;01046b0c1234a110\r
+    add.l @0x1234:16,@+er1                             ;01046b0c12349110\r
+    add.l @0x1234:16,@(0xffff9abc:16,er1)              ;01046b0c1234c1109abc\r
+    add.l @0x1234:16,@(0x9abcdef0:32,er1)              ;01046b0c1234c9109abcdef0\r
+    add.l @0x1234:16,@(0xffff9abc:16,r2l.b)            ;01046b0c1234d2109abc\r
+    add.l @0x1234:16,@(0xffff9abc:16,r2.w)            ;01046b0c1234e2109abc\r
+    add.l @0x1234:16,@(0xffff9abc:16,er2.l)            ;01046b0c1234f2109abc\r
+    add.l @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;01046b0c1234da109abcdef0\r
+    add.l @0x1234:16,@(0x9abcdef0:32,r2.w)            ;01046b0c1234ea109abcdef0\r
+    add.l @0x1234:16,@(0x9abcdef0:32,er2.l)            ;01046b0c1234fa109abcdef0\r
+    add.l @0x1234:16,@0xffff9abc:16                    ;01046b0c123440109abc\r
+    add.l @0x1234:16,@0x9abcdef0:32                    ;01046b0c123448109abcdef0\r
+\r
+    add.l @0x12345678:32,@er1                              ;01046b2c123456780110\r
+    add.l @0x12345678:32,@(0xc:2,er1)                        ;01046b2c123456783110\r
+    add.l @0x12345678:32,@-er1                             ;01046b2c12345678b110\r
+    add.l @0x12345678:32,@er1+                             ;01046b2c123456788110\r
+    add.l @0x12345678:32,@er1-                             ;01046b2c12345678a110\r
+    add.l @0x12345678:32,@+er1                             ;01046b2c123456789110\r
+    add.l @0x12345678:32,@(0xffff9abc:16,er1)              ;01046b2c12345678c1109abc\r
+    add.l @0x12345678:32,@(0x9abcdef0:32,er1)              ;01046b2c12345678c9109abcdef0\r
+    add.l @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;01046b2c12345678d2109abc\r
+    add.l @0x12345678:32,@(0xffff9abc:16,r2.w)            ;01046b2c12345678e2109abc\r
+    add.l @0x12345678:32,@(0xffff9abc:16,er2.l)            ;01046b2c12345678f2109abc\r
+    add.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;01046b2c12345678da109abcdef0\r
+    add.l @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;01046b2c12345678ea109abcdef0\r
+    add.l @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;01046b2c12345678fa109abcdef0\r
+    add.l @0x12345678:32,@0xffff9abc:16                    ;01046b2c1234567840109abc\r
+    add.l @0x12345678:32,@0x9abcdef0:32                    ;01046b2c1234567848109abcdef0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t04_sub.exp b/gdb/testsuite/gdb.disasm/t04_sub.exp
new file mode 100644 (file)
index 0000000..e3a5213
--- /dev/null
@@ -0,0 +1,1874 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t04_sub"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "sub.b\t#0x12(:8|),@er1" \
+       "sub.b #0x12:8,@er1"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x3(:2|),er1\\)" \
+       "sub.b #0x12:8,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t#0x12(:8|),@er1\\+" \
+       "sub.b #0x12:8,@er1+"
+gdb_test "x" "sub.b\t#0x12(:8|),@-er1" \
+       "sub.b #0x12:8,@-er1"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\+er1" \
+       "sub.b #0x12:8,@+er1"
+gdb_test "x" "sub.b\t#0x12(:8|),@er1-" \
+       "sub.b #0x12:8,@er1-"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),er1\\)" \
+       "sub.b #0x12:8,@(0x1234:16,er1)"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),er1\\)" \
+       "sub.b #0x12:8,@(0x12345678:32,er1)"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),r2l.b\\)" \
+       "sub.b #0x12:8,@(0x1234:16,r2l.b)"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),r2.w\\)" \
+       "sub.b #0x12:8,@(0x1234:16,r2.w)"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),er2.l\\)" \
+       "sub.b #0x12:8,@(0x1234:16,er2.l)"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),r2l.b\\)" \
+       "sub.b #0x12:8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),r2.w\\)" \
+       "sub.b #0x12:8,@(0x12345678:32,r2.w)"
+gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),er2.l\\)" \
+       "sub.b #0x12:8,@(0x12345678:32,er2.l)"
+gdb_test "x" "sub.b\t#0x12(:8|),@0x9a(:8|)" \
+       "sub.b #0x12:8,@0x9a:8"
+gdb_test "x" "sub.b\t#0x12(:8|),@0x1234(:16|)" \
+       "sub.b #0x12:8,@0x1234:16"
+gdb_test "x" "sub.b\t#0x12(:8|),@0x12345678(:32|)" \
+       "sub.b #0x12:8,@0x12345678:32"
+gdb_test "x" "sub.b\tr3h,r1h" \
+       "sub.b r3h,r1h"
+gdb_test "x" "sub.b\tr3h,@er1" \
+       "sub.b r3h,@er1"
+gdb_test "x" "sub.b\tr3h,@\\(0x3(:2|),er1\\)" \
+       "sub.b r3h,@(0x3:2,er1)"
+gdb_test "x" "sub.b\tr3h,@er1\\+" \
+       "sub.b r3h,@er1+"
+gdb_test "x" "sub.b\tr3h,@-er1" \
+       "sub.b r3h,@-er1"
+gdb_test "x" "sub.b\tr3h,@\\+er1" \
+       "sub.b r3h,@+er1"
+gdb_test "x" "sub.b\tr3h,@er1-" \
+       "sub.b r3h,@er1-"
+gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),er1\\)" \
+       "sub.b r3h,@(0x1234:16,er1)"
+gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),er1\\)" \
+       "sub.b r3h,@(0x12345678:32,er1)"
+gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),r2l.b\\)" \
+       "sub.b r3h,@(0x1234:16,r2l.b)"
+gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),r2.w\\)" \
+       "sub.b r3h,@(0x1234:16,r2.w)"
+gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),er2.l\\)" \
+       "sub.b r3h,@(0x1234:16,er2.l)"
+gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),r2l.b\\)" \
+       "sub.b r3h,@(0x12345678:32,r2l.b)"
+gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),r2.w\\)" \
+       "sub.b r3h,@(0x12345678:32,r2.w)"
+gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),er2.l\\)" \
+       "sub.b r3h,@(0x12345678:32,er2.l)"
+gdb_test "x" "sub.b\tr3h,@0x12(:8|)" \
+       "sub.b r3h,@0x12:8"
+gdb_test "x" "sub.b\tr3h,@0x1234(:16|)" \
+       "sub.b r3h,@0x1234:16"
+gdb_test "x" "sub.b\tr3h,@0x12345678(:32|)" \
+       "sub.b r3h,@0x12345678:32"
+gdb_test "x" "sub.b\t@er3,r1h" \
+       "sub.b @er3,r1h"
+gdb_test "x" "sub.b\t@\\(0x3(:2|),er3\\),r1h" \
+       "sub.b @(0x3:2,er3),r1h"
+gdb_test "x" "sub.b\t@er3\\+,r1h" \
+       "sub.b @er3+,r1h"
+gdb_test "x" "sub.b\t@-er3,r1h" \
+       "sub.b @-er3,r1h"
+gdb_test "x" "sub.b\t@\\+er3,r1h" \
+       "sub.b @+er3,r1h"
+gdb_test "x" "sub.b\t@er3-,r1h" \
+       "sub.b @er3-,r1h"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er1\\),r1h" \
+       "sub.b @(0x1234:16,er1),r1h"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er1\\),r1h" \
+       "sub.b @(0x12345678:32,er1),r1h"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r2l.b\\),r1h" \
+       "sub.b @(0x1234:16,r2l.b),r1h"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r2.w\\),r1h" \
+       "sub.b @(0x1234:16,r2.w),r1h"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er2.l\\),r1h" \
+       "sub.b @(0x1234:16,er2.l),r1h"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r2l.b\\),r1h" \
+       "sub.b @(0x12345678:32,r2l.b),r1h"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r2.w\\),r1h" \
+       "sub.b @(0x12345678:32,r2.w),r1h"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er2.l\\),r1h" \
+       "sub.b @(0x12345678:32,er2.l),r1h"
+gdb_test "x" "sub.b\t@0x12(:8|),r1h" \
+       "sub.b @0x12:8,r1h"
+gdb_test "x" "sub.b\t@0x1234(:16|),r1h" \
+       "sub.b @0x1234:16,r1h"
+gdb_test "x" "sub.b\t@0x12345678(:32|),r1h" \
+       "sub.b @0x12345678:32,r1h"
+gdb_test "x" "sub.b\t@er3,@er1" \
+       "sub.b @er3,@er1"
+gdb_test "x" "sub.b\t@er3,@\\(0x3(:2|),er1\\)" \
+       "sub.b @er3,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@er3,@-er1" \
+       "sub.b @er3,@-er1"
+gdb_test "x" "sub.b\t@er3,@er1\\+" \
+       "sub.b @er3,@er1+"
+gdb_test "x" "sub.b\t@er3,@er1-" \
+       "sub.b @er3,@er1-"
+gdb_test "x" "sub.b\t@er3,@\\+er1" \
+       "sub.b @er3,@+er1"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@er3,@0x9abc(:16|)" \
+       "sub.b @er3,@0x9abc:16"
+gdb_test "x" "sub.b\t@er3,@0x9abcdef0(:32|)" \
+       "sub.b @er3,@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@-er3,@er1" \
+       "sub.b @-er3,@er1"
+gdb_test "x" "sub.b\t@-er3,@\\(0x3(:2|),er1\\)" \
+       "sub.b @-er3,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@-er3,@-er1" \
+       "sub.b @-er3,@-er1"
+gdb_test "x" "sub.b\t@-er3,@er1\\+" \
+       "sub.b @-er3,@er1+"
+gdb_test "x" "sub.b\t@-er3,@er1-" \
+       "sub.b @-er3,@er1-"
+gdb_test "x" "sub.b\t@-er3,@\\+er1" \
+       "sub.b @-er3,@+er1"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@-er3,@0x9abc(:16|)" \
+       "sub.b @-er3,@0x9abc:16"
+gdb_test "x" "sub.b\t@-er3,@0x9abcdef0(:32|)" \
+       "sub.b @-er3,@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@er3\\+,@er1" \
+       "sub.b @er3+,@er1"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x3(:2|),er1\\)" \
+       "sub.b @er3+,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@er3\\+,@-er1" \
+       "sub.b @er3+,@-er1"
+gdb_test "x" "sub.b\t@er3\\+,@er1\\+" \
+       "sub.b @er3+,@er1+"
+gdb_test "x" "sub.b\t@er3\\+,@er1-" \
+       "sub.b @er3+,@er1-"
+gdb_test "x" "sub.b\t@er3\\+,@\\+er1" \
+       "sub.b @er3+,@+er1"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@er3\\+,@0x9abc(:16|)" \
+       "sub.b @er3+,@0x9abc:16"
+gdb_test "x" "sub.b\t@er3\\+,@0x9abcdef0(:32|)" \
+       "sub.b @er3+,@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@er3-,@er1" \
+       "sub.b @er3-,@er1"
+gdb_test "x" "sub.b\t@er3-,@\\(0x3(:2|),er1\\)" \
+       "sub.b @er3-,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@er3-,@-er1" \
+       "sub.b @er3-,@-er1"
+gdb_test "x" "sub.b\t@er3-,@er1\\+" \
+       "sub.b @er3-,@er1+"
+gdb_test "x" "sub.b\t@er3-,@er1-" \
+       "sub.b @er3-,@er1-"
+gdb_test "x" "sub.b\t@er3-,@\\+er1" \
+       "sub.b @er3-,@+er1"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@er3-,@0x9abc(:16|)" \
+       "sub.b @er3-,@0x9abc:16"
+gdb_test "x" "sub.b\t@er3-,@0x9abcdef0(:32|)" \
+       "sub.b @er3-,@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\+er3,@er1" \
+       "sub.b @+er3,@er1"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x3(:2|),er1\\)" \
+       "sub.b @+er3,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\+er3,@-er1" \
+       "sub.b @+er3,@-er1"
+gdb_test "x" "sub.b\t@\\+er3,@er1\\+" \
+       "sub.b @+er3,@er1+"
+gdb_test "x" "sub.b\t@\\+er3,@er1-" \
+       "sub.b @+er3,@er1-"
+gdb_test "x" "sub.b\t@\\+er3,@\\+er1" \
+       "sub.b @+er3,@+er1"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\+er3,@0x9abc(:16|)" \
+       "sub.b @+er3,@0x9abc:16"
+gdb_test "x" "sub.b\t@\\+er3,@0x9abcdef0(:32|)" \
+       "sub.b @+er3,@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@er1" \
+       "sub.b @(0x1234:16,er3),@er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x1234:16,er3),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "sub.b @(0x1234:16,er3),@-er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "sub.b @(0x1234:16,er3),@er1+"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "sub.b @(0x1234:16,er3),@er1-"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "sub.b @(0x1234:16,er3),@+er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "sub.b @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "sub.b @(0x12345678:32,er3),@er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "sub.b @(0x12345678:32,er3),@-er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "sub.b @(0x12345678:32,er3),@er1+"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "sub.b @(0x12345678:32,er3),@er1-"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "sub.b @(0x12345678:32,er3),@+er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "sub.b @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "sub.b @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "sub.b @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "sub.b @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "sub.b @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "sub.b @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "sub.b @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "sub.b @(0x1234:16,r3.w),@er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "sub.b @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "sub.b @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "sub.b @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "sub.b @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "sub.b @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "sub.b @(0x1234:16,er3.l),@er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "sub.b @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "sub.b @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "sub.b @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "sub.b @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "sub.b @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "sub.b @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "sub.b @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "sub.b @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "sub.b @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "sub.b @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "sub.b @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "sub.b @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "sub.b @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "sub.b @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "sub.b @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "sub.b @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "sub.b @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "sub.b @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "sub.b @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "sub.b @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "sub.b @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "sub.b @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "sub.b @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "sub.b @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@0x1234(:16|),@er1" \
+       "sub.b @0x1234:16,@er1"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x3(:2|),er1\\)" \
+       "sub.b @0x1234:16,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@-er1" \
+       "sub.b @0x1234:16,@-er1"
+gdb_test "x" "sub.b\t@0x1234(:16|),@er1\\+" \
+       "sub.b @0x1234:16,@er1+"
+gdb_test "x" "sub.b\t@0x1234(:16|),@er1-" \
+       "sub.b @0x1234:16,@er1-"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\+er1" \
+       "sub.b @0x1234:16,@+er1"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@0x1234(:16|),@0x9abc(:16|)" \
+       "sub.b @0x1234:16,@0x9abc:16"
+gdb_test "x" "sub.b\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "sub.b @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@er1" \
+       "sub.b @0x12345678:32,@er1"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x3(:2|),er1\\)" \
+       "sub.b @0x12345678:32,@(0x3:2,er1)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@-er1" \
+       "sub.b @0x12345678:32,@-er1"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@er1\\+" \
+       "sub.b @0x12345678:32,@er1+"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@er1-" \
+       "sub.b @0x12345678:32,@er1-"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\+er1" \
+       "sub.b @0x12345678:32,@+er1"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.b @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.b @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.b @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.b @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.b @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.b @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.b @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "sub.b @0x12345678:32,@0x9abc:16"
+gdb_test "x" "sub.b\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "sub.b @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t#0x1234(:16|),r1" \
+       "sub.w #0x1234:16,r1"
+gdb_test "x" "sub.w\t#0x7(:3|),r2" \
+       "sub.w #0x7:3,r2"
+gdb_test "x" "sub.w\t#0x1234(:16|),@er1" \
+       "sub.w #0x1234:16,@er1"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "sub.w #0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@er1\\+" \
+       "sub.w #0x1234:16,@er1+"
+gdb_test "x" "sub.w\t#0x1234(:16|),@-er1" \
+       "sub.w #0x1234:16,@-er1"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\+er1" \
+       "sub.w #0x1234:16,@+er1"
+gdb_test "x" "sub.w\t#0x1234(:16|),@er1-" \
+       "sub.w #0x1234:16,@er1-"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t#0x1234(:16|),@0x9abc(:16|)" \
+       "sub.w #0x1234:16,@0x9abc:16"
+gdb_test "x" "sub.w\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "sub.w #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t#0x7(:3|),@er1" \
+       "sub.w #0x7:3,@er1"
+gdb_test "x" "sub.w\t#0x7(:3|),@0x1234(:16|)" \
+       "sub.w #0x7:3,@0x1234:16"
+gdb_test "x" "sub.w\t#0x7(:3|),@0x12345678(:32|)" \
+       "sub.w #0x7:3,@0x12345678:32"
+gdb_test "x" "sub.w\tr3,r1" \
+       "sub.w r3,r1"
+gdb_test "x" "sub.w\tr3,@er1" \
+       "sub.w r3,@er1"
+gdb_test "x" "sub.w\tr3,@\\(0x6(:2|),er1\\)" \
+       "sub.w r3,@(0x6:2,er1)"
+gdb_test "x" "sub.w\tr3,@er1\\+" \
+       "sub.w r3,@er1+"
+gdb_test "x" "sub.w\tr3,@-er1" \
+       "sub.w r3,@-er1"
+gdb_test "x" "sub.w\tr3,@\\+er1" \
+       "sub.w r3,@+er1"
+gdb_test "x" "sub.w\tr3,@er1-" \
+       "sub.w r3,@er1-"
+gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),er1\\)" \
+       "sub.w r3,@(0x1234:16,er1)"
+gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),er1\\)" \
+       "sub.w r3,@(0x12345678:32,er1)"
+gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),r2l.b\\)" \
+       "sub.w r3,@(0x1234:16,r2l.b)"
+gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),r2.w\\)" \
+       "sub.w r3,@(0x1234:16,r2.w)"
+gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),er2.l\\)" \
+       "sub.w r3,@(0x1234:16,er2.l)"
+gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "sub.w r3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),r2.w\\)" \
+       "sub.w r3,@(0x12345678:32,r2.w)"
+gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),er2.l\\)" \
+       "sub.w r3,@(0x12345678:32,er2.l)"
+gdb_test "x" "sub.w\tr3,@0x1234(:16|)" \
+       "sub.w r3,@0x1234:16"
+gdb_test "x" "sub.w\tr3,@0x12345678(:32|)" \
+       "sub.w r3,@0x12345678:32"
+gdb_test "x" "sub.w\t@er3,r1" \
+       "sub.w @er3,r1"
+gdb_test "x" "sub.w\t@\\(0x6(:2|),er3\\),r1" \
+       "sub.w @(0x6:2,er3),r1"
+gdb_test "x" "sub.w\t@er3\\+,r1" \
+       "sub.w @er3+,r1"
+gdb_test "x" "sub.w\t@-er3,r1" \
+       "sub.w @-er3,r1"
+gdb_test "x" "sub.w\t@\\+er3,r1" \
+       "sub.w @+er3,r1"
+gdb_test "x" "sub.w\t@er3-,r1" \
+       "sub.w @er3-,r1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er1\\),r1" \
+       "sub.w @(0x1234:16,er1),r1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er1\\),r1" \
+       "sub.w @(0x12345678:32,er1),r1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r2l.b\\),r1" \
+       "sub.w @(0x1234:16,r2l.b),r1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r2.w\\),r1" \
+       "sub.w @(0x1234:16,r2.w),r1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er2.l\\),r1" \
+       "sub.w @(0x1234:16,er2.l),r1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r2l.b\\),r1" \
+       "sub.w @(0x12345678:32,r2l.b),r1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r2.w\\),r1" \
+       "sub.w @(0x12345678:32,r2.w),r1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er2.l\\),r1" \
+       "sub.w @(0x12345678:32,er2.l),r1"
+gdb_test "x" "sub.w\t@0x1234(:16|),r1" \
+       "sub.w @0x1234:16,r1"
+gdb_test "x" "sub.w\t@0x12345678(:32|),r1" \
+       "sub.w @0x12345678:32,r1"
+gdb_test "x" "sub.w\t@er3,@er1" \
+       "sub.w @er3,@er1"
+gdb_test "x" "sub.w\t@er3,@\\(0x6(:2|),er1\\)" \
+       "sub.w @er3,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@er3,@-er1" \
+       "sub.w @er3,@-er1"
+gdb_test "x" "sub.w\t@er3,@er1\\+" \
+       "sub.w @er3,@er1+"
+gdb_test "x" "sub.w\t@er3,@er1-" \
+       "sub.w @er3,@er1-"
+gdb_test "x" "sub.w\t@er3,@\\+er1" \
+       "sub.w @er3,@+er1"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@er3,@0x9abc(:16|)" \
+       "sub.w @er3,@0x9abc:16"
+gdb_test "x" "sub.w\t@er3,@0x9abcdef0(:32|)" \
+       "sub.w @er3,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@-er3,@er1" \
+       "sub.w @-er3,@er1"
+gdb_test "x" "sub.w\t@-er3,@\\(0x6(:2|),er1\\)" \
+       "sub.w @-er3,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@-er3,@-er1" \
+       "sub.w @-er3,@-er1"
+gdb_test "x" "sub.w\t@-er3,@er1\\+" \
+       "sub.w @-er3,@er1+"
+gdb_test "x" "sub.w\t@-er3,@er1-" \
+       "sub.w @-er3,@er1-"
+gdb_test "x" "sub.w\t@-er3,@\\+er1" \
+       "sub.w @-er3,@+er1"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@-er3,@0x9abc(:16|)" \
+       "sub.w @-er3,@0x9abc:16"
+gdb_test "x" "sub.w\t@-er3,@0x9abcdef0(:32|)" \
+       "sub.w @-er3,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@er3\\+,@er1" \
+       "sub.w @er3+,@er1"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x6(:2|),er1\\)" \
+       "sub.w @er3+,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@er3\\+,@-er1" \
+       "sub.w @er3+,@-er1"
+gdb_test "x" "sub.w\t@er3\\+,@er1\\+" \
+       "sub.w @er3+,@er1+"
+gdb_test "x" "sub.w\t@er3\\+,@er1-" \
+       "sub.w @er3+,@er1-"
+gdb_test "x" "sub.w\t@er3\\+,@\\+er1" \
+       "sub.w @er3+,@+er1"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@er3\\+,@0x9abc(:16|)" \
+       "sub.w @er3+,@0x9abc:16"
+gdb_test "x" "sub.w\t@er3\\+,@0x9abcdef0(:32|)" \
+       "sub.w @er3+,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@er3-,@er1" \
+       "sub.w @er3-,@er1"
+gdb_test "x" "sub.w\t@er3-,@\\(0x6(:2|),er1\\)" \
+       "sub.w @er3-,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@er3-,@-er1" \
+       "sub.w @er3-,@-er1"
+gdb_test "x" "sub.w\t@er3-,@er1\\+" \
+       "sub.w @er3-,@er1+"
+gdb_test "x" "sub.w\t@er3-,@er1-" \
+       "sub.w @er3-,@er1-"
+gdb_test "x" "sub.w\t@er3-,@\\+er1" \
+       "sub.w @er3-,@+er1"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@er3-,@0x9abc(:16|)" \
+       "sub.w @er3-,@0x9abc:16"
+gdb_test "x" "sub.w\t@er3-,@0x9abcdef0(:32|)" \
+       "sub.w @er3-,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\+er3,@er1" \
+       "sub.w @+er3,@er1"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x6(:2|),er1\\)" \
+       "sub.w @+er3,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\+er3,@-er1" \
+       "sub.w @+er3,@-er1"
+gdb_test "x" "sub.w\t@\\+er3,@er1\\+" \
+       "sub.w @+er3,@er1+"
+gdb_test "x" "sub.w\t@\\+er3,@er1-" \
+       "sub.w @+er3,@er1-"
+gdb_test "x" "sub.w\t@\\+er3,@\\+er1" \
+       "sub.w @+er3,@+er1"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\+er3,@0x9abc(:16|)" \
+       "sub.w @+er3,@0x9abc:16"
+gdb_test "x" "sub.w\t@\\+er3,@0x9abcdef0(:32|)" \
+       "sub.w @+er3,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@er1" \
+       "sub.w @(0x1234:16,er3),@er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x1234:16,er3),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "sub.w @(0x1234:16,er3),@-er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "sub.w @(0x1234:16,er3),@er1+"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "sub.w @(0x1234:16,er3),@er1-"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "sub.w @(0x1234:16,er3),@+er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "sub.w @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "sub.w @(0x12345678:32,er3),@er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "sub.w @(0x12345678:32,er3),@-er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "sub.w @(0x12345678:32,er3),@er1+"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "sub.w @(0x12345678:32,er3),@er1-"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "sub.w @(0x12345678:32,er3),@+er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "sub.w @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "sub.w @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "sub.w @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "sub.w @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "sub.w @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "sub.w @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "sub.w @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "sub.w @(0x1234:16,r3.w),@er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "sub.w @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "sub.w @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "sub.w @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "sub.w @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "sub.w @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "sub.w @(0x1234:16,er3.l),@er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "sub.w @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "sub.w @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "sub.w @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "sub.w @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "sub.w @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "sub.w @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "sub.w @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "sub.w @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "sub.w @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "sub.w @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "sub.w @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "sub.w @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "sub.w @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "sub.w @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "sub.w @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "sub.w @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "sub.w @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "sub.w @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "sub.w @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "sub.w @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "sub.w @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "sub.w @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "sub.w @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "sub.w @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@0x1234(:16|),@er1" \
+       "sub.w @0x1234:16,@er1"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "sub.w @0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@-er1" \
+       "sub.w @0x1234:16,@-er1"
+gdb_test "x" "sub.w\t@0x1234(:16|),@er1\\+" \
+       "sub.w @0x1234:16,@er1+"
+gdb_test "x" "sub.w\t@0x1234(:16|),@er1-" \
+       "sub.w @0x1234:16,@er1-"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\+er1" \
+       "sub.w @0x1234:16,@+er1"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@0x1234(:16|),@0x9abc(:16|)" \
+       "sub.w @0x1234:16,@0x9abc:16"
+gdb_test "x" "sub.w\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "sub.w @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@er1" \
+       "sub.w @0x12345678:32,@er1"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x6(:2|),er1\\)" \
+       "sub.w @0x12345678:32,@(0x6:2,er1)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@-er1" \
+       "sub.w @0x12345678:32,@-er1"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@er1\\+" \
+       "sub.w @0x12345678:32,@er1+"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@er1-" \
+       "sub.w @0x12345678:32,@er1-"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\+er1" \
+       "sub.w @0x12345678:32,@+er1"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.w @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.w @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.w @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.w @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.w @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.w @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.w @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "sub.w @0x12345678:32,@0x9abc:16"
+gdb_test "x" "sub.w\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "sub.w @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t#0x12345678(:32|),er1" \
+       "sub.l #0x12345678:32,er1"
+gdb_test "x" "sub.l\t#0x1234(:16|),er1" \
+       "sub.l #0x1234:16,er1"
+gdb_test "x" "sub.l\t#0x7(:3|),er2" \
+       "sub.l #0x7:3,er2"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@er1" \
+       "sub.l #0x12345678:32,@er1"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "sub.l #0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@er1\\+" \
+       "sub.l #0x12345678:32,@er1+"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@-er1" \
+       "sub.l #0x12345678:32,@-er1"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\+er1" \
+       "sub.l #0x12345678:32,@+er1"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@er1-" \
+       "sub.l #0x12345678:32,@er1-"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l #0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l #0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l #0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l #0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l #0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l #0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l #0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@0x9abc(:16|)" \
+       "sub.l #0x12345678:32,@0x9abc:16"
+gdb_test "x" "sub.l\t#0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "sub.l #0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t#0x1234(:16|),@er1" \
+       "sub.l #0x1234:16,@er1"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "sub.l #0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@er1\\+" \
+       "sub.l #0x1234:16,@er1+"
+gdb_test "x" "sub.l\t#0x1234(:16|),@-er1" \
+       "sub.l #0x1234:16,@-er1"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\+er1" \
+       "sub.l #0x1234:16,@+er1"
+gdb_test "x" "sub.l\t#0x1234(:16|),@er1-" \
+       "sub.l #0x1234:16,@er1-"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t#0x1234(:16|),@0x9abc(:16|)" \
+       "sub.l #0x1234:16,@0x9abc:16"
+gdb_test "x" "sub.l\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "sub.l #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "sub.l\ter3,er1" \
+       "sub.l er3,er1"
+gdb_test "x" "sub.l\ter3,@er1" \
+       "sub.l er3,@er1"
+gdb_test "x" "sub.l\ter3,@\\(0xc(:2|),er1\\)" \
+       "sub.l er3,@(0xc:2,er1)"
+gdb_test "x" "sub.l\ter3,@er1\\+" \
+       "sub.l er3,@er1+"
+gdb_test "x" "sub.l\ter3,@-er1" \
+       "sub.l er3,@-er1"
+gdb_test "x" "sub.l\ter3,@\\+er1" \
+       "sub.l er3,@+er1"
+gdb_test "x" "sub.l\ter3,@er1-" \
+       "sub.l er3,@er1-"
+gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),er1\\)" \
+       "sub.l er3,@(0x1234:16,er1)"
+gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),er1\\)" \
+       "sub.l er3,@(0x12345678:32,er1)"
+gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),r2l.b\\)" \
+       "sub.l er3,@(0x1234:16,r2l.b)"
+gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),r2.w\\)" \
+       "sub.l er3,@(0x1234:16,r2.w)"
+gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),er2.l\\)" \
+       "sub.l er3,@(0x1234:16,er2.l)"
+gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "sub.l er3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),r2.w\\)" \
+       "sub.l er3,@(0x12345678:32,r2.w)"
+gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),er2.l\\)" \
+       "sub.l er3,@(0x12345678:32,er2.l)"
+gdb_test "x" "sub.l\ter3,@0x1234(:16|)" \
+       "sub.l er3,@0x1234:16"
+gdb_test "x" "sub.l\ter3,@0x12345678(:32|)" \
+       "sub.l er3,@0x12345678:32"
+gdb_test "x" "sub.l\t@er3,er1" \
+       "sub.l @er3,er1"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),er1" \
+       "sub.l @(0xc:2,er3),er1"
+gdb_test "x" "sub.l\t@er3\\+,er1" \
+       "sub.l @er3+,er1"
+gdb_test "x" "sub.l\t@-er3,er1" \
+       "sub.l @-er3,er1"
+gdb_test "x" "sub.l\t@\\+er3,er1" \
+       "sub.l @+er3,er1"
+gdb_test "x" "sub.l\t@er3-,er1" \
+       "sub.l @er3-,er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er1\\),er1" \
+       "sub.l @(0x1234:16,er1),er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er1\\),er1" \
+       "sub.l @(0x12345678:32,er1),er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r2l.b\\),er1" \
+       "sub.l @(0x1234:16,r2l.b),er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r2.w\\),er1" \
+       "sub.l @(0x1234:16,r2.w),er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er2.l\\),er1" \
+       "sub.l @(0x1234:16,er2.l),er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r2l.b\\),er1" \
+       "sub.l @(0x12345678:32,r2l.b),er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r2.w\\),er1" \
+       "sub.l @(0x12345678:32,r2.w),er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er2.l\\),er1" \
+       "sub.l @(0x12345678:32,er2.l),er1"
+gdb_test "x" "sub.l\t@0x1234(:16|),er1" \
+       "sub.l @0x1234:16,er1"
+gdb_test "x" "sub.l\t@0x12345678(:32|),er1" \
+       "sub.l @0x12345678:32,er1"
+gdb_test "x" "sub.l\t@er3,@er1" \
+       "sub.l @er3,@er1"
+gdb_test "x" "sub.l\t@er3,@\\(0xc(:2|),er1\\)" \
+       "sub.l @er3,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@er3,@-er1" \
+       "sub.l @er3,@-er1"
+gdb_test "x" "sub.l\t@er3,@er1\\+" \
+       "sub.l @er3,@er1+"
+gdb_test "x" "sub.l\t@er3,@er1-" \
+       "sub.l @er3,@er1-"
+gdb_test "x" "sub.l\t@er3,@\\+er1" \
+       "sub.l @er3,@+er1"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@er3,@0x9abc(:16|)" \
+       "sub.l @er3,@0x9abc:16"
+gdb_test "x" "sub.l\t@er3,@0x9abcdef0(:32|)" \
+       "sub.l @er3,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@er1" \
+       "sub.l @(0xc:2,er3),@er1"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0xc:2,er3),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@-er1" \
+       "sub.l @(0xc:2,er3),@-er1"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@er1\\+" \
+       "sub.l @(0xc:2,er3),@er1+"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@er1-" \
+       "sub.l @(0xc:2,er3),@er1-"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\+er1" \
+       "sub.l @(0xc:2,er3),@+er1"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@0x9abc(:16|)" \
+       "sub.l @(0xc:2,er3),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0xc:2,er3),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@-er3,@er1" \
+       "sub.l @-er3,@er1"
+gdb_test "x" "sub.l\t@-er3,@\\(0xc(:2|),er1\\)" \
+       "sub.l @-er3,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@-er3,@-er1" \
+       "sub.l @-er3,@-er1"
+gdb_test "x" "sub.l\t@-er3,@er1\\+" \
+       "sub.l @-er3,@er1+"
+gdb_test "x" "sub.l\t@-er3,@er1-" \
+       "sub.l @-er3,@er1-"
+gdb_test "x" "sub.l\t@-er3,@\\+er1" \
+       "sub.l @-er3,@+er1"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@-er3,@0x9abc(:16|)" \
+       "sub.l @-er3,@0x9abc:16"
+gdb_test "x" "sub.l\t@-er3,@0x9abcdef0(:32|)" \
+       "sub.l @-er3,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@er3\\+,@er1" \
+       "sub.l @er3+,@er1"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0xc(:2|),er1\\)" \
+       "sub.l @er3+,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@er3\\+,@-er1" \
+       "sub.l @er3+,@-er1"
+gdb_test "x" "sub.l\t@er3\\+,@er1\\+" \
+       "sub.l @er3+,@er1+"
+gdb_test "x" "sub.l\t@er3\\+,@er1-" \
+       "sub.l @er3+,@er1-"
+gdb_test "x" "sub.l\t@er3\\+,@\\+er1" \
+       "sub.l @er3+,@+er1"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@er3\\+,@0x9abc(:16|)" \
+       "sub.l @er3+,@0x9abc:16"
+gdb_test "x" "sub.l\t@er3\\+,@0x9abcdef0(:32|)" \
+       "sub.l @er3+,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@er3-,@er1" \
+       "sub.l @er3-,@er1"
+gdb_test "x" "sub.l\t@er3-,@\\(0xc(:2|),er1\\)" \
+       "sub.l @er3-,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@er3-,@-er1" \
+       "sub.l @er3-,@-er1"
+gdb_test "x" "sub.l\t@er3-,@er1\\+" \
+       "sub.l @er3-,@er1+"
+gdb_test "x" "sub.l\t@er3-,@er1-" \
+       "sub.l @er3-,@er1-"
+gdb_test "x" "sub.l\t@er3-,@\\+er1" \
+       "sub.l @er3-,@+er1"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@er3-,@0x9abc(:16|)" \
+       "sub.l @er3-,@0x9abc:16"
+gdb_test "x" "sub.l\t@er3-,@0x9abcdef0(:32|)" \
+       "sub.l @er3-,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\+er3,@er1" \
+       "sub.l @+er3,@er1"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0xc(:2|),er1\\)" \
+       "sub.l @+er3,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\+er3,@-er1" \
+       "sub.l @+er3,@-er1"
+gdb_test "x" "sub.l\t@\\+er3,@er1\\+" \
+       "sub.l @+er3,@er1+"
+gdb_test "x" "sub.l\t@\\+er3,@er1-" \
+       "sub.l @+er3,@er1-"
+gdb_test "x" "sub.l\t@\\+er3,@\\+er1" \
+       "sub.l @+er3,@+er1"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\+er3,@0x9abc(:16|)" \
+       "sub.l @+er3,@0x9abc:16"
+gdb_test "x" "sub.l\t@\\+er3,@0x9abcdef0(:32|)" \
+       "sub.l @+er3,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@er1" \
+       "sub.l @(0x1234:16,er3),@er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x1234:16,er3),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "sub.l @(0x1234:16,er3),@-er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "sub.l @(0x1234:16,er3),@er1+"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "sub.l @(0x1234:16,er3),@er1-"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "sub.l @(0x1234:16,er3),@+er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "sub.l @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "sub.l @(0x12345678:32,er3),@er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x12345678:32,er3),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "sub.l @(0x12345678:32,er3),@-er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "sub.l @(0x12345678:32,er3),@er1+"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "sub.l @(0x12345678:32,er3),@er1-"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "sub.l @(0x12345678:32,er3),@+er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "sub.l @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "sub.l @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "sub.l @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "sub.l @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "sub.l @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "sub.l @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "sub.l @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "sub.l @(0x1234:16,r3.w),@er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "sub.l @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "sub.l @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "sub.l @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "sub.l @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "sub.l @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "sub.l @(0x1234:16,er3.l),@er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "sub.l @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "sub.l @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "sub.l @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "sub.l @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "sub.l @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "sub.l @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "sub.l @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "sub.l @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "sub.l @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "sub.l @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "sub.l @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "sub.l @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "sub.l @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "sub.l @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "sub.l @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "sub.l @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "sub.l @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "sub.l @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "sub.l @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "sub.l @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "sub.l @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "sub.l @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "sub.l @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "sub.l @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@0x1234(:16|),@er1" \
+       "sub.l @0x1234:16,@er1"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "sub.l @0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@-er1" \
+       "sub.l @0x1234:16,@-er1"
+gdb_test "x" "sub.l\t@0x1234(:16|),@er1\\+" \
+       "sub.l @0x1234:16,@er1+"
+gdb_test "x" "sub.l\t@0x1234(:16|),@er1-" \
+       "sub.l @0x1234:16,@er1-"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\+er1" \
+       "sub.l @0x1234:16,@+er1"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@0x1234(:16|),@0x9abc(:16|)" \
+       "sub.l @0x1234:16,@0x9abc:16"
+gdb_test "x" "sub.l\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "sub.l @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@er1" \
+       "sub.l @0x12345678:32,@er1"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "sub.l @0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@-er1" \
+       "sub.l @0x12345678:32,@-er1"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@er1\\+" \
+       "sub.l @0x12345678:32,@er1+"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@er1-" \
+       "sub.l @0x12345678:32,@er1-"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\+er1" \
+       "sub.l @0x12345678:32,@+er1"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "sub.l @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "sub.l @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "sub.l @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "sub.l @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "sub.l @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "sub.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "sub.l @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "sub.l @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "sub.l @0x12345678:32,@0x9abc:16"
+gdb_test "x" "sub.l\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "sub.l @0x12345678:32,@0x9abcdef0:32"
diff --git a/gdb/testsuite/gdb.disasm/t04_sub.s b/gdb/testsuite/gdb.disasm/t04_sub.s
new file mode 100644 (file)
index 0000000..e89b614
--- /dev/null
@@ -0,0 +1,977 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;arith_1\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    sub.b #0x12:8,@er1                       ;7d10a112\r
+    sub.b #0x12:8,@(0x3:2,er1)                 ;01776818a112\r
+    sub.b #0x12:8,@er1+                      ;01746c18a112\r
+    sub.b #0x12:8,@-er1                      ;01776c18a112\r
+    sub.b #0x12:8,@+er1                      ;01756c18a112\r
+    sub.b #0x12:8,@er1-                      ;01766c18a112\r
+    sub.b #0x12:8,@(0x1234:16,er1)                ;01746e181234a112\r
+    sub.b #0x12:8,@(0x12345678:32,er1)                ;78146a2812345678a112\r
+    sub.b #0x12:8,@(0x1234:16,r2l.b)              ;01756e281234a112\r
+    sub.b #0x12:8,@(0x1234:16,r2.w)              ;01766e281234a112\r
+    sub.b #0x12:8,@(0x1234:16,er2.l)              ;01776e281234a112\r
+    sub.b #0x12:8,@(0x12345678:32,r2l.b)              ;78256a2812345678a112\r
+    sub.b #0x12:8,@(0x12345678:32,r2.w)              ;78266a2812345678a112\r
+    sub.b #0x12:8,@(0x12345678:32,er2.l)              ;78276a2812345678a112\r
+    sub.b #0x12:8,@0xffffff9a:8                      ;7f9aa112\r
+    sub.b #0x12:8,@0x1234:16                     ;6a181234a112\r
+    sub.b #0x12:8,@0x12345678:32                     ;6a3812345678a112\r
+\r
+    sub.b r3h,r1h                           ;1831\r
+\r
+    sub.b r3h,@er1                         ;7d101830\r
+    sub.b r3h,@(0x3:2,er1)                   ;01793133\r
+    sub.b r3h,@er1+                        ;01798133\r
+    sub.b r3h,@-er1                        ;0179b133\r
+    sub.b r3h,@+er1                        ;01799133\r
+    sub.b r3h,@er1-                        ;0179a133\r
+    sub.b r3h,@(0x1234:16,er1)                  ;0179c1331234\r
+    sub.b r3h,@(0x12345678:32,er1)                  ;0179c93312345678\r
+    sub.b r3h,@(0x1234:16,r2l.b)                ;0179d2331234\r
+    sub.b r3h,@(0x1234:16,r2.w)                ;0179e2331234\r
+    sub.b r3h,@(0x1234:16,er2.l)                ;0179f2331234\r
+    sub.b r3h,@(0x12345678:32,r2l.b)                ;0179da3312345678\r
+    sub.b r3h,@(0x12345678:32,r2.w)                ;0179ea3312345678\r
+    sub.b r3h,@(0x12345678:32,er2.l)                ;0179fa3312345678\r
+    sub.b r3h,@0xffffff12:8                        ;7f121830\r
+    sub.b r3h,@0x1234:16                       ;6a1812341830\r
+    sub.b r3h,@0x12345678:32                        ;6a38123456781830\r
+\r
+    sub.b @er3,r1h                         ;7c301801\r
+    sub.b @(0x3:2,er3),r1h                  ;017a3331\r
+    sub.b @er3+,r1h                       ;017a8331\r
+    sub.b @-er3,r1h                       ;017ab331\r
+    sub.b @+er3,r1h                       ;017a9331\r
+    sub.b @er3-,r1h                       ;017aa331\r
+    sub.b @(0x1234:16,er1),r1h                  ;017ac1311234\r
+    sub.b @(0x12345678:32,er1),r1h                  ;017ac93112345678\r
+    sub.b @(0x1234:16,r2l.b),r1h                ;017ad2311234\r
+    sub.b @(0x1234:16,r2.w),r1h                ;017ae2311234\r
+    sub.b @(0x1234:16,er2.l),r1h                ;017af2311234\r
+    sub.b @(0x12345678:32,r2l.b),r1h                ;017ada3112345678\r
+    sub.b @(0x12345678:32,r2.w),r1h                ;017aea3112345678\r
+    sub.b @(0x12345678:32,er2.l),r1h                ;017afa3112345678\r
+    sub.b @0xffffff12:8,r1h                        ;7e121801\r
+    sub.b @0x1234:16,r1h                       ;6a1012341801\r
+    sub.b @0x12345678:32,r1h                       ;6a30123456781801\r
+\r
+    sub.b @er3,@er1                                ;7c350130\r
+    sub.b @er3,@(3:2,er1)                          ;7c353130\r
+    sub.b @er3,@-er1                               ;7c35b130\r
+    sub.b @er3,@er1+                               ;7c358130\r
+    sub.b @er3,@er1-                               ;7c35a130\r
+    sub.b @er3,@+er1                               ;7c359130\r
+    sub.b @er3,@(0xffff9abc:16,er1)                ;7c35c1309abc\r
+    sub.b @er3,@(0x9abcdef0:32,er1)                ;7c35c9309abcdef0\r
+    sub.b @er3,@(0xffff9abc:16,r2l.b)              ;7c35d2309abc\r
+    sub.b @er3,@(0xffff9abc:16,r2.w)              ;7c35e2309abc\r
+    sub.b @er3,@(0xffff9abc:16,er2.l)              ;7c35f2309abc\r
+    sub.b @er3,@(0x9abcdef0:32,r2l.b)              ;7c35da309abcdef0\r
+    sub.b @er3,@(0x9abcdef0:32,r2.w)              ;7c35ea309abcdef0\r
+    sub.b @er3,@(0x9abcdef0:32,er2.l)              ;7c35fa309abcdef0\r
+    sub.b @er3,@0xffff9abc:16                      ;7c3540309abc\r
+    sub.b @er3,@0x9abcdef0:32                      ;7c3548309abcdef0\r
+\r
+    sub.b @-er3,@er1                               ;01776c3c0130\r
+    sub.b @-er3,@(3:2,er1)                         ;01776c3c3130\r
+    sub.b @-er3,@-er1                              ;01776c3cb130\r
+    sub.b @-er3,@er1+                              ;01776c3c8130\r
+    sub.b @-er3,@er1-                              ;01776c3ca130\r
+    sub.b @-er3,@+er1                              ;01776c3c9130\r
+    sub.b @-er3,@(0xffff9abc:16,er1)               ;01776c3cc1309abc\r
+    sub.b @-er3,@(0x9abcdef0:32,er1)               ;01776c3cc9309abcdef0\r
+    sub.b @-er3,@(0xffff9abc:16,r2l.b)             ;01776c3cd2309abc\r
+    sub.b @-er3,@(0xffff9abc:16,r2.w)             ;01776c3ce2309abc\r
+    sub.b @-er3,@(0xffff9abc:16,er2.l)             ;01776c3cf2309abc\r
+    sub.b @-er3,@(0x9abcdef0:32,r2l.b)             ;01776c3cda309abcdef0\r
+    sub.b @-er3,@(0x9abcdef0:32,r2.w)             ;01776c3cea309abcdef0\r
+    sub.b @-er3,@(0x9abcdef0:32,er2.l)             ;01776c3cfa309abcdef0\r
+    sub.b @-er3,@0xffff9abc:16                     ;01776c3c40309abc\r
+    sub.b @-er3,@0x9abcdef0:32                     ;01776c3c48309abcdef0\r
+\r
+    sub.b @er3+,@er1                               ;01746c3c0130\r
+    sub.b @er3+,@(3:2,er1)                         ;01746c3c3130\r
+    sub.b @er3+,@-er1                              ;01746c3cb130\r
+    sub.b @er3+,@er1+                              ;01746c3c8130\r
+    sub.b @er3+,@er1-                              ;01746c3ca130\r
+    sub.b @er3+,@+er1                              ;01746c3c9130\r
+    sub.b @er3+,@(0xffff9abc:16,er1)               ;01746c3cc1309abc\r
+    sub.b @er3+,@(0x9abcdef0:32,er1)               ;01746c3cc9309abcdef0\r
+    sub.b @er3+,@(0xffff9abc:16,r2l.b)             ;01746c3cd2309abc\r
+    sub.b @er3+,@(0xffff9abc:16,r2.w)             ;01746c3ce2309abc\r
+    sub.b @er3+,@(0xffff9abc:16,er2.l)             ;01746c3cf2309abc\r
+    sub.b @er3+,@(0x9abcdef0:32,r2l.b)             ;01746c3cda309abcdef0\r
+    sub.b @er3+,@(0x9abcdef0:32,r2.w)             ;01746c3cea309abcdef0\r
+    sub.b @er3+,@(0x9abcdef0:32,er2.l)             ;01746c3cfa309abcdef0\r
+    sub.b @er3+,@0xffff9abc:16                     ;01746c3c40309abc\r
+    sub.b @er3+,@0x9abcdef0:32                     ;01746c3c48309abcdef0\r
+\r
+    sub.b @er3-,@er1                               ;01766c3c0130\r
+    sub.b @er3-,@(3:2,er1)                         ;01766c3c3130\r
+    sub.b @er3-,@-er1                              ;01766c3cb130\r
+    sub.b @er3-,@er1+                              ;01766c3c8130\r
+    sub.b @er3-,@er1-                              ;01766c3ca130\r
+    sub.b @er3-,@+er1                              ;01766c3c9130\r
+    sub.b @er3-,@(0xffff9abc:16,er1)               ;01766c3cc1309abc\r
+    sub.b @er3-,@(0x9abcdef0:32,er1)               ;01766c3cc9309abcdef0\r
+    sub.b @er3-,@(0xffff9abc:16,r2l.b)             ;01766c3cd2309abc\r
+    sub.b @er3-,@(0xffff9abc:16,r2.w)             ;01766c3ce2309abc\r
+    sub.b @er3-,@(0xffff9abc:16,er2.l)             ;01766c3cf2309abc\r
+    sub.b @er3-,@(0x9abcdef0:32,r2l.b)             ;01766c3cda309abcdef0\r
+    sub.b @er3-,@(0x9abcdef0:32,r2.w)             ;01766c3cea309abcdef0\r
+    sub.b @er3-,@(0x9abcdef0:32,er2.l)             ;01766c3cfa309abcdef0\r
+    sub.b @er3-,@0xffff9abc:16                     ;01766c3c40309abc\r
+    sub.b @er3-,@0x9abcdef0:32                     ;01766c3c48309abcdef0\r
+\r
+    sub.b @+er3,@er1                               ;01756c3c0130\r
+    sub.b @+er3,@(3:2,er1)                         ;01756c3c3130\r
+    sub.b @+er3,@-er1                              ;01756c3cb130\r
+    sub.b @+er3,@er1+                              ;01756c3c8130\r
+    sub.b @+er3,@er1-                              ;01756c3ca130\r
+    sub.b @+er3,@+er1                              ;01756c3c9130\r
+    sub.b @+er3,@(0xffff9abc:16,er1)               ;01756c3cc1309abc\r
+    sub.b @+er3,@(0x9abcdef0:32,er1)               ;01756c3cc9309abcdef0\r
+    sub.b @+er3,@(0xffff9abc:16,r2l.b)             ;01756c3cd2309abc\r
+    sub.b @+er3,@(0xffff9abc:16,r2.w)             ;01756c3ce2309abc\r
+    sub.b @+er3,@(0xffff9abc:16,er2.l)             ;01756c3cf2309abc\r
+    sub.b @+er3,@(0x9abcdef0:32,r2l.b)             ;01756c3cda309abcdef0\r
+    sub.b @+er3,@(0x9abcdef0:32,r2.w)             ;01756c3cea309abcdef0\r
+    sub.b @+er3,@(0x9abcdef0:32,er2.l)             ;01756c3cfa309abcdef0\r
+    sub.b @+er3,@0xffff9abc:16                     ;01756c3c40309abc\r
+    sub.b @+er3,@0x9abcdef0:32                     ;01756c3c48309abcdef0\r
+\r
+    sub.b @(0x1234:16,er3),@er1                         ;01746e3c12340130\r
+    sub.b @(0x1234:16,er3),@(3:2,er1)                   ;01746e3c12343130\r
+    sub.b @(0x1234:16,er3),@-er1                        ;01746e3c1234b130\r
+    sub.b @(0x1234:16,er3),@er1+                        ;01746e3c12348130\r
+    sub.b @(0x1234:16,er3),@er1-                        ;01746e3c1234a130\r
+    sub.b @(0x1234:16,er3),@+er1                        ;01746e3c12349130\r
+    sub.b @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01746e3c1234c1309abc\r
+    sub.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01746e3c1234c9309abcdef0\r
+    sub.b @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01746e3c1234d2309abc\r
+    sub.b @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01746e3c1234e2309abc\r
+    sub.b @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01746e3c1234f2309abc\r
+    sub.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01746e3c1234da309abcdef0\r
+    sub.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01746e3c1234ea309abcdef0\r
+    sub.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01746e3c1234fa309abcdef0\r
+    sub.b @(0x1234:16,er3),@0xffff9abc:16               ;01746e3c123440309abc\r
+    sub.b @(0x1234:16,er3),@0x9abcdef0:32               ;01746e3c123448309abcdef0\r
+\r
+    sub.b @(0x12345678:32,er3),@er1                         ;78346a2c123456780130\r
+    sub.b @(0x12345678:32,er3),@(3:2,er1)                   ;78346a2c123456783130\r
+    sub.b @(0x12345678:32,er3),@-er1                        ;78346a2c12345678b130\r
+    sub.b @(0x12345678:32,er3),@er1+                        ;78346a2c123456788130\r
+    sub.b @(0x12345678:32,er3),@er1-                        ;78346a2c12345678a130\r
+    sub.b @(0x12345678:32,er3),@+er1                        ;78346a2c123456789130\r
+    sub.b @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346a2c12345678c1309abc\r
+    sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346a2c12345678c9309abcdef0\r
+    sub.b @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346a2c12345678d2309abc\r
+    sub.b @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346a2c12345678e2309abc\r
+    sub.b @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346a2c12345678f2309abc\r
+    sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346a2c12345678da309abcdef0\r
+    sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346a2c12345678ea309abcdef0\r
+    sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346a2c12345678fa309abcdef0\r
+    sub.b @(0x12345678:32,er3),@0xffff9abc:16               ;78346a2c1234567840309abc\r
+    sub.b @(0x12345678:32,er3),@0x9abcdef0:32               ;78346a2c1234567848309abcdef0\r
+\r
+    sub.b @(0x1234:16,r3l.b),@er1                       ;01756e3c12340130\r
+    sub.b @(0x1234:16,r3l.b),@(3:2,er1)                 ;01756e3c12343130\r
+    sub.b @(0x1234:16,r3l.b),@-er1                      ;01756e3c1234b130\r
+    sub.b @(0x1234:16,r3l.b),@er1+                      ;01756e3c12348130\r
+    sub.b @(0x1234:16,r3l.b),@er1-                      ;01756e3c1234a130\r
+    sub.b @(0x1234:16,r3l.b),@+er1                      ;01756e3c12349130\r
+    sub.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01756e3c1234c1309abc\r
+    sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01756e3c1234c9309abcdef0\r
+    sub.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01756e3c1234d2309abc\r
+    sub.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01756e3c1234e2309abc\r
+    sub.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01756e3c1234f2309abc\r
+    sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01756e3c1234da309abcdef0\r
+    sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01756e3c1234ea309abcdef0\r
+    sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01756e3c1234fa309abcdef0\r
+    sub.b @(0x1234:16,r3l.b),@0xffff9abc:16             ;01756e3c123440309abc\r
+    sub.b @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01756e3c123448309abcdef0\r
+\r
+    sub.b @(0x1234:16,r3.w),@er1                       ;01766e3c12340130\r
+    sub.b @(0x1234:16,r3.w),@(3:2,er1)                 ;01766e3c12343130\r
+    sub.b @(0x1234:16,r3.w),@-er1                      ;01766e3c1234b130\r
+    sub.b @(0x1234:16,r3.w),@er1+                      ;01766e3c12348130\r
+    sub.b @(0x1234:16,r3.w),@er1-                      ;01766e3c1234a130\r
+    sub.b @(0x1234:16,r3.w),@+er1                      ;01766e3c12349130\r
+    sub.b @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01766e3c1234c1309abc\r
+    sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01766e3c1234c9309abcdef0\r
+    sub.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01766e3c1234d2309abc\r
+    sub.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01766e3c1234e2309abc\r
+    sub.b @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01766e3c1234f2309abc\r
+    sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01766e3c1234da309abcdef0\r
+    sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01766e3c1234ea309abcdef0\r
+    sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01766e3c1234fa309abcdef0\r
+    sub.b @(0x1234:16,r3.w),@0xffff9abc:16             ;01766e3c123440309abc\r
+    sub.b @(0x1234:16,r3.w),@0x9abcdef0:32             ;01766e3c123448309abcdef0\r
+\r
+    sub.b @(0x1234:16,er3.l),@er1                       ;01776e3c12340130\r
+    sub.b @(0x1234:16,er3.l),@(3:2,er1)                 ;01776e3c12343130\r
+    sub.b @(0x1234:16,er3.l),@-er1                      ;01776e3c1234b130\r
+    sub.b @(0x1234:16,er3.l),@er1+                      ;01776e3c12348130\r
+    sub.b @(0x1234:16,er3.l),@er1-                      ;01776e3c1234a130\r
+    sub.b @(0x1234:16,er3.l),@+er1                      ;01776e3c12349130\r
+    sub.b @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01776e3c1234c1309abc\r
+    sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01776e3c1234c9309abcdef0\r
+    sub.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01776e3c1234d2309abc\r
+    sub.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01776e3c1234e2309abc\r
+    sub.b @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01776e3c1234f2309abc\r
+    sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01776e3c1234da309abcdef0\r
+    sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01776e3c1234ea309abcdef0\r
+    sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01776e3c1234fa309abcdef0\r
+    sub.b @(0x1234:16,er3.l),@0xffff9abc:16             ;01776e3c123440309abc\r
+    sub.b @(0x1234:16,er3.l),@0x9abcdef0:32             ;01776e3c123448309abcdef0\r
+\r
+    sub.b @(0x12345678:32,r3l.b),@er1                       ;78356a2c123456780130\r
+    sub.b @(0x12345678:32,r3l.b),@(3:2,er1)                 ;78356a2c123456783130\r
+    sub.b @(0x12345678:32,r3l.b),@-er1                      ;78356a2c12345678b130\r
+    sub.b @(0x12345678:32,r3l.b),@er1+                      ;78356a2c123456788130\r
+    sub.b @(0x12345678:32,r3l.b),@er1-                      ;78356a2c12345678a130\r
+    sub.b @(0x12345678:32,r3l.b),@+er1                      ;78356a2c123456789130\r
+    sub.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356a2c12345678c1309abc\r
+    sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356a2c12345678c9309abcdef0\r
+    sub.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356a2c12345678d2309abc\r
+    sub.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356a2c12345678e2309abc\r
+    sub.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356a2c12345678f2309abc\r
+    sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356a2c12345678da309abcdef0\r
+    sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356a2c12345678ea309abcdef0\r
+    sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356a2c12345678fa309abcdef0\r
+    sub.b @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356a2c1234567840309abc\r
+    sub.b @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356a2c1234567848309abcdef0\r
+\r
+    sub.b @(0x12345678:32,r3.w),@er1                       ;78366a2c123456780130\r
+    sub.b @(0x12345678:32,r3.w),@(3:2,er1)                 ;78366a2c123456783130\r
+    sub.b @(0x12345678:32,r3.w),@-er1                      ;78366a2c12345678b130\r
+    sub.b @(0x12345678:32,r3.w),@er1+                      ;78366a2c123456788130\r
+    sub.b @(0x12345678:32,r3.w),@er1-                      ;78366a2c12345678a130\r
+    sub.b @(0x12345678:32,r3.w),@+er1                      ;78366a2c123456789130\r
+    sub.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366a2c12345678c1309abc\r
+    sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366a2c12345678c9309abcdef0\r
+    sub.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366a2c12345678d2309abc\r
+    sub.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366a2c12345678e2309abc\r
+    sub.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366a2c12345678f2309abc\r
+    sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366a2c12345678da309abcdef0\r
+    sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366a2c12345678ea309abcdef0\r
+    sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366a2c12345678fa309abcdef0\r
+    sub.b @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366a2c1234567840309abc\r
+    sub.b @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366a2c1234567848309abcdef0\r
+\r
+    sub.b @(0x12345678:32,er3.l),@er1                       ;78376a2c123456780130\r
+    sub.b @(0x12345678:32,er3.l),@(3:2,er1)                 ;78376a2c123456783130\r
+    sub.b @(0x12345678:32,er3.l),@-er1                      ;78376a2c12345678b130\r
+    sub.b @(0x12345678:32,er3.l),@er1+                      ;78376a2c123456788130\r
+    sub.b @(0x12345678:32,er3.l),@er1-                      ;78376a2c12345678a130\r
+    sub.b @(0x12345678:32,er3.l),@+er1                      ;78376a2c123456789130\r
+    sub.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376a2c12345678c1309abc\r
+    sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376a2c12345678c9309abcdef0\r
+    sub.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376a2c12345678d2309abc\r
+    sub.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376a2c12345678e2309abc\r
+    sub.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376a2c12345678f2309abc\r
+    sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376a2c12345678da309abcdef0\r
+    sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376a2c12345678ea309abcdef0\r
+    sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376a2c12345678fa309abcdef0\r
+    sub.b @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376a2c1234567840309abc\r
+    sub.b @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376a2c1234567848309abcdef0\r
+\r
+    sub.b @0x1234:16,@er1                              ;6a1512340130\r
+    sub.b @0x1234:16,@(3:2,er1)                        ;6a1512343130\r
+    sub.b @0x1234:16,@-er1                             ;6a151234b130\r
+    sub.b @0x1234:16,@er1+                             ;6a1512348130\r
+    sub.b @0x1234:16,@er1-                             ;6a151234a130\r
+    sub.b @0x1234:16,@+er1                             ;6a1512349130\r
+    sub.b @0x1234:16,@(0xffff9abc:16,er1)              ;6a151234c1309abc\r
+    sub.b @0x1234:16,@(0x9abcdef0:32,er1)              ;6a151234c9309abcdef0\r
+    sub.b @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6a151234d2309abc\r
+    sub.b @0x1234:16,@(0xffff9abc:16,r2.w)            ;6a151234e2309abc\r
+    sub.b @0x1234:16,@(0xffff9abc:16,er2.l)            ;6a151234f2309abc\r
+    sub.b @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6a151234da309abcdef0\r
+    sub.b @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6a151234ea309abcdef0\r
+    sub.b @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6a151234fa309abcdef0\r
+    sub.b @0x1234:16,@0xffff9abc:16                    ;6a15123440309abc\r
+    sub.b @0x1234:16,@0x9abcdef0:32                    ;6a15123448309abcdef0\r
+\r
+    sub.b @0x12345678:32,@er1                              ;6a35123456780130\r
+    sub.b @0x12345678:32,@(3:2,er1)                        ;6a35123456783130\r
+    sub.b @0x12345678:32,@-er1                             ;6a3512345678b130\r
+    sub.b @0x12345678:32,@er1+                             ;6a35123456788130\r
+    sub.b @0x12345678:32,@er1-                             ;6a3512345678a130\r
+    sub.b @0x12345678:32,@+er1                             ;6a35123456789130\r
+    sub.b @0x12345678:32,@(0xffff9abc:16,er1)              ;6a3512345678c1309abc\r
+    sub.b @0x12345678:32,@(0x9abcdef0:32,er1)              ;6a3512345678c9309abcdef0\r
+    sub.b @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6a3512345678d2309abc\r
+    sub.b @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6a3512345678e2309abc\r
+    sub.b @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6a3512345678f2309abc\r
+    sub.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6a3512345678da309abcdef0\r
+    sub.b @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6a3512345678ea309abcdef0\r
+    sub.b @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6a3512345678fa309abcdef0\r
+    sub.b @0x12345678:32,@0xffff9abc:16                    ;6a351234567840309abc\r
+    sub.b @0x12345678:32,@0x9abcdef0:32                    ;6a351234567848309abcdef0\r
+\r
+    sub.w #0x1234:16,r1                       ;79311234\r
+    sub.w #7:3,r2                         ;1a72\r
+    sub.w #0x1234:16,@er1                      ;015e01301234\r
+    sub.w #0x1234:16,@(0x6:2,er1)             ;015e31301234\r
+    sub.w #0x1234:16,@er1+                     ;015e81301234\r
+    sub.w #0x1234:16,@-er1                     ;015eb1301234\r
+    sub.w #0x1234:16,@+er1                     ;015e91301234\r
+    sub.w #0x1234:16,@er1-                     ;015ea1301234\r
+    sub.w #0x1234:16,@(0xffff9abc:16,er1)               ;015ec1309abc1234\r
+    sub.w #0x1234:16,@(0x9abcdef0:32,er1)               ;015ec9309abcdef01234\r
+    sub.w #0x1234:16,@(0xffff9abc:16,r2l.b)             ;015ed2309abc1234\r
+    sub.w #0x1234:16,@(0xffff9abc:16,r2.w)             ;015ee2309abc1234\r
+    sub.w #0x1234:16,@(0xffff9abc:16,er2.l)             ;015ef2309abc1234\r
+    sub.w #0x1234:16,@(0x9abcdef0:32,r2l.b)             ;015eda309abcdef01234\r
+    sub.w #0x1234:16,@(0x9abcdef0:32,r2.w)             ;015eea309abcdef01234\r
+    sub.w #0x1234:16,@(0x9abcdef0:32,er2.l)             ;015efa309abcdef01234\r
+    sub.w #0x1234:16,@0xffff9abc:16                     ;015e40309abc1234\r
+    sub.w #0x1234:16,@0x9abcdef0:32                     ;015e48309abcdef01234\r
+\r
+    sub.w #0x7:3,@er1                       ;7d901a70\r
+    sub.w #0x7:3,@0x1234:16                     ;6b1812341a70\r
+    sub.w #0x7:3,@0x12345678:32                     ;6b38123456781a70\r
+\r
+    sub.w r3,r1                           ;1931\r
+\r
+    sub.w r3,@er1                         ;7d901930\r
+    sub.w r3,@(0x6:2,er1)                ;01593133\r
+    sub.w r3,@er1+                        ;01598133\r
+    sub.w r3,@-er1                        ;0159b133\r
+    sub.w r3,@+er1                        ;01599133\r
+    sub.w r3,@er1-                        ;0159a133\r
+    sub.w r3,@(0x1234:16,er1)                  ;0159c1331234\r
+    sub.w r3,@(0x12345678:32,er1)                  ;0159c93312345678\r
+    sub.w r3,@(0x1234:16,r2l.b)                ;0159d2331234\r
+    sub.w r3,@(0x1234:16,r2.w)                ;0159e2331234\r
+    sub.w r3,@(0x1234:16,er2.l)                ;0159f2331234\r
+    sub.w r3,@(0x12345678:32,r2l.b)                ;0159da3312345678\r
+    sub.w r3,@(0x12345678:32,r2.w)                ;0159ea3312345678\r
+    sub.w r3,@(0x12345678:32,er2.l)                ;0159fa3312345678\r
+    sub.w r3,@0x1234:16                       ;6b1812341930\r
+    sub.w r3,@0x12345678:32                       ;6b38123456781930\r
+\r
+    sub.w @er3,r1                         ;7cb01901\r
+    sub.w @(0x6:2,er3),r1               ;015a3331\r
+    sub.w @er3+,r1                       ;015a8331\r
+    sub.w @-er3,r1                       ;015ab331\r
+    sub.w @+er3,r1                       ;015a9331\r
+    sub.w @er3-,r1                       ;015aa331\r
+    sub.w @(0x1234:16,er1),r1                  ;015ac1311234\r
+    sub.w @(0x12345678:32,er1),r1                  ;015ac93112345678\r
+    sub.w @(0x1234:16,r2l.b),r1                ;015ad2311234\r
+    sub.w @(0x1234:16,r2.w),r1                ;015ae2311234\r
+    sub.w @(0x1234:16,er2.l),r1                ;015af2311234\r
+    sub.w @(0x12345678:32,r2l.b),r1                ;015ada3112345678\r
+    sub.w @(0x12345678:32,r2.w),r1                ;015aea3112345678\r
+    sub.w @(0x12345678:32,er2.l),r1                ;015afa3112345678\r
+    sub.w @0x1234:16,r1                       ;6b1012341901\r
+    sub.w @0x12345678:32,r1                       ;6b30123456781901\r
+\r
+    sub.w @er3,@er1                                ;7cb50130\r
+    sub.w @er3,@(6:2,er1)                          ;7cb53130\r
+    sub.w @er3,@-er1                               ;7cb5b130\r
+    sub.w @er3,@er1+                               ;7cb58130\r
+    sub.w @er3,@er1-                               ;7cb5a130\r
+    sub.w @er3,@+er1                               ;7cb59130\r
+    sub.w @er3,@(0xffff9abc:16,er1)                ;7cb5c1309abc\r
+    sub.w @er3,@(0x9abcdef0:32,er1)                ;7cb5c9309abcdef0\r
+    sub.w @er3,@(0xffff9abc:16,r2l.b)              ;7cb5d2309abc\r
+    sub.w @er3,@(0xffff9abc:16,r2.w)              ;7cb5e2309abc\r
+    sub.w @er3,@(0xffff9abc:16,er2.l)              ;7cb5f2309abc\r
+    sub.w @er3,@(0x9abcdef0:32,r2l.b)              ;7cb5da309abcdef0\r
+    sub.w @er3,@(0x9abcdef0:32,r2.w)              ;7cb5ea309abcdef0\r
+    sub.w @er3,@(0x9abcdef0:32,er2.l)              ;7cb5fa309abcdef0\r
+    sub.w @er3,@0xffff9abc:16                      ;7cb540309abc\r
+    sub.w @er3,@0x9abcdef0:32                      ;7cb548309abcdef0\r
+\r
+    sub.w @-er3,@er1                               ;01576d3c0130\r
+    sub.w @-er3,@(6:2,er1)                         ;01576d3c3130\r
+    sub.w @-er3,@-er1                              ;01576d3cb130\r
+    sub.w @-er3,@er1+                              ;01576d3c8130\r
+    sub.w @-er3,@er1-                              ;01576d3ca130\r
+    sub.w @-er3,@+er1                              ;01576d3c9130\r
+    sub.w @-er3,@(0xffff9abc:16,er1)               ;01576d3cc1309abc\r
+    sub.w @-er3,@(0x9abcdef0:32,er1)               ;01576d3cc9309abcdef0\r
+    sub.w @-er3,@(0xffff9abc:16,r2l.b)             ;01576d3cd2309abc\r
+    sub.w @-er3,@(0xffff9abc:16,r2.w)             ;01576d3ce2309abc\r
+    sub.w @-er3,@(0xffff9abc:16,er2.l)             ;01576d3cf2309abc\r
+    sub.w @-er3,@(0x9abcdef0:32,r2l.b)             ;01576d3cda309abcdef0\r
+    sub.w @-er3,@(0x9abcdef0:32,r2.w)             ;01576d3cea309abcdef0\r
+    sub.w @-er3,@(0x9abcdef0:32,er2.l)             ;01576d3cfa309abcdef0\r
+    sub.w @-er3,@0xffff9abc:16                     ;01576d3c40309abc\r
+    sub.w @-er3,@0x9abcdef0:32                     ;01576d3c48309abcdef0\r
+\r
+    sub.w @er3+,@er1                               ;01546d3c0130\r
+    sub.w @er3+,@(6:2,er1)                         ;01546d3c3130\r
+    sub.w @er3+,@-er1                              ;01546d3cb130\r
+    sub.w @er3+,@er1+                              ;01546d3c8130\r
+    sub.w @er3+,@er1-                              ;01546d3ca130\r
+    sub.w @er3+,@+er1                              ;01546d3c9130\r
+    sub.w @er3+,@(0xffff9abc:16,er1)               ;01546d3cc1309abc\r
+    sub.w @er3+,@(0x9abcdef0:32,er1)               ;01546d3cc9309abcdef0\r
+    sub.w @er3+,@(0xffff9abc:16,r2l.b)             ;01546d3cd2309abc\r
+    sub.w @er3+,@(0xffff9abc:16,r2.w)             ;01546d3ce2309abc\r
+    sub.w @er3+,@(0xffff9abc:16,er2.l)             ;01546d3cf2309abc\r
+    sub.w @er3+,@(0x9abcdef0:32,r2l.b)             ;01546d3cda309abcdef0\r
+    sub.w @er3+,@(0x9abcdef0:32,r2.w)             ;01546d3cea309abcdef0\r
+    sub.w @er3+,@(0x9abcdef0:32,er2.l)             ;01546d3cfa309abcdef0\r
+    sub.w @er3+,@0xffff9abc:16                     ;01546d3c40309abc\r
+    sub.w @er3+,@0x9abcdef0:32                     ;01546d3c48309abcdef0\r
+\r
+    sub.w @er3-,@er1                               ;01566d3c0130\r
+    sub.w @er3-,@(6:2,er1)                         ;01566d3c3130\r
+    sub.w @er3-,@-er1                              ;01566d3cb130\r
+    sub.w @er3-,@er1+                              ;01566d3c8130\r
+    sub.w @er3-,@er1-                              ;01566d3ca130\r
+    sub.w @er3-,@+er1                              ;01566d3c9130\r
+    sub.w @er3-,@(0xffff9abc:16,er1)               ;01566d3cc1309abc\r
+    sub.w @er3-,@(0x9abcdef0:32,er1)               ;01566d3cc9309abcdef0\r
+    sub.w @er3-,@(0xffff9abc:16,r2l.b)             ;01566d3cd2309abc\r
+    sub.w @er3-,@(0xffff9abc:16,r2.w)             ;01566d3ce2309abc\r
+    sub.w @er3-,@(0xffff9abc:16,er2.l)             ;01566d3cf2309abc\r
+    sub.w @er3-,@(0x9abcdef0:32,r2l.b)             ;01566d3cda309abcdef0\r
+    sub.w @er3-,@(0x9abcdef0:32,r2.w)             ;01566d3cea309abcdef0\r
+    sub.w @er3-,@(0x9abcdef0:32,er2.l)             ;01566d3cfa309abcdef0\r
+    sub.w @er3-,@0xffff9abc:16                     ;01566d3c40309abc\r
+    sub.w @er3-,@0x9abcdef0:32                     ;01566d3c48309abcdef0\r
+\r
+    sub.w @+er3,@er1                               ;01556d3c0130\r
+    sub.w @+er3,@(6:2,er1)                         ;01556d3c3130\r
+    sub.w @+er3,@-er1                              ;01556d3cb130\r
+    sub.w @+er3,@er1+                              ;01556d3c8130\r
+    sub.w @+er3,@er1-                              ;01556d3ca130\r
+    sub.w @+er3,@+er1                              ;01556d3c9130\r
+    sub.w @+er3,@(0xffff9abc:16,er1)               ;01556d3cc1309abc\r
+    sub.w @+er3,@(0x9abcdef0:32,er1)               ;01556d3cc9309abcdef0\r
+    sub.w @+er3,@(0xffff9abc:16,r2l.b)             ;01556d3cd2309abc\r
+    sub.w @+er3,@(0xffff9abc:16,r2.w)             ;01556d3ce2309abc\r
+    sub.w @+er3,@(0xffff9abc:16,er2.l)             ;01556d3cf2309abc\r
+    sub.w @+er3,@(0x9abcdef0:32,r2l.b)             ;01556d3cda309abcdef0\r
+    sub.w @+er3,@(0x9abcdef0:32,r2.w)             ;01556d3cea309abcdef0\r
+    sub.w @+er3,@(0x9abcdef0:32,er2.l)             ;01556d3cfa309abcdef0\r
+    sub.w @+er3,@0xffff9abc:16                     ;01556d3c40309abc\r
+    sub.w @+er3,@0x9abcdef0:32                     ;01556d3c48309abcdef0\r
+\r
+    sub.w @(0x1234:16,er3),@er1                         ;01546f3c12340130\r
+    sub.w @(0x1234:16,er3),@(6:2,er1)                   ;01546f3c12343130\r
+    sub.w @(0x1234:16,er3),@-er1                        ;01546f3c1234b130\r
+    sub.w @(0x1234:16,er3),@er1+                        ;01546f3c12348130\r
+    sub.w @(0x1234:16,er3),@er1-                        ;01546f3c1234a130\r
+    sub.w @(0x1234:16,er3),@+er1                        ;01546f3c12349130\r
+    sub.w @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01546f3c1234c1309abc\r
+    sub.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01546f3c1234c9309abcdef0\r
+    sub.w @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01546f3c1234d2309abc\r
+    sub.w @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01546f3c1234e2309abc\r
+    sub.w @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01546f3c1234f2309abc\r
+    sub.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01546f3c1234da309abcdef0\r
+    sub.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01546f3c1234ea309abcdef0\r
+    sub.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01546f3c1234fa309abcdef0\r
+    sub.w @(0x1234:16,er3),@0xffff9abc:16               ;01546f3c123440309abc\r
+    sub.w @(0x1234:16,er3),@0x9abcdef0:32               ;01546f3c123448309abcdef0\r
+\r
+    sub.w @(0x12345678:32,er3),@er1                         ;78346b2c123456780130\r
+    sub.w @(0x12345678:32,er3),@(6:2,er1)                   ;78346b2c123456783130\r
+    sub.w @(0x12345678:32,er3),@-er1                        ;78346b2c12345678b130\r
+    sub.w @(0x12345678:32,er3),@er1+                        ;78346b2c123456788130\r
+    sub.w @(0x12345678:32,er3),@er1-                        ;78346b2c12345678a130\r
+    sub.w @(0x12345678:32,er3),@+er1                        ;78346b2c123456789130\r
+    sub.w @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346b2c12345678c1309abc\r
+    sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346b2c12345678c9309abcdef0\r
+    sub.w @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346b2c12345678d2309abc\r
+    sub.w @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346b2c12345678e2309abc\r
+    sub.w @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346b2c12345678f2309abc\r
+    sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346b2c12345678da309abcdef0\r
+    sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346b2c12345678ea309abcdef0\r
+    sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346b2c12345678fa309abcdef0\r
+    sub.w @(0x12345678:32,er3),@0xffff9abc:16               ;78346b2c1234567840309abc\r
+    sub.w @(0x12345678:32,er3),@0x9abcdef0:32               ;78346b2c1234567848309abcdef0\r
+\r
+    sub.w @(0x1234:16,r3l.b),@er1                       ;01556f3c12340130\r
+    sub.w @(0x1234:16,r3l.b),@(6:2,er1)                 ;01556f3c12343130\r
+    sub.w @(0x1234:16,r3l.b),@-er1                      ;01556f3c1234b130\r
+    sub.w @(0x1234:16,r3l.b),@er1+                      ;01556f3c12348130\r
+    sub.w @(0x1234:16,r3l.b),@er1-                      ;01556f3c1234a130\r
+    sub.w @(0x1234:16,r3l.b),@+er1                      ;01556f3c12349130\r
+    sub.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01556f3c1234c1309abc\r
+    sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01556f3c1234c9309abcdef0\r
+    sub.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01556f3c1234d2309abc\r
+    sub.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01556f3c1234e2309abc\r
+    sub.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01556f3c1234f2309abc\r
+    sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01556f3c1234da309abcdef0\r
+    sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01556f3c1234ea309abcdef0\r
+    sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01556f3c1234fa309abcdef0\r
+    sub.w @(0x1234:16,r3l.b),@0xffff9abc:16             ;01556f3c123440309abc\r
+    sub.w @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01556f3c123448309abcdef0\r
+\r
+    sub.w @(0x1234:16,r3.w),@er1                       ;01566f3c12340130\r
+    sub.w @(0x1234:16,r3.w),@(6:2,er1)                 ;01566f3c12343130\r
+    sub.w @(0x1234:16,r3.w),@-er1                      ;01566f3c1234b130\r
+    sub.w @(0x1234:16,r3.w),@er1+                      ;01566f3c12348130\r
+    sub.w @(0x1234:16,r3.w),@er1-                      ;01566f3c1234a130\r
+    sub.w @(0x1234:16,r3.w),@+er1                      ;01566f3c12349130\r
+    sub.w @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01566f3c1234c1309abc\r
+    sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01566f3c1234c9309abcdef0\r
+    sub.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01566f3c1234d2309abc\r
+    sub.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01566f3c1234e2309abc\r
+    sub.w @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01566f3c1234f2309abc\r
+    sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01566f3c1234da309abcdef0\r
+    sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01566f3c1234ea309abcdef0\r
+    sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01566f3c1234fa309abcdef0\r
+    sub.w @(0x1234:16,r3.w),@0xffff9abc:16             ;01566f3c123440309abc\r
+    sub.w @(0x1234:16,r3.w),@0x9abcdef0:32             ;01566f3c123448309abcdef0\r
+\r
+    sub.w @(0x1234:16,er3.l),@er1                       ;01576f3c12340130\r
+    sub.w @(0x1234:16,er3.l),@(6:2,er1)                 ;01576f3c12343130\r
+    sub.w @(0x1234:16,er3.l),@-er1                      ;01576f3c1234b130\r
+    sub.w @(0x1234:16,er3.l),@er1+                      ;01576f3c12348130\r
+    sub.w @(0x1234:16,er3.l),@er1-                      ;01576f3c1234a130\r
+    sub.w @(0x1234:16,er3.l),@+er1                      ;01576f3c12349130\r
+    sub.w @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01576f3c1234c1309abc\r
+    sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01576f3c1234c9309abcdef0\r
+    sub.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01576f3c1234d2309abc\r
+    sub.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01576f3c1234e2309abc\r
+    sub.w @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01576f3c1234f2309abc\r
+    sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01576f3c1234da309abcdef0\r
+    sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01576f3c1234ea309abcdef0\r
+    sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01576f3c1234fa309abcdef0\r
+    sub.w @(0x1234:16,er3.l),@0xffff9abc:16             ;01576f3c123440309abc\r
+    sub.w @(0x1234:16,er3.l),@0x9abcdef0:32             ;01576f3c123448309abcdef0\r
+\r
+    sub.w @(0x12345678:32,r3l.b),@er1                       ;78356b2c123456780130\r
+    sub.w @(0x12345678:32,r3l.b),@(6:2,er1)                 ;78356b2c123456783130\r
+    sub.w @(0x12345678:32,r3l.b),@-er1                      ;78356b2c12345678b130\r
+    sub.w @(0x12345678:32,r3l.b),@er1+                      ;78356b2c123456788130\r
+    sub.w @(0x12345678:32,r3l.b),@er1-                      ;78356b2c12345678a130\r
+    sub.w @(0x12345678:32,r3l.b),@+er1                      ;78356b2c123456789130\r
+    sub.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356b2c12345678c1309abc\r
+    sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356b2c12345678c9309abcdef0\r
+    sub.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356b2c12345678d2309abc\r
+    sub.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356b2c12345678e2309abc\r
+    sub.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356b2c12345678f2309abc\r
+    sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356b2c12345678da309abcdef0\r
+    sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356b2c12345678ea309abcdef0\r
+    sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356b2c12345678fa309abcdef0\r
+    sub.w @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356b2c1234567840309abc\r
+    sub.w @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356b2c1234567848309abcdef0\r
+\r
+    sub.w @(0x12345678:32,r3.w),@er1                       ;78366b2c123456780130\r
+    sub.w @(0x12345678:32,r3.w),@(6:2,er1)                 ;78366b2c123456783130\r
+    sub.w @(0x12345678:32,r3.w),@-er1                      ;78366b2c12345678b130\r
+    sub.w @(0x12345678:32,r3.w),@er1+                      ;78366b2c123456788130\r
+    sub.w @(0x12345678:32,r3.w),@er1-                      ;78366b2c12345678a130\r
+    sub.w @(0x12345678:32,r3.w),@+er1                      ;78366b2c123456789130\r
+    sub.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366b2c12345678c1309abc\r
+    sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366b2c12345678c9309abcdef0\r
+    sub.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366b2c12345678d2309abc\r
+    sub.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366b2c12345678e2309abc\r
+    sub.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366b2c12345678f2309abc\r
+    sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366b2c12345678da309abcdef0\r
+    sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366b2c12345678ea309abcdef0\r
+    sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366b2c12345678fa309abcdef0\r
+    sub.w @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366b2c1234567840309abc\r
+    sub.w @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366b2c1234567848309abcdef0\r
+\r
+    sub.w @(0x12345678:32,er3.l),@er1                       ;78376b2c123456780130\r
+    sub.w @(0x12345678:32,er3.l),@(6:2,er1)                 ;78376b2c123456783130\r
+    sub.w @(0x12345678:32,er3.l),@-er1                      ;78376b2c12345678b130\r
+    sub.w @(0x12345678:32,er3.l),@er1+                      ;78376b2c123456788130\r
+    sub.w @(0x12345678:32,er3.l),@er1-                      ;78376b2c12345678a130\r
+    sub.w @(0x12345678:32,er3.l),@+er1                      ;78376b2c123456789130\r
+    sub.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376b2c12345678c1309abc\r
+    sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376b2c12345678c9309abcdef0\r
+    sub.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376b2c12345678d2309abc\r
+    sub.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376b2c12345678e2309abc\r
+    sub.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376b2c12345678f2309abc\r
+    sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376b2c12345678da309abcdef0\r
+    sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376b2c12345678ea309abcdef0\r
+    sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376b2c12345678fa309abcdef0\r
+    sub.w @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376b2c1234567840309abc\r
+    sub.w @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376b2c1234567848309abcdef0\r
+\r
+    sub.w @0x1234:16,@er1                              ;6b1512340130\r
+    sub.w @0x1234:16,@(6:2,er1)                        ;6b1512343130\r
+    sub.w @0x1234:16,@-er1                             ;6b151234b130\r
+    sub.w @0x1234:16,@er1+                             ;6b1512348130\r
+    sub.w @0x1234:16,@er1-                             ;6b151234a130\r
+    sub.w @0x1234:16,@+er1                             ;6b1512349130\r
+    sub.w @0x1234:16,@(0xffff9abc:16,er1)              ;6b151234c1309abc\r
+    sub.w @0x1234:16,@(0x9abcdef0:32,er1)              ;6b151234c9309abcdef0\r
+    sub.w @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6b151234d2309abc\r
+    sub.w @0x1234:16,@(0xffff9abc:16,r2.w)            ;6b151234e2309abc\r
+    sub.w @0x1234:16,@(0xffff9abc:16,er2.l)            ;6b151234f2309abc\r
+    sub.w @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6b151234da309abcdef0\r
+    sub.w @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6b151234ea309abcdef0\r
+    sub.w @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6b151234fa309abcdef0\r
+    sub.w @0x1234:16,@0xffff9abc:16                    ;6b15123440309abc\r
+    sub.w @0x1234:16,@0x9abcdef0:32                    ;6b15123448309abcdef0\r
+\r
+    sub.w @0x12345678:32,@er1                              ;6b35123456780130\r
+    sub.w @0x12345678:32,@(6:2,er1)                        ;6b35123456783130\r
+    sub.w @0x12345678:32,@-er1                             ;6b3512345678b130\r
+    sub.w @0x12345678:32,@er1+                             ;6b35123456788130\r
+    sub.w @0x12345678:32,@er1-                             ;6b3512345678a130\r
+    sub.w @0x12345678:32,@+er1                             ;6b35123456789130\r
+    sub.w @0x12345678:32,@(0xffff9abc:16,er1)              ;6b3512345678c1309abc\r
+    sub.w @0x12345678:32,@(0x9abcdef0:32,er1)              ;6b3512345678c9309abcdef0\r
+    sub.w @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6b3512345678d2309abc\r
+    sub.w @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6b3512345678e2309abc\r
+    sub.w @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6b3512345678f2309abc\r
+    sub.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6b3512345678da309abcdef0\r
+    sub.w @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6b3512345678ea309abcdef0\r
+    sub.w @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6b3512345678fa309abcdef0\r
+    sub.w @0x12345678:32,@0xffff9abc:16                    ;6b351234567840309abc\r
+    sub.w @0x12345678:32,@0x9abcdef0:32                    ;6b351234567848309abcdef0\r
+\r
+    sub.l #0x12345678:32,er1                      ;7a3112345678\r
+    sub.l #0x1234:16,er1                       ;7a391234\r
+    sub.l #0x7:3,er2                        ;1afa\r
+    sub.l #0x12345678:32,@er1                      ;010e013812345678\r
+    sub.l #0x12345678:32,@(0xc:2,er1)             ;010e313812345678\r
+    sub.l #0x12345678:32,@er1+                     ;010e813812345678\r
+    sub.l #0x12345678:32,@-er1                     ;010eb13812345678\r
+    sub.l #0x12345678:32,@+er1                     ;010e913812345678\r
+    sub.l #0x12345678:32,@er1-                     ;010ea13812345678\r
+    sub.l #0x12345678:32,@(0xffff9abc:16,er1)               ;010ec1389abc12345678\r
+    sub.l #0x12345678:32,@(0x9abcdef0:32,er1)               ;010ec9389abcdef012345678\r
+    sub.l #0x12345678:32,@(0xffff9abc:16,r2l.b)             ;010ed2389abc12345678\r
+    sub.l #0x12345678:32,@(0xffff9abc:16,r2.w)             ;010ee2389abc12345678\r
+    sub.l #0x12345678:32,@(0xffff9abc:16,er2.l)             ;010ef2389abc12345678\r
+    sub.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)             ;010eda389abcdef012345678\r
+    sub.l #0x12345678:32,@(0x9abcdef0:32,r2.w)             ;010eea389abcdef012345678\r
+    sub.l #0x12345678:32,@(0x9abcdef0:32,er2.l)             ;010efa389abcdef012345678\r
+    sub.l #0x12345678:32,@0xffff9abc:16                    ;010e40389abc12345678\r
+    sub.l #0x12345678:32,@0x9abcdef0:32                    ;010e48389abcdef012345678\r
+    sub.l #0x1234:16,@er1                      ;010e01301234\r
+    sub.l #0x1234:16,@(0xc:2,er1)             ;010e31301234\r
+    sub.l #0x1234:16,@er1+                     ;010e81301234\r
+    sub.l #0x1234:16,@-er1                     ;010eb1301234\r
+    sub.l #0x1234:16,@+er1                     ;010e91301234\r
+    sub.l #0x1234:16,@er1-                     ;010ea1301234\r
+    sub.l #0x1234:16,@(0xffff9abc:16,er1)               ;010ec1309abc1234\r
+    sub.l #0x1234:16,@(0x9abcdef0:32,er1)               ;010ec9309abcdef01234\r
+    sub.l #0x1234:16,@(0xffff9abc:16,r2l.b)             ;010ed2309abc1234\r
+    sub.l #0x1234:16,@(0xffff9abc:16,r2.w)             ;010ee2309abc1234\r
+    sub.l #0x1234:16,@(0xffff9abc:16,er2.l)             ;010ef2309abc1234\r
+    sub.l #0x1234:16,@(0x9abcdef0:32,r2l.b)             ;010eda309abcdef01234\r
+    sub.l #0x1234:16,@(0x9abcdef0:32,r2.w)             ;010eea309abcdef01234\r
+    sub.l #0x1234:16,@(0x9abcdef0:32,er2.l)             ;010efa309abcdef01234\r
+    sub.l #0x1234:16,@0xffff9abc:16                    ;010e40309abc1234\r
+    sub.l #0x1234:16,@0x9abcdef0:32                    ;010e48309abcdef01234\r
+\r
+    sub.l er3,er1                         ;1ab1\r
+\r
+    sub.l er3,@er1                         ;01090133\r
+    sub.l er3,@(0xc:2,er1)                ;01093133\r
+    sub.l er3,@er1+                        ;01098133\r
+    sub.l er3,@-er1                        ;0109b133\r
+    sub.l er3,@+er1                        ;01099133\r
+    sub.l er3,@er1-                        ;0109a133\r
+    sub.l er3,@(0x1234:16,er1)                  ;0109c1331234\r
+    sub.l er3,@(0x12345678:32,er1)                  ;0109c93312345678\r
+    sub.l er3,@(0x1234:16,r2l.b)                ;0109d2331234\r
+    sub.l er3,@(0x1234:16,r2.w)                ;0109e2331234\r
+    sub.l er3,@(0x1234:16,er2.l)                ;0109f2331234\r
+    sub.l er3,@(0x12345678:32,r2l.b)                ;0109da3312345678\r
+    sub.l er3,@(0x12345678:32,r2.w)                ;0109ea3312345678\r
+    sub.l er3,@(0x12345678:32,er2.l)                ;0109fa3312345678\r
+    sub.l er3,@0x1234:16                       ;010940331234\r
+    sub.l er3,@0x12345678:32                       ;0109483312345678\r
+\r
+    sub.l @er3,er1                         ;010a0331\r
+    sub.l @(0xc:2,er3),er1               ;010a3331\r
+    sub.l @er3+,er1                       ;010a8331\r
+    sub.l @-er3,er1                       ;010ab331\r
+    sub.l @+er3,er1                       ;010a9331\r
+    sub.l @er3-,er1                       ;010aa331\r
+    sub.l @(0x1234:16,er1),er1                  ;010ac1311234\r
+    sub.l @(0x12345678:32,er1),er1                  ;010ac93112345678\r
+    sub.l @(0x1234:16,r2l.b),er1                ;010ad2311234\r
+    sub.l @(0x1234:16,r2.w),er1                ;010ae2311234\r
+    sub.l @(0x1234:16,er2.l),er1                ;010af2311234\r
+    sub.l @(0x12345678:32,r2l.b),er1                ;010ada3112345678\r
+    sub.l @(0x12345678:32,r2.w),er1                ;010aea3112345678\r
+    sub.l @(0x12345678:32,er2.l),er1                ;010afa3112345678\r
+    sub.l @0x1234:16,er1                       ;010a40311234\r
+    sub.l @0x12345678:32,er1                       ;010a483112345678\r
+\r
+    sub.l @er3,@er1                                ;0104693c0130\r
+    sub.l @er3,@(0xc:2,er1)                          ;0104693c3130\r
+    sub.l @er3,@-er1                               ;0104693cb130\r
+    sub.l @er3,@er1+                               ;0104693c8130\r
+    sub.l @er3,@er1-                               ;0104693ca130\r
+    sub.l @er3,@+er1                               ;0104693c9130\r
+    sub.l @er3,@(0xffff9abc:16,er1)                ;0104693cc1309abc\r
+    sub.l @er3,@(0x9abcdef0:32,er1)                ;0104693cc9309abcdef0\r
+    sub.l @er3,@(0xffff9abc:16,r2l.b)              ;0104693cd2309abc\r
+    sub.l @er3,@(0xffff9abc:16,r2.w)              ;0104693ce2309abc\r
+    sub.l @er3,@(0xffff9abc:16,er2.l)              ;0104693cf2309abc\r
+    sub.l @er3,@(0x9abcdef0:32,r2l.b)              ;0104693cda309abcdef0\r
+    sub.l @er3,@(0x9abcdef0:32,r2.w)              ;0104693cea309abcdef0\r
+    sub.l @er3,@(0x9abcdef0:32,er2.l)              ;0104693cfa309abcdef0\r
+    sub.l @er3,@0xffff9abc:16                      ;0104693c40309abc\r
+    sub.l @er3,@0x9abcdef0:32                      ;0104693c48309abcdef0\r
+\r
+    sub.l @(0xc:2,er3),@er1                       ;0107693c0130\r
+    sub.l @(0xc:2,er3),@(0xc:2,er1)                 ;0107693c3130\r
+    sub.l @(0xc:2,er3),@-er1                      ;0107693cb130\r
+    sub.l @(0xc:2,er3),@er1+                      ;0107693c8130\r
+    sub.l @(0xc:2,er3),@er1-                      ;0107693ca130\r
+    sub.l @(0xc:2,er3),@+er1                      ;0107693c9130\r
+    sub.l @(0xc:2,er3),@(0xffff9abc:16,er1)       ;0107693cc1309abc\r
+    sub.l @(0xc:2,er3),@(0x9abcdef0:32,er1)       ;0107693cc9309abcdef0\r
+    sub.l @(0xc:2,er3),@(0xffff9abc:16,r2l.b)     ;0107693cd2309abc\r
+    sub.l @(0xc:2,er3),@(0xffff9abc:16,r2.w)     ;0107693ce2309abc\r
+    sub.l @(0xc:2,er3),@(0xffff9abc:16,er2.l)     ;0107693cf2309abc\r
+    sub.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)     ;0107693cda309abcdef0\r
+    sub.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)     ;0107693cea309abcdef0\r
+    sub.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)     ;0107693cfa309abcdef0\r
+    sub.l @(0xc:2,er3),@0xffff9abc:16             ;0107693c40309abc\r
+    sub.l @(0xc:2,er3),@0x9abcdef0:32             ;0107693c48309abcdef0\r
+\r
+    sub.l @-er3,@er1                               ;01076d3c0130\r
+    sub.l @-er3,@(0xc:2,er1)                         ;01076d3c3130\r
+    sub.l @-er3,@-er1                              ;01076d3cb130\r
+    sub.l @-er3,@er1+                              ;01076d3c8130\r
+    sub.l @-er3,@er1-                              ;01076d3ca130\r
+    sub.l @-er3,@+er1                              ;01076d3c9130\r
+    sub.l @-er3,@(0xffff9abc:16,er1)               ;01076d3cc1309abc\r
+    sub.l @-er3,@(0x9abcdef0:32,er1)               ;01076d3cc9309abcdef0\r
+    sub.l @-er3,@(0xffff9abc:16,r2l.b)             ;01076d3cd2309abc\r
+    sub.l @-er3,@(0xffff9abc:16,r2.w)             ;01076d3ce2309abc\r
+    sub.l @-er3,@(0xffff9abc:16,er2.l)             ;01076d3cf2309abc\r
+    sub.l @-er3,@(0x9abcdef0:32,r2l.b)             ;01076d3cda309abcdef0\r
+    sub.l @-er3,@(0x9abcdef0:32,r2.w)             ;01076d3cea309abcdef0\r
+    sub.l @-er3,@(0x9abcdef0:32,er2.l)             ;01076d3cfa309abcdef0\r
+    sub.l @-er3,@0xffff9abc:16                     ;01076d3c40309abc\r
+    sub.l @-er3,@0x9abcdef0:32                     ;01076d3c48309abcdef0\r
+\r
+    sub.l @er3+,@er1                               ;01046d3c0130\r
+    sub.l @er3+,@(0xc:2,er1)                         ;01046d3c3130\r
+    sub.l @er3+,@-er1                              ;01046d3cb130\r
+    sub.l @er3+,@er1+                              ;01046d3c8130\r
+    sub.l @er3+,@er1-                              ;01046d3ca130\r
+    sub.l @er3+,@+er1                              ;01046d3c9130\r
+    sub.l @er3+,@(0xffff9abc:16,er1)               ;01046d3cc1309abc\r
+    sub.l @er3+,@(0x9abcdef0:32,er1)               ;01046d3cc9309abcdef0\r
+    sub.l @er3+,@(0xffff9abc:16,r2l.b)             ;01046d3cd2309abc\r
+    sub.l @er3+,@(0xffff9abc:16,r2.w)             ;01046d3ce2309abc\r
+    sub.l @er3+,@(0xffff9abc:16,er2.l)             ;01046d3cf2309abc\r
+    sub.l @er3+,@(0x9abcdef0:32,r2l.b)             ;01046d3cda309abcdef0\r
+    sub.l @er3+,@(0x9abcdef0:32,r2.w)             ;01046d3cea309abcdef0\r
+    sub.l @er3+,@(0x9abcdef0:32,er2.l)             ;01046d3cfa309abcdef0\r
+    sub.l @er3+,@0xffff9abc:16                     ;01046d3c40309abc\r
+    sub.l @er3+,@0x9abcdef0:32                     ;01046d3c48309abcdef0\r
+\r
+    sub.l @er3-,@er1                               ;01066d3c0130\r
+    sub.l @er3-,@(0xc:2,er1)                         ;01066d3c3130\r
+    sub.l @er3-,@-er1                              ;01066d3cb130\r
+    sub.l @er3-,@er1+                              ;01066d3c8130\r
+    sub.l @er3-,@er1-                              ;01066d3ca130\r
+    sub.l @er3-,@+er1                              ;01066d3c9130\r
+    sub.l @er3-,@(0xffff9abc:16,er1)               ;01066d3cc1309abc\r
+    sub.l @er3-,@(0x9abcdef0:32,er1)               ;01066d3cc9309abcdef0\r
+    sub.l @er3-,@(0xffff9abc:16,r2l.b)             ;01066d3cd2309abc\r
+    sub.l @er3-,@(0xffff9abc:16,r2.w)             ;01066d3ce2309abc\r
+    sub.l @er3-,@(0xffff9abc:16,er2.l)             ;01066d3cf2309abc\r
+    sub.l @er3-,@(0x9abcdef0:32,r2l.b)             ;01066d3cda309abcdef0\r
+    sub.l @er3-,@(0x9abcdef0:32,r2.w)             ;01066d3cea309abcdef0\r
+    sub.l @er3-,@(0x9abcdef0:32,er2.l)             ;01066d3cfa309abcdef0\r
+    sub.l @er3-,@0xffff9abc:16                     ;01066d3c40309abc\r
+    sub.l @er3-,@0x9abcdef0:32                     ;01066d3c48309abcdef0\r
+\r
+    sub.l @+er3,@er1                               ;01056d3c0130\r
+    sub.l @+er3,@(0xc:2,er1)                         ;01056d3c3130\r
+    sub.l @+er3,@-er1                              ;01056d3cb130\r
+    sub.l @+er3,@er1+                              ;01056d3c8130\r
+    sub.l @+er3,@er1-                              ;01056d3ca130\r
+    sub.l @+er3,@+er1                              ;01056d3c9130\r
+    sub.l @+er3,@(0xffff9abc:16,er1)               ;01056d3cc1309abc\r
+    sub.l @+er3,@(0x9abcdef0:32,er1)               ;01056d3cc9309abcdef0\r
+    sub.l @+er3,@(0xffff9abc:16,r2l.b)             ;01056d3cd2309abc\r
+    sub.l @+er3,@(0xffff9abc:16,r2.w)             ;01056d3ce2309abc\r
+    sub.l @+er3,@(0xffff9abc:16,er2.l)             ;01056d3cf2309abc\r
+    sub.l @+er3,@(0x9abcdef0:32,r2l.b)             ;01056d3cda309abcdef0\r
+    sub.l @+er3,@(0x9abcdef0:32,r2.w)             ;01056d3cea309abcdef0\r
+    sub.l @+er3,@(0x9abcdef0:32,er2.l)             ;01056d3cfa309abcdef0\r
+    sub.l @+er3,@0xffff9abc:16                     ;01056d3c40309abc\r
+    sub.l @+er3,@0x9abcdef0:32                     ;01056d3c48309abcdef0\r
+\r
+    sub.l @(0x1234:16,er3),@er1                         ;01046f3c12340130\r
+    sub.l @(0x1234:16,er3),@(0xc:2,er1)                   ;01046f3c12343130\r
+    sub.l @(0x1234:16,er3),@-er1                        ;01046f3c1234b130\r
+    sub.l @(0x1234:16,er3),@er1+                        ;01046f3c12348130\r
+    sub.l @(0x1234:16,er3),@er1-                        ;01046f3c1234a130\r
+    sub.l @(0x1234:16,er3),@+er1                        ;01046f3c12349130\r
+    sub.l @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01046f3c1234c1309abc\r
+    sub.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01046f3c1234c9309abcdef0\r
+    sub.l @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01046f3c1234d2309abc\r
+    sub.l @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01046f3c1234e2309abc\r
+    sub.l @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01046f3c1234f2309abc\r
+    sub.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01046f3c1234da309abcdef0\r
+    sub.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01046f3c1234ea309abcdef0\r
+    sub.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01046f3c1234fa309abcdef0\r
+    sub.l @(0x1234:16,er3),@0xffff9abc:16               ;01046f3c123440309abc\r
+    sub.l @(0x1234:16,er3),@0x9abcdef0:32               ;01046f3c123448309abcdef0\r
+\r
+    sub.l @(0x12345678:32,er3),@er1                         ;78b46b2c123456780130\r
+    sub.l @(0x12345678:32,er3),@(0xc:2,er1)                   ;78b46b2c123456783130\r
+    sub.l @(0x12345678:32,er3),@-er1                        ;78b46b2c12345678b130\r
+    sub.l @(0x12345678:32,er3),@er1+                        ;78b46b2c123456788130\r
+    sub.l @(0x12345678:32,er3),@er1-                        ;78b46b2c12345678a130\r
+    sub.l @(0x12345678:32,er3),@+er1                        ;78b46b2c123456789130\r
+    sub.l @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78b46b2c12345678c1309abc\r
+    sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78b46b2c12345678c9309abcdef0\r
+    sub.l @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78b46b2c12345678d2309abc\r
+    sub.l @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78b46b2c12345678e2309abc\r
+    sub.l @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78b46b2c12345678f2309abc\r
+    sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78b46b2c12345678da309abcdef0\r
+    sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78b46b2c12345678ea309abcdef0\r
+    sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78b46b2c12345678fa309abcdef0\r
+    sub.l @(0x12345678:32,er3),@0xffff9abc:16               ;78b46b2c1234567840309abc\r
+    sub.l @(0x12345678:32,er3),@0x9abcdef0:32               ;78b46b2c1234567848309abcdef0\r
+\r
+    sub.l @(0x1234:16,r3l.b),@er1                       ;01056f3c12340130\r
+    sub.l @(0x1234:16,r3l.b),@(0xc:2,er1)                 ;01056f3c12343130\r
+    sub.l @(0x1234:16,r3l.b),@-er1                      ;01056f3c1234b130\r
+    sub.l @(0x1234:16,r3l.b),@er1+                      ;01056f3c12348130\r
+    sub.l @(0x1234:16,r3l.b),@er1-                      ;01056f3c1234a130\r
+    sub.l @(0x1234:16,r3l.b),@+er1                      ;01056f3c12349130\r
+    sub.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01056f3c1234c1309abc\r
+    sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01056f3c1234c9309abcdef0\r
+    sub.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01056f3c1234d2309abc\r
+    sub.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01056f3c1234e2309abc\r
+    sub.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01056f3c1234f2309abc\r
+    sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01056f3c1234da309abcdef0\r
+    sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01056f3c1234ea309abcdef0\r
+    sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01056f3c1234fa309abcdef0\r
+    sub.l @(0x1234:16,r3l.b),@0xffff9abc:16             ;01056f3c123440309abc\r
+    sub.l @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01056f3c123448309abcdef0\r
+\r
+    sub.l @(0x1234:16,r3.w),@er1                       ;01066f3c12340130\r
+    sub.l @(0x1234:16,r3.w),@(0xc:2,er1)                 ;01066f3c12343130\r
+    sub.l @(0x1234:16,r3.w),@-er1                      ;01066f3c1234b130\r
+    sub.l @(0x1234:16,r3.w),@er1+                      ;01066f3c12348130\r
+    sub.l @(0x1234:16,r3.w),@er1-                      ;01066f3c1234a130\r
+    sub.l @(0x1234:16,r3.w),@+er1                      ;01066f3c12349130\r
+    sub.l @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01066f3c1234c1309abc\r
+    sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01066f3c1234c9309abcdef0\r
+    sub.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01066f3c1234d2309abc\r
+    sub.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01066f3c1234e2309abc\r
+    sub.l @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01066f3c1234f2309abc\r
+    sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01066f3c1234da309abcdef0\r
+    sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01066f3c1234ea309abcdef0\r
+    sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01066f3c1234fa309abcdef0\r
+    sub.l @(0x1234:16,r3.w),@0xffff9abc:16             ;01066f3c123440309abc\r
+    sub.l @(0x1234:16,r3.w),@0x9abcdef0:32             ;01066f3c123448309abcdef0\r
+\r
+    sub.l @(0x1234:16,er3.l),@er1                       ;01076f3c12340130\r
+    sub.l @(0x1234:16,er3.l),@(0xc:2,er1)                 ;01076f3c12343130\r
+    sub.l @(0x1234:16,er3.l),@-er1                      ;01076f3c1234b130\r
+    sub.l @(0x1234:16,er3.l),@er1+                      ;01076f3c12348130\r
+    sub.l @(0x1234:16,er3.l),@er1-                      ;01076f3c1234a130\r
+    sub.l @(0x1234:16,er3.l),@+er1                      ;01076f3c12349130\r
+    sub.l @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01076f3c1234c1309abc\r
+    sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01076f3c1234c9309abcdef0\r
+    sub.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01076f3c1234d2309abc\r
+    sub.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01076f3c1234e2309abc\r
+    sub.l @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01076f3c1234f2309abc\r
+    sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01076f3c1234da309abcdef0\r
+    sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01076f3c1234ea309abcdef0\r
+    sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01076f3c1234fa309abcdef0\r
+    sub.l @(0x1234:16,er3.l),@0xffff9abc:16             ;01076f3c123440309abc\r
+    sub.l @(0x1234:16,er3.l),@0x9abcdef0:32             ;01076f3c123448309abcdef0\r
+\r
+    sub.l @(0x12345678:32,r3l.b),@er1                       ;78b56b2c123456780130\r
+    sub.l @(0x12345678:32,r3l.b),@(0xc:2,er1)                 ;78b56b2c123456783130\r
+    sub.l @(0x12345678:32,r3l.b),@-er1                      ;78b56b2c12345678b130\r
+    sub.l @(0x12345678:32,r3l.b),@er1+                      ;78b56b2c123456788130\r
+    sub.l @(0x12345678:32,r3l.b),@er1-                      ;78b56b2c12345678a130\r
+    sub.l @(0x12345678:32,r3l.b),@+er1                      ;78b56b2c123456789130\r
+    sub.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78b56b2c12345678c1309abc\r
+    sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78b56b2c12345678c9309abcdef0\r
+    sub.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78b56b2c12345678d2309abc\r
+    sub.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78b56b2c12345678e2309abc\r
+    sub.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78b56b2c12345678f2309abc\r
+    sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78b56b2c12345678da309abcdef0\r
+    sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78b56b2c12345678ea309abcdef0\r
+    sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78b56b2c12345678fa309abcdef0\r
+    sub.l @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78b56b2c1234567840309abc\r
+    sub.l @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78b56b2c1234567848309abcdef0\r
+\r
+    sub.l @(0x12345678:32,r3.w),@er1                       ;78b66b2c123456780130\r
+    sub.l @(0x12345678:32,r3.w),@(0xc:2,er1)                 ;78b66b2c123456783130\r
+    sub.l @(0x12345678:32,r3.w),@-er1                      ;78b66b2c12345678b130\r
+    sub.l @(0x12345678:32,r3.w),@er1+                      ;78b66b2c123456788130\r
+    sub.l @(0x12345678:32,r3.w),@er1-                      ;78b66b2c12345678a130\r
+    sub.l @(0x12345678:32,r3.w),@+er1                      ;78b66b2c123456789130\r
+    sub.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78b66b2c12345678c1309abc\r
+    sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78b66b2c12345678c9309abcdef0\r
+    sub.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78b66b2c12345678d2309abc\r
+    sub.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78b66b2c12345678e2309abc\r
+    sub.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78b66b2c12345678f2309abc\r
+    sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78b66b2c12345678da309abcdef0\r
+    sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78b66b2c12345678ea309abcdef0\r
+    sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78b66b2c12345678fa309abcdef0\r
+    sub.l @(0x12345678:32,r3.w),@0xffff9abc:16             ;78b66b2c1234567840309abc\r
+    sub.l @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78b66b2c1234567848309abcdef0\r
+\r
+    sub.l @(0x12345678:32,er3.l),@er1                       ;78b76b2c123456780130\r
+    sub.l @(0x12345678:32,er3.l),@(0xc:2,er1)                 ;78b76b2c123456783130\r
+    sub.l @(0x12345678:32,er3.l),@-er1                      ;78b76b2c12345678b130\r
+    sub.l @(0x12345678:32,er3.l),@er1+                      ;78b76b2c123456788130\r
+    sub.l @(0x12345678:32,er3.l),@er1-                      ;78b76b2c12345678a130\r
+    sub.l @(0x12345678:32,er3.l),@+er1                      ;78b76b2c123456789130\r
+    sub.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78b76b2c12345678c1309abc\r
+    sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78b76b2c12345678c9309abcdef0\r
+    sub.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78b76b2c12345678d2309abc\r
+    sub.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78b76b2c12345678e2309abc\r
+    sub.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78b76b2c12345678f2309abc\r
+    sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78b76b2c12345678da309abcdef0\r
+    sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78b76b2c12345678ea309abcdef0\r
+    sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78b76b2c12345678fa309abcdef0\r
+    sub.l @(0x12345678:32,er3.l),@0xffff9abc:16             ;78b76b2c1234567840309abc\r
+    sub.l @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78b76b2c1234567848309abcdef0\r
+\r
+    sub.l @0x1234:16,@er1                              ;01046b0c12340130\r
+    sub.l @0x1234:16,@(0xc:2,er1)                        ;01046b0c12343130\r
+    sub.l @0x1234:16,@-er1                             ;01046b0c1234b130\r
+    sub.l @0x1234:16,@er1+                             ;01046b0c12348130\r
+    sub.l @0x1234:16,@er1-                             ;01046b0c1234a130\r
+    sub.l @0x1234:16,@+er1                             ;01046b0c12349130\r
+    sub.l @0x1234:16,@(0xffff9abc:16,er1)              ;01046b0c1234c1309abc\r
+    sub.l @0x1234:16,@(0x9abcdef0:32,er1)              ;01046b0c1234c9309abcdef0\r
+    sub.l @0x1234:16,@(0xffff9abc:16,r2l.b)            ;01046b0c1234d2309abc\r
+    sub.l @0x1234:16,@(0xffff9abc:16,r2.w)            ;01046b0c1234e2309abc\r
+    sub.l @0x1234:16,@(0xffff9abc:16,er2.l)            ;01046b0c1234f2309abc\r
+    sub.l @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;01046b0c1234da309abcdef0\r
+    sub.l @0x1234:16,@(0x9abcdef0:32,r2.w)            ;01046b0c1234ea309abcdef0\r
+    sub.l @0x1234:16,@(0x9abcdef0:32,er2.l)            ;01046b0c1234fa309abcdef0\r
+    sub.l @0x1234:16,@0xffff9abc:16                    ;01046b0c123440309abc\r
+    sub.l @0x1234:16,@0x9abcdef0:32                    ;01046b0c123448309abcdef0\r
+\r
+    sub.l @0x12345678:32,@er1                              ;01046b2c123456780130\r
+    sub.l @0x12345678:32,@(0xc:2,er1)                        ;01046b2c123456783130\r
+    sub.l @0x12345678:32,@-er1                             ;01046b2c12345678b130\r
+    sub.l @0x12345678:32,@er1+                             ;01046b2c123456788130\r
+    sub.l @0x12345678:32,@er1-                             ;01046b2c12345678a130\r
+    sub.l @0x12345678:32,@+er1                             ;01046b2c123456789130\r
+    sub.l @0x12345678:32,@(0xffff9abc:16,er1)              ;01046b2c12345678c1309abc\r
+    sub.l @0x12345678:32,@(0x9abcdef0:32,er1)              ;01046b2c12345678c9309abcdef0\r
+    sub.l @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;01046b2c12345678d2309abc\r
+    sub.l @0x12345678:32,@(0xffff9abc:16,r2.w)            ;01046b2c12345678e2309abc\r
+    sub.l @0x12345678:32,@(0xffff9abc:16,er2.l)            ;01046b2c12345678f2309abc\r
+    sub.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;01046b2c12345678da309abcdef0\r
+    sub.l @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;01046b2c12345678ea309abcdef0\r
+    sub.l @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;01046b2c12345678fa309abcdef0\r
+    sub.l @0x12345678:32,@0xffff9abc:16                    ;01046b2c1234567840309abc\r
+    sub.l @0x12345678:32,@0x9abcdef0:32                    ;01046b2c1234567848309abcdef0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t05_cmp.exp b/gdb/testsuite/gdb.disasm/t05_cmp.exp
new file mode 100644 (file)
index 0000000..8578000
--- /dev/null
@@ -0,0 +1,1770 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t05_cmp"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "cmp.b\t@er3,@er1" \
+       "cmp.b @er3,@er1"
+gdb_test "x" "cmp.b\t@er3,@\\(0x3(:2|),er1\\)" \
+       "cmp.b @er3,@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@er3,@-er1" \
+       "cmp.b @er3,@-er1"
+gdb_test "x" "cmp.b\t@er3,@er1\\+" \
+       "cmp.b @er3,@er1+"
+gdb_test "x" "cmp.b\t@er3,@er1-" \
+       "cmp.b @er3,@er1-"
+gdb_test "x" "cmp.b\t@er3,@\\+er1" \
+       "cmp.b @er3,@+er1"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@er3,@0x9abc(:16|)" \
+       "cmp.b @er3,@0x9abc:16"
+gdb_test "x" "cmp.b\t@er3,@0x9abcdef0(:32|)" \
+       "cmp.b @er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@-er3,@er1" \
+       "cmp.b @-er3,@er1"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x3(:2|),er1\\)" \
+       "cmp.b @-er3,@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@-er3,@-er1" \
+       "cmp.b @-er3,@-er1"
+gdb_test "x" "cmp.b\t@-er3,@er1\\+" \
+       "cmp.b @-er3,@er1+"
+gdb_test "x" "cmp.b\t@-er3,@er1-" \
+       "cmp.b @-er3,@er1-"
+gdb_test "x" "cmp.b\t@-er3,@\\+er1" \
+       "cmp.b @-er3,@+er1"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@-er3,@0x9abc(:16|)" \
+       "cmp.b @-er3,@0x9abc:16"
+gdb_test "x" "cmp.b\t@-er3,@0x9abcdef0(:32|)" \
+       "cmp.b @-er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@er3\\+,@er1" \
+       "cmp.b @er3+,@er1"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x3(:2|),er1\\)" \
+       "cmp.b @er3+,@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@er3\\+,@-er1" \
+       "cmp.b @er3+,@-er1"
+gdb_test "x" "cmp.b\t@er3\\+,@er1\\+" \
+       "cmp.b @er3+,@er1+"
+gdb_test "x" "cmp.b\t@er3\\+,@er1-" \
+       "cmp.b @er3+,@er1-"
+gdb_test "x" "cmp.b\t@er3\\+,@\\+er1" \
+       "cmp.b @er3+,@+er1"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@er3\\+,@0x9abc(:16|)" \
+       "cmp.b @er3+,@0x9abc:16"
+gdb_test "x" "cmp.b\t@er3\\+,@0x9abcdef0(:32|)" \
+       "cmp.b @er3+,@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@er3-,@er1" \
+       "cmp.b @er3-,@er1"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x3(:2|),er1\\)" \
+       "cmp.b @er3-,@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@er3-,@-er1" \
+       "cmp.b @er3-,@-er1"
+gdb_test "x" "cmp.b\t@er3-,@er1\\+" \
+       "cmp.b @er3-,@er1+"
+gdb_test "x" "cmp.b\t@er3-,@er1-" \
+       "cmp.b @er3-,@er1-"
+gdb_test "x" "cmp.b\t@er3-,@\\+er1" \
+       "cmp.b @er3-,@+er1"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@er3-,@0x9abc(:16|)" \
+       "cmp.b @er3-,@0x9abc:16"
+gdb_test "x" "cmp.b\t@er3-,@0x9abcdef0(:32|)" \
+       "cmp.b @er3-,@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\+er3,@er1" \
+       "cmp.b @+er3,@er1"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x3(:2|),er1\\)" \
+       "cmp.b @+er3,@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\+er3,@-er1" \
+       "cmp.b @+er3,@-er1"
+gdb_test "x" "cmp.b\t@\\+er3,@er1\\+" \
+       "cmp.b @+er3,@er1+"
+gdb_test "x" "cmp.b\t@\\+er3,@er1-" \
+       "cmp.b @+er3,@er1-"
+gdb_test "x" "cmp.b\t@\\+er3,@\\+er1" \
+       "cmp.b @+er3,@+er1"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\+er3,@0x9abc(:16|)" \
+       "cmp.b @+er3,@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\+er3,@0x9abcdef0(:32|)" \
+       "cmp.b @+er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@er1" \
+       "cmp.b @(0x1234:16,er3),@er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "cmp.b @(0x1234:16,er3),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "cmp.b @(0x1234:16,er3),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "cmp.b @(0x1234:16,er3),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "cmp.b @(0x1234:16,er3),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "cmp.b @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "cmp.b @(0x12345678:32,er3),@er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "cmp.b @(0x12345678:32,er3),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "cmp.b @(0x12345678:32,er3),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "cmp.b @(0x12345678:32,er3),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "cmp.b @(0x12345678:32,er3),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "cmp.b @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "cmp.b @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "cmp.b @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "cmp.b @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "cmp.b @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "cmp.b @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "cmp.b @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "cmp.b @(0x1234:16,r3.w),@er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "cmp.b @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "cmp.b @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "cmp.b @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "cmp.b @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "cmp.b @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "cmp.b @(0x1234:16,er3.l),@er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "cmp.b @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "cmp.b @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "cmp.b @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "cmp.b @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "cmp.b @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "cmp.b @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "cmp.b @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "cmp.b @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "cmp.b @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "cmp.b @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "cmp.b @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "cmp.b @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "cmp.b @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "cmp.b @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "cmp.b @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "cmp.b @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "cmp.b @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "cmp.b @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "cmp.b @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "cmp.b @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "cmp.b @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "cmp.b @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "cmp.b @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "cmp.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "cmp.b @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@er1" \
+       "cmp.b @0x1234:16,@er1"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @0x1234:16,@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@-er1" \
+       "cmp.b @0x1234:16,@-er1"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@er1\\+" \
+       "cmp.b @0x1234:16,@er1+"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@er1-" \
+       "cmp.b @0x1234:16,@er1-"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\+er1" \
+       "cmp.b @0x1234:16,@+er1"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@0x9abc(:16|)" \
+       "cmp.b @0x1234:16,@0x9abc:16"
+gdb_test "x" "cmp.b\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "cmp.b @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@er1" \
+       "cmp.b @0x12345678:32,@er1"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x3(:2|),er1\\)" \
+       "cmp.b @0x12345678:32,@(0x3:2,er1)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@-er1" \
+       "cmp.b @0x12345678:32,@-er1"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@er1\\+" \
+       "cmp.b @0x12345678:32,@er1+"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@er1-" \
+       "cmp.b @0x12345678:32,@er1-"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\+er1" \
+       "cmp.b @0x12345678:32,@+er1"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.b @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.b @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.b @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.b @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.b @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.b @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.b @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "cmp.b @0x12345678:32,@0x9abc:16"
+gdb_test "x" "cmp.b\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "cmp.b @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t#0x1234(:16|),r1" \
+       "cmp.w #0x1234:16,r1"
+gdb_test "x" "cmp.w\t#0x7(:3|),r2" \
+       "cmp.w #0x7:3,r2"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@er1" \
+       "cmp.w #0x1234:16,@er1"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "cmp.w #0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@er1\\+" \
+       "cmp.w #0x1234:16,@er1+"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@-er1" \
+       "cmp.w #0x1234:16,@-er1"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\+er1" \
+       "cmp.w #0x1234:16,@+er1"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@er1-" \
+       "cmp.w #0x1234:16,@er1-"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@0x9abc(:16|)" \
+       "cmp.w #0x1234:16,@0x9abc:16"
+gdb_test "x" "cmp.w\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "cmp.w #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t#0x7(:3|),@er1" \
+       "cmp.w #0x7:3,@er1"
+gdb_test "x" "cmp.w\t#0x7(:3|),@0x1234(:16|)" \
+       "cmp.w #0x7:3,@0x1234:16"
+gdb_test "x" "cmp.w\t#0x7(:3|),@0x12345678(:32|)" \
+       "cmp.w #0x7:3,@0x12345678:32"
+gdb_test "x" "cmp.w\tr3,r1" \
+       "cmp.w r3,r1"
+gdb_test "x" "cmp.w\tr3,@er1" \
+       "cmp.w r3,@er1"
+gdb_test "x" "cmp.w\tr3,@\\(0x6(:2|),er1\\)" \
+       "cmp.w r3,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\tr3,@er1\\+" \
+       "cmp.w r3,@er1+"
+gdb_test "x" "cmp.w\tr3,@-er1" \
+       "cmp.w r3,@-er1"
+gdb_test "x" "cmp.w\tr3,@\\+er1" \
+       "cmp.w r3,@+er1"
+gdb_test "x" "cmp.w\tr3,@er1-" \
+       "cmp.w r3,@er1-"
+gdb_test "x" "cmp.w\tr3,@\\(0x1234(:16|),er1\\)" \
+       "cmp.w r3,@(0x1234:16,er1)"
+gdb_test "x" "cmp.w\tr3,@\\(0x12345678(:32|),er1\\)" \
+       "cmp.w r3,@(0x12345678:32,er1)"
+gdb_test "x" "cmp.w\tr3,@\\(0x1234(:16|),r2l.b\\)" \
+       "cmp.w r3,@(0x1234:16,r2l.b)"
+gdb_test "x" "cmp.w\tr3,@\\(0x1234(:16|),r2.w\\)" \
+       "cmp.w r3,@(0x1234:16,r2.w)"
+gdb_test "x" "cmp.w\tr3,@\\(0x1234(:16|),er2.l\\)" \
+       "cmp.w r3,@(0x1234:16,er2.l)"
+gdb_test "x" "cmp.w\tr3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "cmp.w r3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "cmp.w\tr3,@\\(0x12345678(:32|),r2.w\\)" \
+       "cmp.w r3,@(0x12345678:32,r2.w)"
+gdb_test "x" "cmp.w\tr3,@\\(0x12345678(:32|),er2.l\\)" \
+       "cmp.w r3,@(0x12345678:32,er2.l)"
+gdb_test "x" "cmp.w\tr3,@0x1234(:16|)" \
+       "cmp.w r3,@0x1234:16"
+gdb_test "x" "cmp.w\tr3,@0x12345678(:32|)" \
+       "cmp.w r3,@0x12345678:32"
+gdb_test "x" "cmp.w\t@er3,r1" \
+       "cmp.w @er3,r1"
+gdb_test "x" "cmp.w\t@\\(0x6(:2|),er3\\),r1" \
+       "cmp.w @(0x6:2,er3),r1"
+gdb_test "x" "cmp.w\t@er3\\+,r1" \
+       "cmp.w @er3+,r1"
+gdb_test "x" "cmp.w\t@-er3,r1" \
+       "cmp.w @-er3,r1"
+gdb_test "x" "cmp.w\t@\\+er3,r1" \
+       "cmp.w @+er3,r1"
+gdb_test "x" "cmp.w\t@er3-,r1" \
+       "cmp.w @er3-,r1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er1\\),r1" \
+       "cmp.w @(0x1234:16,er1),r1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er1\\),r1" \
+       "cmp.w @(0x12345678:32,er1),r1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r2l.b\\),r1" \
+       "cmp.w @(0x1234:16,r2l.b),r1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r2.w\\),r1" \
+       "cmp.w @(0x1234:16,r2.w),r1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er2.l\\),r1" \
+       "cmp.w @(0x1234:16,er2.l),r1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r2l.b\\),r1" \
+       "cmp.w @(0x12345678:32,r2l.b),r1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r2.w\\),r1" \
+       "cmp.w @(0x12345678:32,r2.w),r1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er2.l\\),r1" \
+       "cmp.w @(0x12345678:32,er2.l),r1"
+gdb_test "x" "cmp.w\t@0x1234(:16|),r1" \
+       "cmp.w @0x1234:16,r1"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),r1" \
+       "cmp.w @0x12345678:32,r1"
+gdb_test "x" "cmp.w\t@er3,@er1" \
+       "cmp.w @er3,@er1"
+gdb_test "x" "cmp.w\t@er3,@\\(0x6(:2|),er1\\)" \
+       "cmp.w @er3,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@er3,@-er1" \
+       "cmp.w @er3,@-er1"
+gdb_test "x" "cmp.w\t@er3,@er1\\+" \
+       "cmp.w @er3,@er1+"
+gdb_test "x" "cmp.w\t@er3,@er1-" \
+       "cmp.w @er3,@er1-"
+gdb_test "x" "cmp.w\t@er3,@\\+er1" \
+       "cmp.w @er3,@+er1"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@er3,@0x9abc(:16|)" \
+       "cmp.w @er3,@0x9abc:16"
+gdb_test "x" "cmp.w\t@er3,@0x9abcdef0(:32|)" \
+       "cmp.w @er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@-er3,@er1" \
+       "cmp.w @-er3,@er1"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x6(:2|),er1\\)" \
+       "cmp.w @-er3,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@-er3,@-er1" \
+       "cmp.w @-er3,@-er1"
+gdb_test "x" "cmp.w\t@-er3,@er1\\+" \
+       "cmp.w @-er3,@er1+"
+gdb_test "x" "cmp.w\t@-er3,@er1-" \
+       "cmp.w @-er3,@er1-"
+gdb_test "x" "cmp.w\t@-er3,@\\+er1" \
+       "cmp.w @-er3,@+er1"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@-er3,@0x9abc(:16|)" \
+       "cmp.w @-er3,@0x9abc:16"
+gdb_test "x" "cmp.w\t@-er3,@0x9abcdef0(:32|)" \
+       "cmp.w @-er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@er3\\+,@er1" \
+       "cmp.w @er3+,@er1"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x6(:2|),er1\\)" \
+       "cmp.w @er3+,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@er3\\+,@-er1" \
+       "cmp.w @er3+,@-er1"
+gdb_test "x" "cmp.w\t@er3\\+,@er1\\+" \
+       "cmp.w @er3+,@er1+"
+gdb_test "x" "cmp.w\t@er3\\+,@er1-" \
+       "cmp.w @er3+,@er1-"
+gdb_test "x" "cmp.w\t@er3\\+,@\\+er1" \
+       "cmp.w @er3+,@+er1"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@er3\\+,@0x9abc(:16|)" \
+       "cmp.w @er3+,@0x9abc:16"
+gdb_test "x" "cmp.w\t@er3\\+,@0x9abcdef0(:32|)" \
+       "cmp.w @er3+,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@er3-,@er1" \
+       "cmp.w @er3-,@er1"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x6(:2|),er1\\)" \
+       "cmp.w @er3-,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@er3-,@-er1" \
+       "cmp.w @er3-,@-er1"
+gdb_test "x" "cmp.w\t@er3-,@er1\\+" \
+       "cmp.w @er3-,@er1+"
+gdb_test "x" "cmp.w\t@er3-,@er1-" \
+       "cmp.w @er3-,@er1-"
+gdb_test "x" "cmp.w\t@er3-,@\\+er1" \
+       "cmp.w @er3-,@+er1"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@er3-,@0x9abc(:16|)" \
+       "cmp.w @er3-,@0x9abc:16"
+gdb_test "x" "cmp.w\t@er3-,@0x9abcdef0(:32|)" \
+       "cmp.w @er3-,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\+er3,@er1" \
+       "cmp.w @+er3,@er1"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x6(:2|),er1\\)" \
+       "cmp.w @+er3,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\+er3,@-er1" \
+       "cmp.w @+er3,@-er1"
+gdb_test "x" "cmp.w\t@\\+er3,@er1\\+" \
+       "cmp.w @+er3,@er1+"
+gdb_test "x" "cmp.w\t@\\+er3,@er1-" \
+       "cmp.w @+er3,@er1-"
+gdb_test "x" "cmp.w\t@\\+er3,@\\+er1" \
+       "cmp.w @+er3,@+er1"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\+er3,@0x9abc(:16|)" \
+       "cmp.w @+er3,@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\+er3,@0x9abcdef0(:32|)" \
+       "cmp.w @+er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@er1" \
+       "cmp.w @(0x1234:16,er3),@er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "cmp.w @(0x1234:16,er3),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "cmp.w @(0x1234:16,er3),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "cmp.w @(0x1234:16,er3),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "cmp.w @(0x1234:16,er3),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "cmp.w @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "cmp.w @(0x12345678:32,er3),@er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "cmp.w @(0x12345678:32,er3),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "cmp.w @(0x12345678:32,er3),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "cmp.w @(0x12345678:32,er3),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "cmp.w @(0x12345678:32,er3),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "cmp.w @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "cmp.w @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "cmp.w @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "cmp.w @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "cmp.w @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "cmp.w @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "cmp.w @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "cmp.w @(0x1234:16,r3.w),@er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "cmp.w @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "cmp.w @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "cmp.w @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "cmp.w @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "cmp.w @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "cmp.w @(0x1234:16,er3.l),@er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "cmp.w @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "cmp.w @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "cmp.w @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "cmp.w @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "cmp.w @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "cmp.w @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "cmp.w @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "cmp.w @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "cmp.w @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "cmp.w @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "cmp.w @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "cmp.w @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "cmp.w @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "cmp.w @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "cmp.w @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "cmp.w @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "cmp.w @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "cmp.w @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "cmp.w @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "cmp.w @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "cmp.w @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "cmp.w @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "cmp.w @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "cmp.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "cmp.w @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@er1" \
+       "cmp.w @0x1234:16,@er1"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@-er1" \
+       "cmp.w @0x1234:16,@-er1"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@er1\\+" \
+       "cmp.w @0x1234:16,@er1+"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@er1-" \
+       "cmp.w @0x1234:16,@er1-"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\+er1" \
+       "cmp.w @0x1234:16,@+er1"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@0x9abc(:16|)" \
+       "cmp.w @0x1234:16,@0x9abc:16"
+gdb_test "x" "cmp.w\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "cmp.w @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@er1" \
+       "cmp.w @0x12345678:32,@er1"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x6(:2|),er1\\)" \
+       "cmp.w @0x12345678:32,@(0x6:2,er1)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@-er1" \
+       "cmp.w @0x12345678:32,@-er1"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@er1\\+" \
+       "cmp.w @0x12345678:32,@er1+"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@er1-" \
+       "cmp.w @0x12345678:32,@er1-"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\+er1" \
+       "cmp.w @0x12345678:32,@+er1"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.w @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.w @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.w @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.w @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.w @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.w @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.w @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "cmp.w @0x12345678:32,@0x9abc:16"
+gdb_test "x" "cmp.w\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "cmp.w @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),er1" \
+       "cmp.l #0x12345678:32,er1"
+gdb_test "x" "cmp.l\t#0x1234(:16|),er1" \
+       "cmp.l #0x1234:16,er1"
+gdb_test "x" "cmp.l\t#0x7(:3|),er2" \
+       "cmp.l #0x7:3,er2"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@er1" \
+       "cmp.l #0x12345678:32,@er1"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "cmp.l #0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@er1\\+" \
+       "cmp.l #0x12345678:32,@er1+"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@-er1" \
+       "cmp.l #0x12345678:32,@-er1"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\+er1" \
+       "cmp.l #0x12345678:32,@+er1"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@er1-" \
+       "cmp.l #0x12345678:32,@er1-"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l #0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l #0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l #0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l #0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l #0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l #0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l #0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@0x9abc(:16|)" \
+       "cmp.l #0x12345678:32,@0x9abc:16"
+gdb_test "x" "cmp.l\t#0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "cmp.l #0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@er1" \
+       "cmp.l #0x1234:16,@er1"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "cmp.l #0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@er1\\+" \
+       "cmp.l #0x1234:16,@er1+"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@-er1" \
+       "cmp.l #0x1234:16,@-er1"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\+er1" \
+       "cmp.l #0x1234:16,@+er1"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@er1-" \
+       "cmp.l #0x1234:16,@er1-"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@0x9abc(:16|)" \
+       "cmp.l #0x1234:16,@0x9abc:16"
+gdb_test "x" "cmp.l\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "cmp.l #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\ter3,er1" \
+       "cmp.l er3,er1"
+gdb_test "x" "cmp.l\ter3,@er1" \
+       "cmp.l er3,@er1"
+gdb_test "x" "cmp.l\ter3,@\\(0xc(:2|),er1\\)" \
+       "cmp.l er3,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\ter3,@er1\\+" \
+       "cmp.l er3,@er1+"
+gdb_test "x" "cmp.l\ter3,@-er1" \
+       "cmp.l er3,@-er1"
+gdb_test "x" "cmp.l\ter3,@\\+er1" \
+       "cmp.l er3,@+er1"
+gdb_test "x" "cmp.l\ter3,@er1-" \
+       "cmp.l er3,@er1-"
+gdb_test "x" "cmp.l\ter3,@\\(0x1234(:16|),er1\\)" \
+       "cmp.l er3,@(0x1234:16,er1)"
+gdb_test "x" "cmp.l\ter3,@\\(0x12345678(:32|),er1\\)" \
+       "cmp.l er3,@(0x12345678:32,er1)"
+gdb_test "x" "cmp.l\ter3,@\\(0x1234(:16|),r2l.b\\)" \
+       "cmp.l er3,@(0x1234:16,r2l.b)"
+gdb_test "x" "cmp.l\ter3,@\\(0x1234(:16|),r2.w\\)" \
+       "cmp.l er3,@(0x1234:16,r2.w)"
+gdb_test "x" "cmp.l\ter3,@\\(0x1234(:16|),er2.l\\)" \
+       "cmp.l er3,@(0x1234:16,er2.l)"
+gdb_test "x" "cmp.l\ter3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "cmp.l er3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "cmp.l\ter3,@\\(0x12345678(:32|),r2.w\\)" \
+       "cmp.l er3,@(0x12345678:32,r2.w)"
+gdb_test "x" "cmp.l\ter3,@\\(0x12345678(:32|),er2.l\\)" \
+       "cmp.l er3,@(0x12345678:32,er2.l)"
+gdb_test "x" "cmp.l\ter3,@0x1234(:16|)" \
+       "cmp.l er3,@0x1234:16"
+gdb_test "x" "cmp.l\ter3,@0x12345678(:32|)" \
+       "cmp.l er3,@0x12345678:32"
+gdb_test "x" "cmp.l\t@er3,er1" \
+       "cmp.l @er3,er1"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),er1" \
+       "cmp.l @(0xc:2,er3),er1"
+gdb_test "x" "cmp.l\t@er3\\+,er1" \
+       "cmp.l @er3+,er1"
+gdb_test "x" "cmp.l\t@-er3,er1" \
+       "cmp.l @-er3,er1"
+gdb_test "x" "cmp.l\t@\\+er3,er1" \
+       "cmp.l @+er3,er1"
+gdb_test "x" "cmp.l\t@er3-,er1" \
+       "cmp.l @er3-,er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er1\\),er1" \
+       "cmp.l @(0x1234:16,er1),er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er1\\),er1" \
+       "cmp.l @(0x12345678:32,er1),er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r2l.b\\),er1" \
+       "cmp.l @(0x1234:16,r2l.b),er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r2.w\\),er1" \
+       "cmp.l @(0x1234:16,r2.w),er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er2.l\\),er1" \
+       "cmp.l @(0x1234:16,er2.l),er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r2l.b\\),er1" \
+       "cmp.l @(0x12345678:32,r2l.b),er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r2.w\\),er1" \
+       "cmp.l @(0x12345678:32,r2.w),er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er2.l\\),er1" \
+       "cmp.l @(0x12345678:32,er2.l),er1"
+gdb_test "x" "cmp.l\t@0x1234(:16|),er1" \
+       "cmp.l @0x1234:16,er1"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),er1" \
+       "cmp.l @0x12345678:32,er1"
+gdb_test "x" "cmp.l\t@er3,@er1" \
+       "cmp.l @er3,@er1"
+gdb_test "x" "cmp.l\t@er3,@\\(0xc(:2|),er1\\)" \
+       "cmp.l @er3,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@er3,@-er1" \
+       "cmp.l @er3,@-er1"
+gdb_test "x" "cmp.l\t@er3,@er1\\+" \
+       "cmp.l @er3,@er1+"
+gdb_test "x" "cmp.l\t@er3,@er1-" \
+       "cmp.l @er3,@er1-"
+gdb_test "x" "cmp.l\t@er3,@\\+er1" \
+       "cmp.l @er3,@+er1"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@er3,@0x9abc(:16|)" \
+       "cmp.l @er3,@0x9abc:16"
+gdb_test "x" "cmp.l\t@er3,@0x9abcdef0(:32|)" \
+       "cmp.l @er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@er1" \
+       "cmp.l @(0xc:2,er3),@er1"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0xc:2,er3),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@-er1" \
+       "cmp.l @(0xc:2,er3),@-er1"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@er1\\+" \
+       "cmp.l @(0xc:2,er3),@er1+"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@er1-" \
+       "cmp.l @(0xc:2,er3),@er1-"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\+er1" \
+       "cmp.l @(0xc:2,er3),@+er1"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@0x9abc(:16|)" \
+       "cmp.l @(0xc:2,er3),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0xc(:2|),er3\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0xc:2,er3),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@-er3,@er1" \
+       "cmp.l @-er3,@er1"
+gdb_test "x" "cmp.l\t@-er3,@\\(0xc(:2|),er1\\)" \
+       "cmp.l @-er3,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@-er3,@-er1" \
+       "cmp.l @-er3,@-er1"
+gdb_test "x" "cmp.l\t@-er3,@er1\\+" \
+       "cmp.l @-er3,@er1+"
+gdb_test "x" "cmp.l\t@-er3,@er1-" \
+       "cmp.l @-er3,@er1-"
+gdb_test "x" "cmp.l\t@-er3,@\\+er1" \
+       "cmp.l @-er3,@+er1"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@-er3,@0x9abc(:16|)" \
+       "cmp.l @-er3,@0x9abc:16"
+gdb_test "x" "cmp.l\t@-er3,@0x9abcdef0(:32|)" \
+       "cmp.l @-er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@er3\\+,@er1" \
+       "cmp.l @er3+,@er1"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0xc(:2|),er1\\)" \
+       "cmp.l @er3+,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@er3\\+,@-er1" \
+       "cmp.l @er3+,@-er1"
+gdb_test "x" "cmp.l\t@er3\\+,@er1\\+" \
+       "cmp.l @er3+,@er1+"
+gdb_test "x" "cmp.l\t@er3\\+,@er1-" \
+       "cmp.l @er3+,@er1-"
+gdb_test "x" "cmp.l\t@er3\\+,@\\+er1" \
+       "cmp.l @er3+,@+er1"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@er3\\+,@0x9abc(:16|)" \
+       "cmp.l @er3+,@0x9abc:16"
+gdb_test "x" "cmp.l\t@er3\\+,@0x9abcdef0(:32|)" \
+       "cmp.l @er3+,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@er3-,@er1" \
+       "cmp.l @er3-,@er1"
+gdb_test "x" "cmp.l\t@er3-,@\\(0xc(:2|),er1\\)" \
+       "cmp.l @er3-,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@er3-,@-er1" \
+       "cmp.l @er3-,@-er1"
+gdb_test "x" "cmp.l\t@er3-,@er1\\+" \
+       "cmp.l @er3-,@er1+"
+gdb_test "x" "cmp.l\t@er3-,@er1-" \
+       "cmp.l @er3-,@er1-"
+gdb_test "x" "cmp.l\t@er3-,@\\+er1" \
+       "cmp.l @er3-,@+er1"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@er3-,@0x9abc(:16|)" \
+       "cmp.l @er3-,@0x9abc:16"
+gdb_test "x" "cmp.l\t@er3-,@0x9abcdef0(:32|)" \
+       "cmp.l @er3-,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\+er3,@er1" \
+       "cmp.l @+er3,@er1"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0xc(:2|),er1\\)" \
+       "cmp.l @+er3,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\+er3,@-er1" \
+       "cmp.l @+er3,@-er1"
+gdb_test "x" "cmp.l\t@\\+er3,@er1\\+" \
+       "cmp.l @+er3,@er1+"
+gdb_test "x" "cmp.l\t@\\+er3,@er1-" \
+       "cmp.l @+er3,@er1-"
+gdb_test "x" "cmp.l\t@\\+er3,@\\+er1" \
+       "cmp.l @+er3,@+er1"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\+er3,@0x9abc(:16|)" \
+       "cmp.l @+er3,@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\+er3,@0x9abcdef0(:32|)" \
+       "cmp.l @+er3,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@er1" \
+       "cmp.l @(0x1234:16,er3),@er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x1234:16,er3),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "cmp.l @(0x1234:16,er3),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "cmp.l @(0x1234:16,er3),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "cmp.l @(0x1234:16,er3),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "cmp.l @(0x1234:16,er3),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "cmp.l @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "cmp.l @(0x12345678:32,er3),@er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "cmp.l @(0x12345678:32,er3),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "cmp.l @(0x12345678:32,er3),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "cmp.l @(0x12345678:32,er3),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "cmp.l @(0x12345678:32,er3),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "cmp.l @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "cmp.l @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "cmp.l @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "cmp.l @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "cmp.l @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "cmp.l @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "cmp.l @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "cmp.l @(0x1234:16,r3.w),@er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "cmp.l @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "cmp.l @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "cmp.l @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "cmp.l @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "cmp.l @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "cmp.l @(0x1234:16,er3.l),@er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "cmp.l @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "cmp.l @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "cmp.l @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "cmp.l @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "cmp.l @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "cmp.l @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "cmp.l @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "cmp.l @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "cmp.l @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "cmp.l @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "cmp.l @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "cmp.l @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "cmp.l @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "cmp.l @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "cmp.l @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "cmp.l @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "cmp.l @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "cmp.l @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "cmp.l @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "cmp.l @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "cmp.l @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "cmp.l @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "cmp.l @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "cmp.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "cmp.l @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@er1" \
+       "cmp.l @0x1234:16,@er1"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@-er1" \
+       "cmp.l @0x1234:16,@-er1"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@er1\\+" \
+       "cmp.l @0x1234:16,@er1+"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@er1-" \
+       "cmp.l @0x1234:16,@er1-"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\+er1" \
+       "cmp.l @0x1234:16,@+er1"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@0x9abc(:16|)" \
+       "cmp.l @0x1234:16,@0x9abc:16"
+gdb_test "x" "cmp.l\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "cmp.l @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@er1" \
+       "cmp.l @0x12345678:32,@er1"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "cmp.l @0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@-er1" \
+       "cmp.l @0x12345678:32,@-er1"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@er1\\+" \
+       "cmp.l @0x12345678:32,@er1+"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@er1-" \
+       "cmp.l @0x12345678:32,@er1-"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\+er1" \
+       "cmp.l @0x12345678:32,@+er1"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "cmp.l @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "cmp.l @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "cmp.l @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "cmp.l @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "cmp.l @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "cmp.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "cmp.l @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "cmp.l @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "cmp.l @0x12345678:32,@0x9abc:16"
+gdb_test "x" "cmp.l\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "cmp.l @0x12345678:32,@0x9abcdef0:32"
diff --git a/gdb/testsuite/gdb.disasm/t05_cmp.s b/gdb/testsuite/gdb.disasm/t05_cmp.s
new file mode 100644 (file)
index 0000000..eef3359
--- /dev/null
@@ -0,0 +1,921 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;arith_1\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    cmp.b @er3,@er1                                ;7c350120\r
+    cmp.b @er3,@(3:2,er1)                          ;7c353120\r
+    cmp.b @er3,@-er1                               ;7c35b120\r
+    cmp.b @er3,@er1+                               ;7c358120\r
+    cmp.b @er3,@er1-                               ;7c35a120\r
+    cmp.b @er3,@+er1                               ;7c359120\r
+    cmp.b @er3,@(0xffff9abc:16,er1)                ;7c35c1209abc\r
+    cmp.b @er3,@(0x9abcdef0:32,er1)                ;7c35c9209abcdef0\r
+    cmp.b @er3,@(0xffff9abc:16,r2l.b)              ;7c35d2209abc\r
+    cmp.b @er3,@(0xffff9abc:16,r2.w)              ;7c35e2209abc\r
+    cmp.b @er3,@(0xffff9abc:16,er2.l)              ;7c35f2209abc\r
+    cmp.b @er3,@(0x9abcdef0:32,r2l.b)              ;7c35da209abcdef0\r
+    cmp.b @er3,@(0x9abcdef0:32,r2.w)              ;7c35ea209abcdef0\r
+    cmp.b @er3,@(0x9abcdef0:32,er2.l)              ;7c35fa209abcdef0\r
+    cmp.b @er3,@0xffff9abc:16                      ;7c3540209abc\r
+    cmp.b @er3,@0x9abcdef0:32                      ;7c3548209abcdef0\r
+\r
+    cmp.b @-er3,@er1                               ;01776c3c0120\r
+    cmp.b @-er3,@(3:2,er1)                         ;01776c3c3120\r
+    cmp.b @-er3,@-er1                              ;01776c3cb120\r
+    cmp.b @-er3,@er1+                              ;01776c3c8120\r
+    cmp.b @-er3,@er1-                              ;01776c3ca120\r
+    cmp.b @-er3,@+er1                              ;01776c3c9120\r
+    cmp.b @-er3,@(0xffff9abc:16,er1)               ;01776c3cc1209abc\r
+    cmp.b @-er3,@(0x9abcdef0:32,er1)               ;01776c3cc9209abcdef0\r
+    cmp.b @-er3,@(0xffff9abc:16,r2l.b)             ;01776c3cd2209abc\r
+    cmp.b @-er3,@(0xffff9abc:16,r2.w)             ;01776c3ce2209abc\r
+    cmp.b @-er3,@(0xffff9abc:16,er2.l)             ;01776c3cf2209abc\r
+    cmp.b @-er3,@(0x9abcdef0:32,r2l.b)             ;01776c3cda209abcdef0\r
+    cmp.b @-er3,@(0x9abcdef0:32,r2.w)             ;01776c3cea209abcdef0\r
+    cmp.b @-er3,@(0x9abcdef0:32,er2.l)             ;01776c3cfa209abcdef0\r
+    cmp.b @-er3,@0xffff9abc:16                     ;01776c3c40209abc\r
+    cmp.b @-er3,@0x9abcdef0:32                     ;01776c3c48209abcdef0\r
+\r
+    cmp.b @er3+,@er1                               ;01746c3c0120\r
+    cmp.b @er3+,@(3:2,er1)                         ;01746c3c3120\r
+    cmp.b @er3+,@-er1                              ;01746c3cb120\r
+    cmp.b @er3+,@er1+                              ;01746c3c8120\r
+    cmp.b @er3+,@er1-                              ;01746c3ca120\r
+    cmp.b @er3+,@+er1                              ;01746c3c9120\r
+    cmp.b @er3+,@(0xffff9abc:16,er1)               ;01746c3cc1209abc\r
+    cmp.b @er3+,@(0x9abcdef0:32,er1)               ;01746c3cc9209abcdef0\r
+    cmp.b @er3+,@(0xffff9abc:16,r2l.b)             ;01746c3cd2209abc\r
+    cmp.b @er3+,@(0xffff9abc:16,r2.w)             ;01746c3ce2209abc\r
+    cmp.b @er3+,@(0xffff9abc:16,er2.l)             ;01746c3cf2209abc\r
+    cmp.b @er3+,@(0x9abcdef0:32,r2l.b)             ;01746c3cda209abcdef0\r
+    cmp.b @er3+,@(0x9abcdef0:32,r2.w)             ;01746c3cea209abcdef0\r
+    cmp.b @er3+,@(0x9abcdef0:32,er2.l)             ;01746c3cfa209abcdef0\r
+    cmp.b @er3+,@0xffff9abc:16                     ;01746c3c40209abc\r
+    cmp.b @er3+,@0x9abcdef0:32                     ;01746c3c48209abcdef0\r
+\r
+    cmp.b @er3-,@er1                               ;01766c3c0120\r
+    cmp.b @er3-,@(3:2,er1)                         ;01766c3c3120\r
+    cmp.b @er3-,@-er1                              ;01766c3cb120\r
+    cmp.b @er3-,@er1+                              ;01766c3c8120\r
+    cmp.b @er3-,@er1-                              ;01766c3ca120\r
+    cmp.b @er3-,@+er1                              ;01766c3c9120\r
+    cmp.b @er3-,@(0xffff9abc:16,er1)               ;01766c3cc1209abc\r
+    cmp.b @er3-,@(0x9abcdef0:32,er1)               ;01766c3cc9209abcdef0\r
+    cmp.b @er3-,@(0xffff9abc:16,r2l.b)             ;01766c3cd2209abc\r
+    cmp.b @er3-,@(0xffff9abc:16,r2.w)             ;01766c3ce2209abc\r
+    cmp.b @er3-,@(0xffff9abc:16,er2.l)             ;01766c3cf2209abc\r
+    cmp.b @er3-,@(0x9abcdef0:32,r2l.b)             ;01766c3cda209abcdef0\r
+    cmp.b @er3-,@(0x9abcdef0:32,r2.w)             ;01766c3cea209abcdef0\r
+    cmp.b @er3-,@(0x9abcdef0:32,er2.l)             ;01766c3cfa209abcdef0\r
+    cmp.b @er3-,@0xffff9abc:16                     ;01766c3c40209abc\r
+    cmp.b @er3-,@0x9abcdef0:32                     ;01766c3c48209abcdef0\r
+\r
+    cmp.b @+er3,@er1                               ;01756c3c0120\r
+    cmp.b @+er3,@(3:2,er1)                         ;01756c3c3120\r
+    cmp.b @+er3,@-er1                              ;01756c3cb120\r
+    cmp.b @+er3,@er1+                              ;01756c3c8120\r
+    cmp.b @+er3,@er1-                              ;01756c3ca120\r
+    cmp.b @+er3,@+er1                              ;01756c3c9120\r
+    cmp.b @+er3,@(0xffff9abc:16,er1)               ;01756c3cc1209abc\r
+    cmp.b @+er3,@(0x9abcdef0:32,er1)               ;01756c3cc9209abcdef0\r
+    cmp.b @+er3,@(0xffff9abc:16,r2l.b)             ;01756c3cd2209abc\r
+    cmp.b @+er3,@(0xffff9abc:16,r2.w)             ;01756c3ce2209abc\r
+    cmp.b @+er3,@(0xffff9abc:16,er2.l)             ;01756c3cf2209abc\r
+    cmp.b @+er3,@(0x9abcdef0:32,r2l.b)             ;01756c3cda209abcdef0\r
+    cmp.b @+er3,@(0x9abcdef0:32,r2.w)             ;01756c3cea209abcdef0\r
+    cmp.b @+er3,@(0x9abcdef0:32,er2.l)             ;01756c3cfa209abcdef0\r
+    cmp.b @+er3,@0xffff9abc:16                     ;01756c3c40209abc\r
+    cmp.b @+er3,@0x9abcdef0:32                     ;01756c3c48209abcdef0\r
+\r
+    cmp.b @(0x1234:16,er3),@er1                         ;01746e3c12340120\r
+    cmp.b @(0x1234:16,er3),@(3:2,er1)                   ;01746e3c12343120\r
+    cmp.b @(0x1234:16,er3),@-er1                        ;01746e3c1234b120\r
+    cmp.b @(0x1234:16,er3),@er1+                        ;01746e3c12348120\r
+    cmp.b @(0x1234:16,er3),@er1-                        ;01746e3c1234a120\r
+    cmp.b @(0x1234:16,er3),@+er1                        ;01746e3c12349120\r
+    cmp.b @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01746e3c1234c1209abc\r
+    cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01746e3c1234c9209abcdef0\r
+    cmp.b @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01746e3c1234d2209abc\r
+    cmp.b @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01746e3c1234e2209abc\r
+    cmp.b @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01746e3c1234f2209abc\r
+    cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01746e3c1234da209abcdef0\r
+    cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01746e3c1234ea209abcdef0\r
+    cmp.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01746e3c1234fa209abcdef0\r
+    cmp.b @(0x1234:16,er3),@0xffff9abc:16               ;01746e3c123440209abc\r
+    cmp.b @(0x1234:16,er3),@0x9abcdef0:32               ;01746e3c123448209abcdef0\r
+\r
+    cmp.b @(0x12345678:32,er3),@er1                         ;78346a2c123456780120\r
+    cmp.b @(0x12345678:32,er3),@(3:2,er1)                   ;78346a2c123456783120\r
+    cmp.b @(0x12345678:32,er3),@-er1                        ;78346a2c12345678b120\r
+    cmp.b @(0x12345678:32,er3),@er1+                        ;78346a2c123456788120\r
+    cmp.b @(0x12345678:32,er3),@er1-                        ;78346a2c12345678a120\r
+    cmp.b @(0x12345678:32,er3),@+er1                        ;78346a2c123456789120\r
+    cmp.b @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346a2c12345678c1209abc\r
+    cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346a2c12345678c9209abcdef0\r
+    cmp.b @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346a2c12345678d2209abc\r
+    cmp.b @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346a2c12345678e2209abc\r
+    cmp.b @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346a2c12345678f2209abc\r
+    cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346a2c12345678da209abcdef0\r
+    cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346a2c12345678ea209abcdef0\r
+    cmp.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346a2c12345678fa209abcdef0\r
+    cmp.b @(0x12345678:32,er3),@0xffff9abc:16               ;78346a2c1234567840209abc\r
+    cmp.b @(0x12345678:32,er3),@0x9abcdef0:32               ;78346a2c1234567848209abcdef0\r
+\r
+    cmp.b @(0x1234:16,r3l.b),@er1                       ;01756e3c12340120\r
+    cmp.b @(0x1234:16,r3l.b),@(3:2,er1)                 ;01756e3c12343120\r
+    cmp.b @(0x1234:16,r3l.b),@-er1                      ;01756e3c1234b120\r
+    cmp.b @(0x1234:16,r3l.b),@er1+                      ;01756e3c12348120\r
+    cmp.b @(0x1234:16,r3l.b),@er1-                      ;01756e3c1234a120\r
+    cmp.b @(0x1234:16,r3l.b),@+er1                      ;01756e3c12349120\r
+    cmp.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01756e3c1234c1209abc\r
+    cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01756e3c1234c9209abcdef0\r
+    cmp.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01756e3c1234d2209abc\r
+    cmp.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01756e3c1234e2209abc\r
+    cmp.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01756e3c1234f2209abc\r
+    cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01756e3c1234da209abcdef0\r
+    cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01756e3c1234ea209abcdef0\r
+    cmp.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01756e3c1234fa209abcdef0\r
+    cmp.b @(0x1234:16,r3l.b),@0xffff9abc:16             ;01756e3c123440209abc\r
+    cmp.b @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01756e3c123448209abcdef0\r
+\r
+    cmp.b @(0x1234:16,r3.w),@er1                       ;01766e3c12340120\r
+    cmp.b @(0x1234:16,r3.w),@(3:2,er1)                 ;01766e3c12343120\r
+    cmp.b @(0x1234:16,r3.w),@-er1                      ;01766e3c1234b120\r
+    cmp.b @(0x1234:16,r3.w),@er1+                      ;01766e3c12348120\r
+    cmp.b @(0x1234:16,r3.w),@er1-                      ;01766e3c1234a120\r
+    cmp.b @(0x1234:16,r3.w),@+er1                      ;01766e3c12349120\r
+    cmp.b @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01766e3c1234c1209abc\r
+    cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01766e3c1234c9209abcdef0\r
+    cmp.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01766e3c1234d2209abc\r
+    cmp.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01766e3c1234e2209abc\r
+    cmp.b @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01766e3c1234f2209abc\r
+    cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01766e3c1234da209abcdef0\r
+    cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01766e3c1234ea209abcdef0\r
+    cmp.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01766e3c1234fa209abcdef0\r
+    cmp.b @(0x1234:16,r3.w),@0xffff9abc:16             ;01766e3c123440209abc\r
+    cmp.b @(0x1234:16,r3.w),@0x9abcdef0:32             ;01766e3c123448209abcdef0\r
+\r
+    cmp.b @(0x1234:16,er3.l),@er1                       ;01776e3c12340120\r
+    cmp.b @(0x1234:16,er3.l),@(3:2,er1)                 ;01776e3c12343120\r
+    cmp.b @(0x1234:16,er3.l),@-er1                      ;01776e3c1234b120\r
+    cmp.b @(0x1234:16,er3.l),@er1+                      ;01776e3c12348120\r
+    cmp.b @(0x1234:16,er3.l),@er1-                      ;01776e3c1234a120\r
+    cmp.b @(0x1234:16,er3.l),@+er1                      ;01776e3c12349120\r
+    cmp.b @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01776e3c1234c1209abc\r
+    cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01776e3c1234c9209abcdef0\r
+    cmp.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01776e3c1234d2209abc\r
+    cmp.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01776e3c1234e2209abc\r
+    cmp.b @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01776e3c1234f2209abc\r
+    cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01776e3c1234da209abcdef0\r
+    cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01776e3c1234ea209abcdef0\r
+    cmp.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01776e3c1234fa209abcdef0\r
+    cmp.b @(0x1234:16,er3.l),@0xffff9abc:16             ;01776e3c123440209abc\r
+    cmp.b @(0x1234:16,er3.l),@0x9abcdef0:32             ;01776e3c123448209abcdef0\r
+\r
+    cmp.b @(0x12345678:32,r3l.b),@er1                       ;78356a2c123456780120\r
+    cmp.b @(0x12345678:32,r3l.b),@(3:2,er1)                 ;78356a2c123456783120\r
+    cmp.b @(0x12345678:32,r3l.b),@-er1                      ;78356a2c12345678b120\r
+    cmp.b @(0x12345678:32,r3l.b),@er1+                      ;78356a2c123456788120\r
+    cmp.b @(0x12345678:32,r3l.b),@er1-                      ;78356a2c12345678a120\r
+    cmp.b @(0x12345678:32,r3l.b),@+er1                      ;78356a2c123456789120\r
+    cmp.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356a2c12345678c1209abc\r
+    cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356a2c12345678c9209abcdef0\r
+    cmp.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356a2c12345678d2209abc\r
+    cmp.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356a2c12345678e2209abc\r
+    cmp.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356a2c12345678f2209abc\r
+    cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356a2c12345678da209abcdef0\r
+    cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356a2c12345678ea209abcdef0\r
+    cmp.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356a2c12345678fa209abcdef0\r
+    cmp.b @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356a2c1234567840209abc\r
+    cmp.b @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356a2c1234567848209abcdef0\r
+\r
+    cmp.b @(0x12345678:32,r3.w),@er1                       ;78366a2c123456780120\r
+    cmp.b @(0x12345678:32,r3.w),@(3:2,er1)                 ;78366a2c123456783120\r
+    cmp.b @(0x12345678:32,r3.w),@-er1                      ;78366a2c12345678b120\r
+    cmp.b @(0x12345678:32,r3.w),@er1+                      ;78366a2c123456788120\r
+    cmp.b @(0x12345678:32,r3.w),@er1-                      ;78366a2c12345678a120\r
+    cmp.b @(0x12345678:32,r3.w),@+er1                      ;78366a2c123456789120\r
+    cmp.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366a2c12345678c1209abc\r
+    cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366a2c12345678c9209abcdef0\r
+    cmp.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366a2c12345678d2209abc\r
+    cmp.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366a2c12345678e2209abc\r
+    cmp.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366a2c12345678f2209abc\r
+    cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366a2c12345678da209abcdef0\r
+    cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366a2c12345678ea209abcdef0\r
+    cmp.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366a2c12345678fa209abcdef0\r
+    cmp.b @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366a2c1234567840209abc\r
+    cmp.b @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366a2c1234567848209abcdef0\r
+\r
+    cmp.b @(0x12345678:32,er3.l),@er1                       ;78376a2c123456780120\r
+    cmp.b @(0x12345678:32,er3.l),@(3:2,er1)                 ;78376a2c123456783120\r
+    cmp.b @(0x12345678:32,er3.l),@-er1                      ;78376a2c12345678b120\r
+    cmp.b @(0x12345678:32,er3.l),@er1+                      ;78376a2c123456788120\r
+    cmp.b @(0x12345678:32,er3.l),@er1-                      ;78376a2c12345678a120\r
+    cmp.b @(0x12345678:32,er3.l),@+er1                      ;78376a2c123456789120\r
+    cmp.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376a2c12345678c1209abc\r
+    cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376a2c12345678c9209abcdef0\r
+    cmp.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376a2c12345678d2209abc\r
+    cmp.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376a2c12345678e2209abc\r
+    cmp.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376a2c12345678f2209abc\r
+    cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376a2c12345678da209abcdef0\r
+    cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376a2c12345678ea209abcdef0\r
+    cmp.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376a2c12345678fa209abcdef0\r
+    cmp.b @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376a2c1234567840209abc\r
+    cmp.b @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376a2c1234567848209abcdef0\r
+\r
+    cmp.b @0x1234:16,@er1                              ;6a1512340120\r
+    cmp.b @0x1234:16,@(3:2,er1)                        ;6a1512343120\r
+    cmp.b @0x1234:16,@-er1                             ;6a151234b120\r
+    cmp.b @0x1234:16,@er1+                             ;6a1512348120\r
+    cmp.b @0x1234:16,@er1-                             ;6a151234a120\r
+    cmp.b @0x1234:16,@+er1                             ;6a1512349120\r
+    cmp.b @0x1234:16,@(0xffff9abc:16,er1)              ;6a151234c1209abc\r
+    cmp.b @0x1234:16,@(0x9abcdef0:32,er1)              ;6a151234c9209abcdef0\r
+    cmp.b @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6a151234d2209abc\r
+    cmp.b @0x1234:16,@(0xffff9abc:16,r2.w)            ;6a151234e2209abc\r
+    cmp.b @0x1234:16,@(0xffff9abc:16,er2.l)            ;6a151234f2209abc\r
+    cmp.b @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6a151234da209abcdef0\r
+    cmp.b @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6a151234ea209abcdef0\r
+    cmp.b @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6a151234fa209abcdef0\r
+    cmp.b @0x1234:16,@0xffff9abc:16                    ;6a15123440209abc\r
+    cmp.b @0x1234:16,@0x9abcdef0:32                    ;6a15123448209abcdef0\r
+\r
+    cmp.b @0x12345678:32,@er1                              ;6a35123456780120\r
+    cmp.b @0x12345678:32,@(3:2,er1)                        ;6a35123456783120\r
+    cmp.b @0x12345678:32,@-er1                             ;6a3512345678b120\r
+    cmp.b @0x12345678:32,@er1+                             ;6a35123456788120\r
+    cmp.b @0x12345678:32,@er1-                             ;6a3512345678a120\r
+    cmp.b @0x12345678:32,@+er1                             ;6a35123456789120\r
+    cmp.b @0x12345678:32,@(0xffff9abc:16,er1)              ;6a3512345678c1209abc\r
+    cmp.b @0x12345678:32,@(0x9abcdef0:32,er1)              ;6a3512345678c9209abcdef0\r
+    cmp.b @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6a3512345678d2209abc\r
+    cmp.b @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6a3512345678e2209abc\r
+    cmp.b @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6a3512345678f2209abc\r
+    cmp.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6a3512345678da209abcdef0\r
+    cmp.b @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6a3512345678ea209abcdef0\r
+    cmp.b @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6a3512345678fa209abcdef0\r
+    cmp.b @0x12345678:32,@0xffff9abc:16                    ;6a351234567840209abc\r
+    cmp.b @0x12345678:32,@0x9abcdef0:32                    ;6a351234567848209abcdef0\r
+\r
+    cmp.w #0x1234:16,r1                       ;79211234\r
+    cmp.w #0x7:3,r2                         ;1f72\r
+    cmp.w #0x1234:16,@er1                      ;015e01201234\r
+    cmp.w #0x1234:16,@(0x6:2,er1)             ;015e31201234\r
+    cmp.w #0x1234:16,@er1+                     ;015e81201234\r
+    cmp.w #0x1234:16,@-er1                     ;015eb1201234\r
+    cmp.w #0x1234:16,@+er1                     ;015e91201234\r
+    cmp.w #0x1234:16,@er1-                     ;015ea1201234\r
+    cmp.w #0x1234:16,@(0xffff9abc:16,er1)               ;015ec1209abc1234\r
+    cmp.w #0x1234:16,@(0x9abcdef0:32,er1)               ;015ec9209abcdef01234\r
+    cmp.w #0x1234:16,@(0xffff9abc:16,r2l.b)             ;015ed2209abc1234\r
+    cmp.w #0x1234:16,@(0xffff9abc:16,r2.w)             ;015ee2209abc1234\r
+    cmp.w #0x1234:16,@(0xffff9abc:16,er2.l)             ;015ef2209abc1234\r
+    cmp.w #0x1234:16,@(0x9abcdef0:32,r2l.b)             ;015eda209abcdef01234\r
+    cmp.w #0x1234:16,@(0x9abcdef0:32,r2.w)             ;015eea209abcdef01234\r
+    cmp.w #0x1234:16,@(0x9abcdef0:32,er2.l)             ;015efa209abcdef01234\r
+    cmp.w #0x1234:16,@0xffff9abc:16                     ;015e40209abc1234\r
+    cmp.w #0x1234:16,@0x9abcdef0:32                     ;015e48209abcdef01234\r
+\r
+    cmp.w #0x7:3,@er1                       ;7d901f70\r
+    cmp.w #0x7:3,@0x1234:16                     ;6b1812341f70\r
+    cmp.w #0x7:3,@0x12345678:32                     ;6b38123456781f70\r
+\r
+    cmp.w r3,r1                           ;1d31\r
+\r
+    cmp.w r3,@er1                         ;7d901d30\r
+    cmp.w r3,@(0x6:2,er1)                ;01593123\r
+    cmp.w r3,@er1+                        ;01598123\r
+    cmp.w r3,@-er1                        ;0159b123\r
+    cmp.w r3,@+er1                        ;01599123\r
+    cmp.w r3,@er1-                        ;0159a123\r
+    cmp.w r3,@(0x1234:16,er1)                  ;0159c1231234\r
+    cmp.w r3,@(0x12345678:32,er1)                  ;0159c92312345678\r
+    cmp.w r3,@(0x1234:16,r2l.b)                ;0159d2231234\r
+    cmp.w r3,@(0x1234:16,r2.w)                ;0159e2231234\r
+    cmp.w r3,@(0x1234:16,er2.l)                ;0159f2231234\r
+    cmp.w r3,@(0x12345678:32,r2l.b)                ;0159da2312345678\r
+    cmp.w r3,@(0x12345678:32,r2.w)                ;0159ea2312345678\r
+    cmp.w r3,@(0x12345678:32,er2.l)                ;0159fa2312345678\r
+    cmp.w r3,@0x1234:16                       ;6b1812341d30\r
+    cmp.w r3,@0x12345678:32                       ;6b38123456781d30\r
+\r
+    cmp.w @er3,r1                         ;7cb01d01\r
+    cmp.w @(0x6:2,er3),r1               ;015a3321\r
+    cmp.w @er3+,r1                       ;015a8321\r
+    cmp.w @-er3,r1                       ;015ab321\r
+    cmp.w @+er3,r1                       ;015a9321\r
+    cmp.w @er3-,r1                       ;015aa321\r
+    cmp.w @(0x1234:16,er1),r1                  ;015ac1211234\r
+    cmp.w @(0x12345678:32,er1),r1                  ;015ac92112345678\r
+    cmp.w @(0x1234:16,r2l.b),r1                ;015ad2211234\r
+    cmp.w @(0x1234:16,r2.w),r1                ;015ae2211234\r
+    cmp.w @(0x1234:16,er2.l),r1                ;015af2211234\r
+    cmp.w @(0x12345678:32,r2l.b),r1                ;015ada2112345678\r
+    cmp.w @(0x12345678:32,r2.w),r1                ;015aea2112345678\r
+    cmp.w @(0x12345678:32,er2.l),r1                ;015afa2112345678\r
+    cmp.w @0x1234:16,r1                       ;6b1012341d01\r
+    cmp.w @0x12345678:32,r1                       ;6b30123456781d01\r
+\r
+    cmp.w @er3,@er1                                ;7cb50120\r
+    cmp.w @er3,@(6:2,er1)                          ;7cb53120\r
+    cmp.w @er3,@-er1                               ;7cb5b120\r
+    cmp.w @er3,@er1+                               ;7cb58120\r
+    cmp.w @er3,@er1-                               ;7cb5a120\r
+    cmp.w @er3,@+er1                               ;7cb59120\r
+    cmp.w @er3,@(0xffff9abc:16,er1)                ;7cb5c1209abc\r
+    cmp.w @er3,@(0x9abcdef0:32,er1)                ;7cb5c9209abcdef0\r
+    cmp.w @er3,@(0xffff9abc:16,r2l.b)              ;7cb5d2209abc\r
+    cmp.w @er3,@(0xffff9abc:16,r2.w)              ;7cb5e2209abc\r
+    cmp.w @er3,@(0xffff9abc:16,er2.l)              ;7cb5f2209abc\r
+    cmp.w @er3,@(0x9abcdef0:32,r2l.b)              ;7cb5da209abcdef0\r
+    cmp.w @er3,@(0x9abcdef0:32,r2.w)              ;7cb5ea209abcdef0\r
+    cmp.w @er3,@(0x9abcdef0:32,er2.l)              ;7cb5fa209abcdef0\r
+    cmp.w @er3,@0xffff9abc:16                      ;7cb540209abc\r
+    cmp.w @er3,@0x9abcdef0:32                      ;7cb548209abcdef0\r
+\r
+    cmp.w @-er3,@er1                               ;01576d3c0120\r
+    cmp.w @-er3,@(6:2,er1)                         ;01576d3c3120\r
+    cmp.w @-er3,@-er1                              ;01576d3cb120\r
+    cmp.w @-er3,@er1+                              ;01576d3c8120\r
+    cmp.w @-er3,@er1-                              ;01576d3ca120\r
+    cmp.w @-er3,@+er1                              ;01576d3c9120\r
+    cmp.w @-er3,@(0xffff9abc:16,er1)               ;01576d3cc1209abc\r
+    cmp.w @-er3,@(0x9abcdef0:32,er1)               ;01576d3cc9209abcdef0\r
+    cmp.w @-er3,@(0xffff9abc:16,r2l.b)             ;01576d3cd2209abc\r
+    cmp.w @-er3,@(0xffff9abc:16,r2.w)             ;01576d3ce2209abc\r
+    cmp.w @-er3,@(0xffff9abc:16,er2.l)             ;01576d3cf2209abc\r
+    cmp.w @-er3,@(0x9abcdef0:32,r2l.b)             ;01576d3cda209abcdef0\r
+    cmp.w @-er3,@(0x9abcdef0:32,r2.w)             ;01576d3cea209abcdef0\r
+    cmp.w @-er3,@(0x9abcdef0:32,er2.l)             ;01576d3cfa209abcdef0\r
+    cmp.w @-er3,@0xffff9abc:16                     ;01576d3c40209abc\r
+    cmp.w @-er3,@0x9abcdef0:32                     ;01576d3c48209abcdef0\r
+\r
+    cmp.w @er3+,@er1                               ;01546d3c0120\r
+    cmp.w @er3+,@(6:2,er1)                         ;01546d3c3120\r
+    cmp.w @er3+,@-er1                              ;01546d3cb120\r
+    cmp.w @er3+,@er1+                              ;01546d3c8120\r
+    cmp.w @er3+,@er1-                              ;01546d3ca120\r
+    cmp.w @er3+,@+er1                              ;01546d3c9120\r
+    cmp.w @er3+,@(0xffff9abc:16,er1)               ;01546d3cc1209abc\r
+    cmp.w @er3+,@(0x9abcdef0:32,er1)               ;01546d3cc9209abcdef0\r
+    cmp.w @er3+,@(0xffff9abc:16,r2l.b)             ;01546d3cd2209abc\r
+    cmp.w @er3+,@(0xffff9abc:16,r2.w)             ;01546d3ce2209abc\r
+    cmp.w @er3+,@(0xffff9abc:16,er2.l)             ;01546d3cf2209abc\r
+    cmp.w @er3+,@(0x9abcdef0:32,r2l.b)             ;01546d3cda209abcdef0\r
+    cmp.w @er3+,@(0x9abcdef0:32,r2.w)             ;01546d3cea209abcdef0\r
+    cmp.w @er3+,@(0x9abcdef0:32,er2.l)             ;01546d3cfa209abcdef0\r
+    cmp.w @er3+,@0xffff9abc:16                     ;01546d3c40209abc\r
+    cmp.w @er3+,@0x9abcdef0:32                     ;01546d3c48209abcdef0\r
+\r
+    cmp.w @er3-,@er1                               ;01566d3c0120\r
+    cmp.w @er3-,@(6:2,er1)                         ;01566d3c3120\r
+    cmp.w @er3-,@-er1                              ;01566d3cb120\r
+    cmp.w @er3-,@er1+                              ;01566d3c8120\r
+    cmp.w @er3-,@er1-                              ;01566d3ca120\r
+    cmp.w @er3-,@+er1                              ;01566d3c9120\r
+    cmp.w @er3-,@(0xffff9abc:16,er1)               ;01566d3cc1209abc\r
+    cmp.w @er3-,@(0x9abcdef0:32,er1)               ;01566d3cc9209abcdef0\r
+    cmp.w @er3-,@(0xffff9abc:16,r2l.b)             ;01566d3cd2209abc\r
+    cmp.w @er3-,@(0xffff9abc:16,r2.w)             ;01566d3ce2209abc\r
+    cmp.w @er3-,@(0xffff9abc:16,er2.l)             ;01566d3cf2209abc\r
+    cmp.w @er3-,@(0x9abcdef0:32,r2l.b)             ;01566d3cda209abcdef0\r
+    cmp.w @er3-,@(0x9abcdef0:32,r2.w)             ;01566d3cea209abcdef0\r
+    cmp.w @er3-,@(0x9abcdef0:32,er2.l)             ;01566d3cfa209abcdef0\r
+    cmp.w @er3-,@0xffff9abc:16                     ;01566d3c40209abc\r
+    cmp.w @er3-,@0x9abcdef0:32                     ;01566d3c48209abcdef0\r
+\r
+    cmp.w @+er3,@er1                               ;01556d3c0120\r
+    cmp.w @+er3,@(6:2,er1)                         ;01556d3c3120\r
+    cmp.w @+er3,@-er1                              ;01556d3cb120\r
+    cmp.w @+er3,@er1+                              ;01556d3c8120\r
+    cmp.w @+er3,@er1-                              ;01556d3ca120\r
+    cmp.w @+er3,@+er1                              ;01556d3c9120\r
+    cmp.w @+er3,@(0xffff9abc:16,er1)               ;01556d3cc1209abc\r
+    cmp.w @+er3,@(0x9abcdef0:32,er1)               ;01556d3cc9209abcdef0\r
+    cmp.w @+er3,@(0xffff9abc:16,r2l.b)             ;01556d3cd2209abc\r
+    cmp.w @+er3,@(0xffff9abc:16,r2.w)             ;01556d3ce2209abc\r
+    cmp.w @+er3,@(0xffff9abc:16,er2.l)             ;01556d3cf2209abc\r
+    cmp.w @+er3,@(0x9abcdef0:32,r2l.b)             ;01556d3cda209abcdef0\r
+    cmp.w @+er3,@(0x9abcdef0:32,r2.w)             ;01556d3cea209abcdef0\r
+    cmp.w @+er3,@(0x9abcdef0:32,er2.l)             ;01556d3cfa209abcdef0\r
+    cmp.w @+er3,@0xffff9abc:16                     ;01556d3c40209abc\r
+    cmp.w @+er3,@0x9abcdef0:32                     ;01556d3c48209abcdef0\r
+\r
+    cmp.w @(0x1234:16,er3),@er1                         ;01546f3c12340120\r
+    cmp.w @(0x1234:16,er3),@(6:2,er1)                   ;01546f3c12343120\r
+    cmp.w @(0x1234:16,er3),@-er1                        ;01546f3c1234b120\r
+    cmp.w @(0x1234:16,er3),@er1+                        ;01546f3c12348120\r
+    cmp.w @(0x1234:16,er3),@er1-                        ;01546f3c1234a120\r
+    cmp.w @(0x1234:16,er3),@+er1                        ;01546f3c12349120\r
+    cmp.w @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01546f3c1234c1209abc\r
+    cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01546f3c1234c9209abcdef0\r
+    cmp.w @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01546f3c1234d2209abc\r
+    cmp.w @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01546f3c1234e2209abc\r
+    cmp.w @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01546f3c1234f2209abc\r
+    cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01546f3c1234da209abcdef0\r
+    cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01546f3c1234ea209abcdef0\r
+    cmp.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01546f3c1234fa209abcdef0\r
+    cmp.w @(0x1234:16,er3),@0xffff9abc:16               ;01546f3c123440209abc\r
+    cmp.w @(0x1234:16,er3),@0x9abcdef0:32               ;01546f3c123448209abcdef0\r
+\r
+    cmp.w @(0x12345678:32,er3),@er1                         ;78346b2c123456780120\r
+    cmp.w @(0x12345678:32,er3),@(6:2,er1)                   ;78346b2c123456783120\r
+    cmp.w @(0x12345678:32,er3),@-er1                        ;78346b2c12345678b120\r
+    cmp.w @(0x12345678:32,er3),@er1+                        ;78346b2c123456788120\r
+    cmp.w @(0x12345678:32,er3),@er1-                        ;78346b2c12345678a120\r
+    cmp.w @(0x12345678:32,er3),@+er1                        ;78346b2c123456789120\r
+    cmp.w @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346b2c12345678c1209abc\r
+    cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346b2c12345678c9209abcdef0\r
+    cmp.w @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346b2c12345678d2209abc\r
+    cmp.w @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346b2c12345678e2209abc\r
+    cmp.w @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346b2c12345678f2209abc\r
+    cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346b2c12345678da209abcdef0\r
+    cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346b2c12345678ea209abcdef0\r
+    cmp.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346b2c12345678fa209abcdef0\r
+    cmp.w @(0x12345678:32,er3),@0xffff9abc:16               ;78346b2c1234567840209abc\r
+    cmp.w @(0x12345678:32,er3),@0x9abcdef0:32               ;78346b2c1234567848209abcdef0\r
+\r
+    cmp.w @(0x1234:16,r3l.b),@er1                       ;01556f3c12340120\r
+    cmp.w @(0x1234:16,r3l.b),@(6:2,er1)                 ;01556f3c12343120\r
+    cmp.w @(0x1234:16,r3l.b),@-er1                      ;01556f3c1234b120\r
+    cmp.w @(0x1234:16,r3l.b),@er1+                      ;01556f3c12348120\r
+    cmp.w @(0x1234:16,r3l.b),@er1-                      ;01556f3c1234a120\r
+    cmp.w @(0x1234:16,r3l.b),@+er1                      ;01556f3c12349120\r
+    cmp.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01556f3c1234c1209abc\r
+    cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01556f3c1234c9209abcdef0\r
+    cmp.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01556f3c1234d2209abc\r
+    cmp.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01556f3c1234e2209abc\r
+    cmp.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01556f3c1234f2209abc\r
+    cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01556f3c1234da209abcdef0\r
+    cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01556f3c1234ea209abcdef0\r
+    cmp.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01556f3c1234fa209abcdef0\r
+    cmp.w @(0x1234:16,r3l.b),@0xffff9abc:16             ;01556f3c123440209abc\r
+    cmp.w @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01556f3c123448209abcdef0\r
+\r
+    cmp.w @(0x1234:16,r3.w),@er1                       ;01566f3c12340120\r
+    cmp.w @(0x1234:16,r3.w),@(6:2,er1)                 ;01566f3c12343120\r
+    cmp.w @(0x1234:16,r3.w),@-er1                      ;01566f3c1234b120\r
+    cmp.w @(0x1234:16,r3.w),@er1+                      ;01566f3c12348120\r
+    cmp.w @(0x1234:16,r3.w),@er1-                      ;01566f3c1234a120\r
+    cmp.w @(0x1234:16,r3.w),@+er1                      ;01566f3c12349120\r
+    cmp.w @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01566f3c1234c1209abc\r
+    cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01566f3c1234c9209abcdef0\r
+    cmp.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01566f3c1234d2209abc\r
+    cmp.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01566f3c1234e2209abc\r
+    cmp.w @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01566f3c1234f2209abc\r
+    cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01566f3c1234da209abcdef0\r
+    cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01566f3c1234ea209abcdef0\r
+    cmp.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01566f3c1234fa209abcdef0\r
+    cmp.w @(0x1234:16,r3.w),@0xffff9abc:16             ;01566f3c123440209abc\r
+    cmp.w @(0x1234:16,r3.w),@0x9abcdef0:32             ;01566f3c123448209abcdef0\r
+\r
+    cmp.w @(0x1234:16,er3.l),@er1                       ;01576f3c12340120\r
+    cmp.w @(0x1234:16,er3.l),@(6:2,er1)                 ;01576f3c12343120\r
+    cmp.w @(0x1234:16,er3.l),@-er1                      ;01576f3c1234b120\r
+    cmp.w @(0x1234:16,er3.l),@er1+                      ;01576f3c12348120\r
+    cmp.w @(0x1234:16,er3.l),@er1-                      ;01576f3c1234a120\r
+    cmp.w @(0x1234:16,er3.l),@+er1                      ;01576f3c12349120\r
+    cmp.w @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01576f3c1234c1209abc\r
+    cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01576f3c1234c9209abcdef0\r
+    cmp.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01576f3c1234d2209abc\r
+    cmp.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01576f3c1234e2209abc\r
+    cmp.w @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01576f3c1234f2209abc\r
+    cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01576f3c1234da209abcdef0\r
+    cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01576f3c1234ea209abcdef0\r
+    cmp.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01576f3c1234fa209abcdef0\r
+    cmp.w @(0x1234:16,er3.l),@0xffff9abc:16             ;01576f3c123440209abc\r
+    cmp.w @(0x1234:16,er3.l),@0x9abcdef0:32             ;01576f3c123448209abcdef0\r
+\r
+    cmp.w @(0x12345678:32,r3l.b),@er1                       ;78356b2c123456780120\r
+    cmp.w @(0x12345678:32,r3l.b),@(6:2,er1)                 ;78356b2c123456783120\r
+    cmp.w @(0x12345678:32,r3l.b),@-er1                      ;78356b2c12345678b120\r
+    cmp.w @(0x12345678:32,r3l.b),@er1+                      ;78356b2c123456788120\r
+    cmp.w @(0x12345678:32,r3l.b),@er1-                      ;78356b2c12345678a120\r
+    cmp.w @(0x12345678:32,r3l.b),@+er1                      ;78356b2c123456789120\r
+    cmp.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356b2c12345678c1209abc\r
+    cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356b2c12345678c9209abcdef0\r
+    cmp.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356b2c12345678d2209abc\r
+    cmp.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356b2c12345678e2209abc\r
+    cmp.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356b2c12345678f2209abc\r
+    cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356b2c12345678da209abcdef0\r
+    cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356b2c12345678ea209abcdef0\r
+    cmp.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356b2c12345678fa209abcdef0\r
+    cmp.w @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356b2c1234567840209abc\r
+    cmp.w @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356b2c1234567848209abcdef0\r
+\r
+    cmp.w @(0x12345678:32,r3.w),@er1                       ;78366b2c123456780120\r
+    cmp.w @(0x12345678:32,r3.w),@(6:2,er1)                 ;78366b2c123456783120\r
+    cmp.w @(0x12345678:32,r3.w),@-er1                      ;78366b2c12345678b120\r
+    cmp.w @(0x12345678:32,r3.w),@er1+                      ;78366b2c123456788120\r
+    cmp.w @(0x12345678:32,r3.w),@er1-                      ;78366b2c12345678a120\r
+    cmp.w @(0x12345678:32,r3.w),@+er1                      ;78366b2c123456789120\r
+    cmp.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366b2c12345678c1209abc\r
+    cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366b2c12345678c9209abcdef0\r
+    cmp.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366b2c12345678d2209abc\r
+    cmp.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366b2c12345678e2209abc\r
+    cmp.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366b2c12345678f2209abc\r
+    cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366b2c12345678da209abcdef0\r
+    cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366b2c12345678ea209abcdef0\r
+    cmp.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366b2c12345678fa209abcdef0\r
+    cmp.w @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366b2c1234567840209abc\r
+    cmp.w @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366b2c1234567848209abcdef0\r
+\r
+    cmp.w @(0x12345678:32,er3.l),@er1                       ;78376b2c123456780120\r
+    cmp.w @(0x12345678:32,er3.l),@(6:2,er1)                 ;78376b2c123456783120\r
+    cmp.w @(0x12345678:32,er3.l),@-er1                      ;78376b2c12345678b120\r
+    cmp.w @(0x12345678:32,er3.l),@er1+                      ;78376b2c123456788120\r
+    cmp.w @(0x12345678:32,er3.l),@er1-                      ;78376b2c12345678a120\r
+    cmp.w @(0x12345678:32,er3.l),@+er1                      ;78376b2c123456789120\r
+    cmp.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376b2c12345678c1209abc\r
+    cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376b2c12345678c9209abcdef0\r
+    cmp.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376b2c12345678d2209abc\r
+    cmp.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376b2c12345678e2209abc\r
+    cmp.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376b2c12345678f2209abc\r
+    cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376b2c12345678da209abcdef0\r
+    cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376b2c12345678ea209abcdef0\r
+    cmp.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376b2c12345678fa209abcdef0\r
+    cmp.w @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376b2c1234567840209abc\r
+    cmp.w @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376b2c1234567848209abcdef0\r
+\r
+    cmp.w @0x1234:16,@er1                              ;6b1512340120\r
+    cmp.w @0x1234:16,@(6:2,er1)                        ;6b1512343120\r
+    cmp.w @0x1234:16,@-er1                             ;6b151234b120\r
+    cmp.w @0x1234:16,@er1+                             ;6b1512348120\r
+    cmp.w @0x1234:16,@er1-                             ;6b151234a120\r
+    cmp.w @0x1234:16,@+er1                             ;6b1512349120\r
+    cmp.w @0x1234:16,@(0xffff9abc:16,er1)              ;6b151234c1209abc\r
+    cmp.w @0x1234:16,@(0x9abcdef0:32,er1)              ;6b151234c9209abcdef0\r
+    cmp.w @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6b151234d2209abc\r
+    cmp.w @0x1234:16,@(0xffff9abc:16,r2.w)            ;6b151234e2209abc\r
+    cmp.w @0x1234:16,@(0xffff9abc:16,er2.l)            ;6b151234f2209abc\r
+    cmp.w @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6b151234da209abcdef0\r
+    cmp.w @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6b151234ea209abcdef0\r
+    cmp.w @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6b151234fa209abcdef0\r
+    cmp.w @0x1234:16,@0xffff9abc:16                    ;6b15123440209abc\r
+    cmp.w @0x1234:16,@0x9abcdef0:32                    ;6b15123448209abcdef0\r
+\r
+    cmp.w @0x12345678:32,@er1                              ;6b35123456780120\r
+    cmp.w @0x12345678:32,@(6:2,er1)                        ;6b35123456783120\r
+    cmp.w @0x12345678:32,@-er1                             ;6b3512345678b120\r
+    cmp.w @0x12345678:32,@er1+                             ;6b35123456788120\r
+    cmp.w @0x12345678:32,@er1-                             ;6b3512345678a120\r
+    cmp.w @0x12345678:32,@+er1                             ;6b35123456789120\r
+    cmp.w @0x12345678:32,@(0xffff9abc:16,er1)              ;6b3512345678c1209abc\r
+    cmp.w @0x12345678:32,@(0x9abcdef0:32,er1)              ;6b3512345678c9209abcdef0\r
+    cmp.w @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6b3512345678d2209abc\r
+    cmp.w @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6b3512345678e2209abc\r
+    cmp.w @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6b3512345678f2209abc\r
+    cmp.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6b3512345678da209abcdef0\r
+    cmp.w @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6b3512345678ea209abcdef0\r
+    cmp.w @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6b3512345678fa209abcdef0\r
+    cmp.w @0x12345678:32,@0xffff9abc:16                    ;6b351234567840209abc\r
+    cmp.w @0x12345678:32,@0x9abcdef0:32                    ;6b351234567848209abcdef0\r
+\r
+    cmp.l #0x12345678:32,er1                      ;7a2112345678\r
+    cmp.l #0x1234:16,er1                       ;7a291234\r
+    cmp.l #0x7:3,er2                         ;1ffa\r
+    cmp.l #0x12345678:32,@er1                      ;010e012812345678\r
+    cmp.l #0x12345678:32,@(0xc:2,er1)             ;010e312812345678\r
+    cmp.l #0x12345678:32,@er1+                     ;010e812812345678\r
+    cmp.l #0x12345678:32,@-er1                     ;010eb12812345678\r
+    cmp.l #0x12345678:32,@+er1                     ;010e912812345678\r
+    cmp.l #0x12345678:32,@er1-                     ;010ea12812345678\r
+    cmp.l #0x12345678:32,@(0xffff9abc:16,er1)               ;010ec1289abc12345678\r
+    cmp.l #0x12345678:32,@(0x9abcdef0:32,er1)               ;010ec9289abcdef012345678\r
+    cmp.l #0x12345678:32,@(0xffff9abc:16,r2l.b)             ;010ed2289abc12345678\r
+    cmp.l #0x12345678:32,@(0xffff9abc:16,r2.w)             ;010ee2289abc12345678\r
+    cmp.l #0x12345678:32,@(0xffff9abc:16,er2.l)             ;010ef2289abc12345678\r
+    cmp.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)             ;010eda289abcdef012345678\r
+    cmp.l #0x12345678:32,@(0x9abcdef0:32,r2.w)             ;010eea289abcdef012345678\r
+    cmp.l #0x12345678:32,@(0x9abcdef0:32,er2.l)             ;010efa289abcdef012345678\r
+    cmp.l #0x12345678:32,@0xffff9abc:16                    ;010e40289abc12345678\r
+    cmp.l #0x12345678:32,@0x9abcdef0:32                    ;010e48289abcdef012345678\r
+    cmp.l #0x1234:16,@er1                      ;010e01201234\r
+    cmp.l #0x1234:16,@(0xc:2,er1)             ;010e31201234\r
+    cmp.l #0x1234:16,@er1+                     ;010e81201234\r
+    cmp.l #0x1234:16,@-er1                     ;010eb1201234\r
+    cmp.l #0x1234:16,@+er1                     ;010e91201234\r
+    cmp.l #0x1234:16,@er1-                     ;010ea1201234\r
+    cmp.l #0x1234:16,@(0xffff9abc:16,er1)               ;010ec1209abc1234\r
+    cmp.l #0x1234:16,@(0x9abcdef0:32,er1)               ;010ec9209abcdef01234\r
+    cmp.l #0x1234:16,@(0xffff9abc:16,r2l.b)             ;010ed2209abc1234\r
+    cmp.l #0x1234:16,@(0xffff9abc:16,r2.w)             ;010ee2209abc1234\r
+    cmp.l #0x1234:16,@(0xffff9abc:16,er2.l)             ;010ef2209abc1234\r
+    cmp.l #0x1234:16,@(0x9abcdef0:32,r2l.b)             ;010eda209abcdef01234\r
+    cmp.l #0x1234:16,@(0x9abcdef0:32,r2.w)             ;010eea209abcdef01234\r
+    cmp.l #0x1234:16,@(0x9abcdef0:32,er2.l)             ;010efa209abcdef01234\r
+    cmp.l #0x1234:16,@0xffff9abc:16                    ;010e40209abc1234\r
+    cmp.l #0x1234:16,@0x9abcdef0:32                    ;010e48209abcdef01234\r
+\r
+    cmp.l er3,er1                         ;1fb1\r
+\r
+    cmp.l er3,@er1                         ;01090123\r
+    cmp.l er3,@(0xc:2,er1)                ;01093123\r
+    cmp.l er3,@er1+                        ;01098123\r
+    cmp.l er3,@-er1                        ;0109b123\r
+    cmp.l er3,@+er1                        ;01099123\r
+    cmp.l er3,@er1-                        ;0109a123\r
+    cmp.l er3,@(0x1234:16,er1)                  ;0109c1231234\r
+    cmp.l er3,@(0x12345678:32,er1)                  ;0109c92312345678\r
+    cmp.l er3,@(0x1234:16,r2l.b)                ;0109d2231234\r
+    cmp.l er3,@(0x1234:16,r2.w)                ;0109e2231234\r
+    cmp.l er3,@(0x1234:16,er2.l)                ;0109f2231234\r
+    cmp.l er3,@(0x12345678:32,r2l.b)                ;0109da2312345678\r
+    cmp.l er3,@(0x12345678:32,r2.w)                ;0109ea2312345678\r
+    cmp.l er3,@(0x12345678:32,er2.l)                ;0109fa2312345678\r
+    cmp.l er3,@0x1234:16                       ;010940231234\r
+    cmp.l er3,@0x12345678:32                       ;0109482312345678\r
+\r
+    cmp.l @er3,er1                         ;010a0321\r
+    cmp.l @(0xc:2,er3),er1               ;010a3321\r
+    cmp.l @er3+,er1                       ;010a8321\r
+    cmp.l @-er3,er1                       ;010ab321\r
+    cmp.l @+er3,er1                       ;010a9321\r
+    cmp.l @er3-,er1                       ;010aa321\r
+    cmp.l @(0x1234:16,er1),er1                  ;010ac1211234\r
+    cmp.l @(0x12345678:32,er1),er1                  ;010ac92112345678\r
+    cmp.l @(0x1234:16,r2l.b),er1                ;010ad2211234\r
+    cmp.l @(0x1234:16,r2.w),er1                ;010ae2211234\r
+    cmp.l @(0x1234:16,er2.l),er1                ;010af2211234\r
+    cmp.l @(0x12345678:32,r2l.b),er1                ;010ada2112345678\r
+    cmp.l @(0x12345678:32,r2.w),er1                ;010aea2112345678\r
+    cmp.l @(0x12345678:32,er2.l),er1                ;010afa2112345678\r
+    cmp.l @0x1234:16,er1                       ;010a40211234\r
+    cmp.l @0x12345678:32,er1                       ;010a482112345678\r
+\r
+    cmp.l @er3,@er1                                ;0104693c0120\r
+    cmp.l @er3,@(0xc:2,er1)                          ;0104693c3120\r
+    cmp.l @er3,@-er1                               ;0104693cb120\r
+    cmp.l @er3,@er1+                               ;0104693c8120\r
+    cmp.l @er3,@er1-                               ;0104693ca120\r
+    cmp.l @er3,@+er1                               ;0104693c9120\r
+    cmp.l @er3,@(0xffff9abc:16,er1)                ;0104693cc1209abc\r
+    cmp.l @er3,@(0x9abcdef0:32,er1)                ;0104693cc9209abcdef0\r
+    cmp.l @er3,@(0xffff9abc:16,r2l.b)              ;0104693cd2209abc\r
+    cmp.l @er3,@(0xffff9abc:16,r2.w)              ;0104693ce2209abc\r
+    cmp.l @er3,@(0xffff9abc:16,er2.l)              ;0104693cf2209abc\r
+    cmp.l @er3,@(0x9abcdef0:32,r2l.b)              ;0104693cda209abcdef0\r
+    cmp.l @er3,@(0x9abcdef0:32,r2.w)              ;0104693cea209abcdef0\r
+    cmp.l @er3,@(0x9abcdef0:32,er2.l)              ;0104693cfa209abcdef0\r
+    cmp.l @er3,@0xffff9abc:16                      ;0104693c40209abc\r
+    cmp.l @er3,@0x9abcdef0:32                      ;0104693c48209abcdef0\r
+\r
+    cmp.l @(0xc:2,er3),@er1                       ;0107693c0120\r
+    cmp.l @(0xc:2,er3),@(0xc:2,er1)                 ;0107693c3120\r
+    cmp.l @(0xc:2,er3),@-er1                      ;0107693cb120\r
+    cmp.l @(0xc:2,er3),@er1+                      ;0107693c8120\r
+    cmp.l @(0xc:2,er3),@er1-                      ;0107693ca120\r
+    cmp.l @(0xc:2,er3),@+er1                      ;0107693c9120\r
+    cmp.l @(0xc:2,er3),@(0xffff9abc:16,er1)       ;0107693cc1209abc\r
+    cmp.l @(0xc:2,er3),@(0x9abcdef0:32,er1)       ;0107693cc9209abcdef0\r
+    cmp.l @(0xc:2,er3),@(0xffff9abc:16,r2l.b)     ;0107693cd2209abc\r
+    cmp.l @(0xc:2,er3),@(0xffff9abc:16,r2.w)     ;0107693ce2209abc\r
+    cmp.l @(0xc:2,er3),@(0xffff9abc:16,er2.l)     ;0107693cf2209abc\r
+    cmp.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)     ;0107693cda209abcdef0\r
+    cmp.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)     ;0107693cea209abcdef0\r
+    cmp.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)     ;0107693cfa209abcdef0\r
+    cmp.l @(0xc:2,er3),@0xffff9abc:16             ;0107693c40209abc\r
+    cmp.l @(0xc:2,er3),@0x9abcdef0:32             ;0107693c48209abcdef0\r
+\r
+    cmp.l @-er3,@er1                               ;01076d3c0120\r
+    cmp.l @-er3,@(0xc:2,er1)                         ;01076d3c3120\r
+    cmp.l @-er3,@-er1                              ;01076d3cb120\r
+    cmp.l @-er3,@er1+                              ;01076d3c8120\r
+    cmp.l @-er3,@er1-                              ;01076d3ca120\r
+    cmp.l @-er3,@+er1                              ;01076d3c9120\r
+    cmp.l @-er3,@(0xffff9abc:16,er1)               ;01076d3cc1209abc\r
+    cmp.l @-er3,@(0x9abcdef0:32,er1)               ;01076d3cc9209abcdef0\r
+    cmp.l @-er3,@(0xffff9abc:16,r2l.b)             ;01076d3cd2209abc\r
+    cmp.l @-er3,@(0xffff9abc:16,r2.w)             ;01076d3ce2209abc\r
+    cmp.l @-er3,@(0xffff9abc:16,er2.l)             ;01076d3cf2209abc\r
+    cmp.l @-er3,@(0x9abcdef0:32,r2l.b)             ;01076d3cda209abcdef0\r
+    cmp.l @-er3,@(0x9abcdef0:32,r2.w)             ;01076d3cea209abcdef0\r
+    cmp.l @-er3,@(0x9abcdef0:32,er2.l)             ;01076d3cfa209abcdef0\r
+    cmp.l @-er3,@0xffff9abc:16                     ;01076d3c40209abc\r
+    cmp.l @-er3,@0x9abcdef0:32                     ;01076d3c48209abcdef0\r
+\r
+    cmp.l @er3+,@er1                               ;01046d3c0120\r
+    cmp.l @er3+,@(0xc:2,er1)                         ;01046d3c3120\r
+    cmp.l @er3+,@-er1                              ;01046d3cb120\r
+    cmp.l @er3+,@er1+                              ;01046d3c8120\r
+    cmp.l @er3+,@er1-                              ;01046d3ca120\r
+    cmp.l @er3+,@+er1                              ;01046d3c9120\r
+    cmp.l @er3+,@(0xffff9abc:16,er1)               ;01046d3cc1209abc\r
+    cmp.l @er3+,@(0x9abcdef0:32,er1)               ;01046d3cc9209abcdef0\r
+    cmp.l @er3+,@(0xffff9abc:16,r2l.b)             ;01046d3cd2209abc\r
+    cmp.l @er3+,@(0xffff9abc:16,r2.w)             ;01046d3ce2209abc\r
+    cmp.l @er3+,@(0xffff9abc:16,er2.l)             ;01046d3cf2209abc\r
+    cmp.l @er3+,@(0x9abcdef0:32,r2l.b)             ;01046d3cda209abcdef0\r
+    cmp.l @er3+,@(0x9abcdef0:32,r2.w)             ;01046d3cea209abcdef0\r
+    cmp.l @er3+,@(0x9abcdef0:32,er2.l)             ;01046d3cfa209abcdef0\r
+    cmp.l @er3+,@0xffff9abc:16                     ;01046d3c40209abc\r
+    cmp.l @er3+,@0x9abcdef0:32                     ;01046d3c48209abcdef0\r
+\r
+    cmp.l @er3-,@er1                               ;01066d3c0120\r
+    cmp.l @er3-,@(0xc:2,er1)                         ;01066d3c3120\r
+    cmp.l @er3-,@-er1                              ;01066d3cb120\r
+    cmp.l @er3-,@er1+                              ;01066d3c8120\r
+    cmp.l @er3-,@er1-                              ;01066d3ca120\r
+    cmp.l @er3-,@+er1                              ;01066d3c9120\r
+    cmp.l @er3-,@(0xffff9abc:16,er1)               ;01066d3cc1209abc\r
+    cmp.l @er3-,@(0x9abcdef0:32,er1)               ;01066d3cc9209abcdef0\r
+    cmp.l @er3-,@(0xffff9abc:16,r2l.b)             ;01066d3cd2209abc\r
+    cmp.l @er3-,@(0xffff9abc:16,r2.w)             ;01066d3ce2209abc\r
+    cmp.l @er3-,@(0xffff9abc:16,er2.l)             ;01066d3cf2209abc\r
+    cmp.l @er3-,@(0x9abcdef0:32,r2l.b)             ;01066d3cda209abcdef0\r
+    cmp.l @er3-,@(0x9abcdef0:32,r2.w)             ;01066d3cea209abcdef0\r
+    cmp.l @er3-,@(0x9abcdef0:32,er2.l)             ;01066d3cfa209abcdef0\r
+    cmp.l @er3-,@0xffff9abc:16                     ;01066d3c40209abc\r
+    cmp.l @er3-,@0x9abcdef0:32                     ;01066d3c48209abcdef0\r
+\r
+    cmp.l @+er3,@er1                               ;01056d3c0120\r
+    cmp.l @+er3,@(0xc:2,er1)                         ;01056d3c3120\r
+    cmp.l @+er3,@-er1                              ;01056d3cb120\r
+    cmp.l @+er3,@er1+                              ;01056d3c8120\r
+    cmp.l @+er3,@er1-                              ;01056d3ca120\r
+    cmp.l @+er3,@+er1                              ;01056d3c9120\r
+    cmp.l @+er3,@(0xffff9abc:16,er1)               ;01056d3cc1209abc\r
+    cmp.l @+er3,@(0x9abcdef0:32,er1)               ;01056d3cc9209abcdef0\r
+    cmp.l @+er3,@(0xffff9abc:16,r2l.b)             ;01056d3cd2209abc\r
+    cmp.l @+er3,@(0xffff9abc:16,r2.w)             ;01056d3ce2209abc\r
+    cmp.l @+er3,@(0xffff9abc:16,er2.l)             ;01056d3cf2209abc\r
+    cmp.l @+er3,@(0x9abcdef0:32,r2l.b)             ;01056d3cda209abcdef0\r
+    cmp.l @+er3,@(0x9abcdef0:32,r2.w)             ;01056d3cea209abcdef0\r
+    cmp.l @+er3,@(0x9abcdef0:32,er2.l)             ;01056d3cfa209abcdef0\r
+    cmp.l @+er3,@0xffff9abc:16                     ;01056d3c40209abc\r
+    cmp.l @+er3,@0x9abcdef0:32                     ;01056d3c48209abcdef0\r
+\r
+    cmp.l @(0x1234:16,er3),@er1                         ;01046f3c12340120\r
+    cmp.l @(0x1234:16,er3),@(0xc:2,er1)                   ;01046f3c12343120\r
+    cmp.l @(0x1234:16,er3),@-er1                        ;01046f3c1234b120\r
+    cmp.l @(0x1234:16,er3),@er1+                        ;01046f3c12348120\r
+    cmp.l @(0x1234:16,er3),@er1-                        ;01046f3c1234a120\r
+    cmp.l @(0x1234:16,er3),@+er1                        ;01046f3c12349120\r
+    cmp.l @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01046f3c1234c1209abc\r
+    cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01046f3c1234c9209abcdef0\r
+    cmp.l @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01046f3c1234d2209abc\r
+    cmp.l @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01046f3c1234e2209abc\r
+    cmp.l @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01046f3c1234f2209abc\r
+    cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01046f3c1234da209abcdef0\r
+    cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01046f3c1234ea209abcdef0\r
+    cmp.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01046f3c1234fa209abcdef0\r
+    cmp.l @(0x1234:16,er3),@0xffff9abc:16               ;01046f3c123440209abc\r
+    cmp.l @(0x1234:16,er3),@0x9abcdef0:32               ;01046f3c123448209abcdef0\r
+\r
+    cmp.l @(0x12345678:32,er3),@er1                         ;78b46b2c123456780120\r
+    cmp.l @(0x12345678:32,er3),@(0xc:2,er1)                   ;78b46b2c123456783120\r
+    cmp.l @(0x12345678:32,er3),@-er1                        ;78b46b2c12345678b120\r
+    cmp.l @(0x12345678:32,er3),@er1+                        ;78b46b2c123456788120\r
+    cmp.l @(0x12345678:32,er3),@er1-                        ;78b46b2c12345678a120\r
+    cmp.l @(0x12345678:32,er3),@+er1                        ;78b46b2c123456789120\r
+    cmp.l @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78b46b2c12345678c1209abc\r
+    cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78b46b2c12345678c9209abcdef0\r
+    cmp.l @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78b46b2c12345678d2209abc\r
+    cmp.l @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78b46b2c12345678e2209abc\r
+    cmp.l @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78b46b2c12345678f2209abc\r
+    cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78b46b2c12345678da209abcdef0\r
+    cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78b46b2c12345678ea209abcdef0\r
+    cmp.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78b46b2c12345678fa209abcdef0\r
+    cmp.l @(0x12345678:32,er3),@0xffff9abc:16               ;78b46b2c1234567840209abc\r
+    cmp.l @(0x12345678:32,er3),@0x9abcdef0:32               ;78b46b2c1234567848209abcdef0\r
+\r
+    cmp.l @(0x1234:16,r3l.b),@er1                       ;01056f3c12340120\r
+    cmp.l @(0x1234:16,r3l.b),@(0xc:2,er1)                 ;01056f3c12343120\r
+    cmp.l @(0x1234:16,r3l.b),@-er1                      ;01056f3c1234b120\r
+    cmp.l @(0x1234:16,r3l.b),@er1+                      ;01056f3c12348120\r
+    cmp.l @(0x1234:16,r3l.b),@er1-                      ;01056f3c1234a120\r
+    cmp.l @(0x1234:16,r3l.b),@+er1                      ;01056f3c12349120\r
+    cmp.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01056f3c1234c1209abc\r
+    cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01056f3c1234c9209abcdef0\r
+    cmp.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01056f3c1234d2209abc\r
+    cmp.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01056f3c1234e2209abc\r
+    cmp.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01056f3c1234f2209abc\r
+    cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01056f3c1234da209abcdef0\r
+    cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01056f3c1234ea209abcdef0\r
+    cmp.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01056f3c1234fa209abcdef0\r
+    cmp.l @(0x1234:16,r3l.b),@0xffff9abc:16             ;01056f3c123440209abc\r
+    cmp.l @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01056f3c123448209abcdef0\r
+\r
+    cmp.l @(0x1234:16,r3.w),@er1                       ;01066f3c12340120\r
+    cmp.l @(0x1234:16,r3.w),@(0xc:2,er1)                 ;01066f3c12343120\r
+    cmp.l @(0x1234:16,r3.w),@-er1                      ;01066f3c1234b120\r
+    cmp.l @(0x1234:16,r3.w),@er1+                      ;01066f3c12348120\r
+    cmp.l @(0x1234:16,r3.w),@er1-                      ;01066f3c1234a120\r
+    cmp.l @(0x1234:16,r3.w),@+er1                      ;01066f3c12349120\r
+    cmp.l @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01066f3c1234c1209abc\r
+    cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01066f3c1234c9209abcdef0\r
+    cmp.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01066f3c1234d2209abc\r
+    cmp.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01066f3c1234e2209abc\r
+    cmp.l @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01066f3c1234f2209abc\r
+    cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01066f3c1234da209abcdef0\r
+    cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01066f3c1234ea209abcdef0\r
+    cmp.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01066f3c1234fa209abcdef0\r
+    cmp.l @(0x1234:16,r3.w),@0xffff9abc:16             ;01066f3c123440209abc\r
+    cmp.l @(0x1234:16,r3.w),@0x9abcdef0:32             ;01066f3c123448209abcdef0\r
+\r
+    cmp.l @(0x1234:16,er3.l),@er1                       ;01076f3c12340120\r
+    cmp.l @(0x1234:16,er3.l),@(0xc:2,er1)                 ;01076f3c12343120\r
+    cmp.l @(0x1234:16,er3.l),@-er1                      ;01076f3c1234b120\r
+    cmp.l @(0x1234:16,er3.l),@er1+                      ;01076f3c12348120\r
+    cmp.l @(0x1234:16,er3.l),@er1-                      ;01076f3c1234a120\r
+    cmp.l @(0x1234:16,er3.l),@+er1                      ;01076f3c12349120\r
+    cmp.l @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01076f3c1234c1209abc\r
+    cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01076f3c1234c9209abcdef0\r
+    cmp.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01076f3c1234d2209abc\r
+    cmp.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01076f3c1234e2209abc\r
+    cmp.l @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01076f3c1234f2209abc\r
+    cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01076f3c1234da209abcdef0\r
+    cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01076f3c1234ea209abcdef0\r
+    cmp.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01076f3c1234fa209abcdef0\r
+    cmp.l @(0x1234:16,er3.l),@0xffff9abc:16             ;01076f3c123440209abc\r
+    cmp.l @(0x1234:16,er3.l),@0x9abcdef0:32             ;01076f3c123448209abcdef0\r
+\r
+    cmp.l @(0x12345678:32,r3l.b),@er1                       ;78b56b2c123456780120\r
+    cmp.l @(0x12345678:32,r3l.b),@(0xc:2,er1)                 ;78b56b2c123456783120\r
+    cmp.l @(0x12345678:32,r3l.b),@-er1                      ;78b56b2c12345678b120\r
+    cmp.l @(0x12345678:32,r3l.b),@er1+                      ;78b56b2c123456788120\r
+    cmp.l @(0x12345678:32,r3l.b),@er1-                      ;78b56b2c12345678a120\r
+    cmp.l @(0x12345678:32,r3l.b),@+er1                      ;78b56b2c123456789120\r
+    cmp.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78b56b2c12345678c1209abc\r
+    cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78b56b2c12345678c9209abcdef0\r
+    cmp.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78b56b2c12345678d2209abc\r
+    cmp.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78b56b2c12345678e2209abc\r
+    cmp.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78b56b2c12345678f2209abc\r
+    cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78b56b2c12345678da209abcdef0\r
+    cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78b56b2c12345678ea209abcdef0\r
+    cmp.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78b56b2c12345678fa209abcdef0\r
+    cmp.l @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78b56b2c1234567840209abc\r
+    cmp.l @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78b56b2c1234567848209abcdef0\r
+\r
+    cmp.l @(0x12345678:32,r3.w),@er1                       ;78b66b2c123456780120\r
+    cmp.l @(0x12345678:32,r3.w),@(0xc:2,er1)                 ;78b66b2c123456783120\r
+    cmp.l @(0x12345678:32,r3.w),@-er1                      ;78b66b2c12345678b120\r
+    cmp.l @(0x12345678:32,r3.w),@er1+                      ;78b66b2c123456788120\r
+    cmp.l @(0x12345678:32,r3.w),@er1-                      ;78b66b2c12345678a120\r
+    cmp.l @(0x12345678:32,r3.w),@+er1                      ;78b66b2c123456789120\r
+    cmp.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78b66b2c12345678c1209abc\r
+    cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78b66b2c12345678c9209abcdef0\r
+    cmp.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78b66b2c12345678d2209abc\r
+    cmp.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78b66b2c12345678e2209abc\r
+    cmp.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78b66b2c12345678f2209abc\r
+    cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78b66b2c12345678da209abcdef0\r
+    cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78b66b2c12345678ea209abcdef0\r
+    cmp.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78b66b2c12345678fa209abcdef0\r
+    cmp.l @(0x12345678:32,r3.w),@0xffff9abc:16             ;78b66b2c1234567840209abc\r
+    cmp.l @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78b66b2c1234567848209abcdef0\r
+\r
+    cmp.l @(0x12345678:32,er3.l),@er1                       ;78b76b2c123456780120\r
+    cmp.l @(0x12345678:32,er3.l),@(0xc:2,er1)                 ;78b76b2c123456783120\r
+    cmp.l @(0x12345678:32,er3.l),@-er1                      ;78b76b2c12345678b120\r
+    cmp.l @(0x12345678:32,er3.l),@er1+                      ;78b76b2c123456788120\r
+    cmp.l @(0x12345678:32,er3.l),@er1-                      ;78b76b2c12345678a120\r
+    cmp.l @(0x12345678:32,er3.l),@+er1                      ;78b76b2c123456789120\r
+    cmp.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78b76b2c12345678c1209abc\r
+    cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78b76b2c12345678c9209abcdef0\r
+    cmp.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78b76b2c12345678d2209abc\r
+    cmp.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78b76b2c12345678e2209abc\r
+    cmp.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78b76b2c12345678f2209abc\r
+    cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78b76b2c12345678da209abcdef0\r
+    cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78b76b2c12345678ea209abcdef0\r
+    cmp.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78b76b2c12345678fa209abcdef0\r
+    cmp.l @(0x12345678:32,er3.l),@0xffff9abc:16             ;78b76b2c1234567840209abc\r
+    cmp.l @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78b76b2c1234567848209abcdef0\r
+\r
+    cmp.l @0x1234:16,@er1                              ;01046b0c12340120\r
+    cmp.l @0x1234:16,@(0xc:2,er1)                        ;01046b0c12343120\r
+    cmp.l @0x1234:16,@-er1                             ;01046b0c1234b120\r
+    cmp.l @0x1234:16,@er1+                             ;01046b0c12348120\r
+    cmp.l @0x1234:16,@er1-                             ;01046b0c1234a120\r
+    cmp.l @0x1234:16,@+er1                             ;01046b0c12349120\r
+    cmp.l @0x1234:16,@(0xffff9abc:16,er1)              ;01046b0c1234c1209abc\r
+    cmp.l @0x1234:16,@(0x9abcdef0:32,er1)              ;01046b0c1234c9209abcdef0\r
+    cmp.l @0x1234:16,@(0xffff9abc:16,r2l.b)            ;01046b0c1234d2209abc\r
+    cmp.l @0x1234:16,@(0xffff9abc:16,r2.w)            ;01046b0c1234e2209abc\r
+    cmp.l @0x1234:16,@(0xffff9abc:16,er2.l)            ;01046b0c1234f2209abc\r
+    cmp.l @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;01046b0c1234da209abcdef0\r
+    cmp.l @0x1234:16,@(0x9abcdef0:32,r2.w)            ;01046b0c1234ea209abcdef0\r
+    cmp.l @0x1234:16,@(0x9abcdef0:32,er2.l)            ;01046b0c1234fa209abcdef0\r
+    cmp.l @0x1234:16,@0xffff9abc:16                    ;01046b0c123440209abc\r
+    cmp.l @0x1234:16,@0x9abcdef0:32                    ;01046b0c123448209abcdef0\r
+\r
+    cmp.l @0x12345678:32,@er1                              ;01046b2c123456780120\r
+    cmp.l @0x12345678:32,@(0xc:2,er1)                        ;01046b2c123456783120\r
+    cmp.l @0x12345678:32,@-er1                             ;01046b2c12345678b120\r
+    cmp.l @0x12345678:32,@er1+                             ;01046b2c123456788120\r
+    cmp.l @0x12345678:32,@er1-                             ;01046b2c12345678a120\r
+    cmp.l @0x12345678:32,@+er1                             ;01046b2c123456789120\r
+    cmp.l @0x12345678:32,@(0xffff9abc:16,er1)              ;01046b2c12345678c1209abc\r
+    cmp.l @0x12345678:32,@(0x9abcdef0:32,er1)              ;01046b2c12345678c9209abcdef0\r
+    cmp.l @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;01046b2c12345678d2209abc\r
+    cmp.l @0x12345678:32,@(0xffff9abc:16,r2.w)            ;01046b2c12345678e2209abc\r
+    cmp.l @0x12345678:32,@(0xffff9abc:16,er2.l)            ;01046b2c12345678f2209abc\r
+    cmp.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;01046b2c12345678da209abcdef0\r
+    cmp.l @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;01046b2c12345678ea209abcdef0\r
+    cmp.l @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;01046b2c12345678fa209abcdef0\r
+    cmp.l @0x12345678:32,@0xffff9abc:16                    ;01046b2c1234567840209abc\r
+    cmp.l @0x12345678:32,@0x9abcdef0:32                    ;01046b2c1234567848209abcdef0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t06_ari2.exp b/gdb/testsuite/gdb.disasm/t06_ari2.exp
new file mode 100644 (file)
index 0000000..99ad366
--- /dev/null
@@ -0,0 +1,282 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t06_ari2"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "addx(.b|)\t#0x12(:8|),r1h" \
+       "addx.b #0x12:8,r1h"
+gdb_test "x" "addx(.b|)\t#0x12(:8|),@er1" \
+       "addx.b #0x12:8,@er1"
+gdb_test "x" "addx(.b|)\t#0x12(:8|),@er1-" \
+       "addx.b #0x12:8,@er1-"
+gdb_test "x" "addx(.b|)\tr3h,r1h" \
+       "addx.b r3h,r1h"
+gdb_test "x" "addx(.b|)\tr3h,@er1" \
+       "addx.b r3h,@er1"
+gdb_test "x" "addx(.b|)\tr3h,@er1-" \
+       "addx.b r3h,@er1-"
+gdb_test "x" "addx(.b|)\t@er3,r1h" \
+       "addx.b @er3,r1h"
+gdb_test "x" "addx(.b|)\t@er3,@er1" \
+       "addx.b @er3,@er1"
+gdb_test "x" "addx(.b|)\t@er3-,r1h" \
+       "addx.b @er3-,r1h"
+gdb_test "x" "addx(.b|)\t@er3-,@er1-" \
+       "addx.b @er3-,@er1-"
+gdb_test "x" "addx.w\t#0x1234(:16|),r1" \
+       "addx.w #0x1234:16,r1"
+gdb_test "x" "addx.w\t#0x1234(:16|),@er1" \
+       "addx.w #0x1234:16,@er1"
+gdb_test "x" "addx.w\t#0x1234(:16|),@er1-" \
+       "addx.w #0x1234:16,@er1-"
+gdb_test "x" "addx.w\tr3,r1" \
+       "addx.w r3,r1"
+gdb_test "x" "addx.w\tr3,@er1" \
+       "addx.w r3,@er1"
+gdb_test "x" "addx.w\tr3,@er1-" \
+       "addx.w r3,@er1-"
+gdb_test "x" "addx.w\t@er3,r1" \
+       "addx.w @er3,r1"
+gdb_test "x" "addx.w\t@er3,@er1" \
+       "addx.w @er3,@er1"
+gdb_test "x" "addx.w\t@er3-,r1" \
+       "addx.w @er3-,r1"
+gdb_test "x" "addx.w\t@er3-,@er1-" \
+       "addx.w @er3-,@er1-"
+gdb_test "x" "addx.l\t#0x12345678(:32|),er1" \
+       "addx.l #0x12345678:32,er1"
+gdb_test "x" "addx.l\t#0x12345678(:32|),@er1" \
+       "addx.l #0x12345678:32,@er1"
+gdb_test "x" "addx.l\t#0x12345678(:32|),@er1-" \
+       "addx.l #0x12345678:32,@er1-"
+gdb_test "x" "addx.l\ter3,er1" \
+       "addx.l er3,er1"
+gdb_test "x" "addx.l\ter3,@er1" \
+       "addx.l er3,@er1"
+gdb_test "x" "addx.l\ter3,@er1-" \
+       "addx.l er3,@er1-"
+gdb_test "x" "addx.l\t@er3,er1" \
+       "addx.l @er3,er1"
+gdb_test "x" "addx.l\t@er3,@er1" \
+       "addx.l @er3,@er1"
+gdb_test "x" "addx.l\t@er3-,er1" \
+       "addx.l @er3-,er1"
+gdb_test "x" "addx.l\t@er3-,@er1-" \
+       "addx.l @er3-,@er1-"
+gdb_test "x" "subx(.b|)\t#0x12(:8|),r1h" \
+       "subx.b #0x12:8,r1h"
+gdb_test "x" "subx(.b|)\t#0x12(:8|),@er1" \
+       "subx.b #0x12:8,@er1"
+gdb_test "x" "subx(.b|)\t#0x12(:8|),@er1-" \
+       "subx.b #0x12:8,@er1-"
+gdb_test "x" "subx(.b|)\tr3h,r1h" \
+       "subx.b r3h,r1h"
+gdb_test "x" "subx(.b|)\tr3h,@er1" \
+       "subx.b r3h,@er1"
+gdb_test "x" "subx(.b|)\tr3h,@er1-" \
+       "subx.b r3h,@er1-"
+gdb_test "x" "subx(.b|)\t@er3,r1h" \
+       "subx.b @er3,r1h"
+gdb_test "x" "subx(.b|)\t@er3,@er1" \
+       "subx.b @er3,@er1"
+gdb_test "x" "subx(.b|)\t@er3-,r1h" \
+       "subx.b @er3-,r1h"
+gdb_test "x" "subx(.b|)\t@er3-,@er1-" \
+       "subx.b @er3-,@er1-"
+gdb_test "x" "subx.w\t#0x1234(:16|),r1" \
+       "subx.w #0x1234:16,r1"
+gdb_test "x" "subx.w\t#0x1234(:16|),@er1" \
+       "subx.w #0x1234:16,@er1"
+gdb_test "x" "subx.w\t#0x1234(:16|),@er1-" \
+       "subx.w #0x1234:16,@er1-"
+gdb_test "x" "subx.w\tr3,r1" \
+       "subx.w r3,r1"
+gdb_test "x" "subx.w\tr3,@er1" \
+       "subx.w r3,@er1"
+gdb_test "x" "subx.w\tr3,@er1-" \
+       "subx.w r3,@er1-"
+gdb_test "x" "subx.w\t@er3,r1" \
+       "subx.w @er3,r1"
+gdb_test "x" "subx.w\t@er3,@er1" \
+       "subx.w @er3,@er1"
+gdb_test "x" "subx.w\t@er3-,r1" \
+       "subx.w @er3-,r1"
+gdb_test "x" "subx.w\t@er3-,@er1-" \
+       "subx.w @er3-,@er1-"
+gdb_test "x" "subx.l\t#0x12345678(:32|),er1" \
+       "subx.l #0x12345678:32,er1"
+gdb_test "x" "subx.l\t#0x12345678(:32|),@er1" \
+       "subx.l #0x12345678:32,@er1"
+gdb_test "x" "subx.l\t#0x12345678(:32|),@er1-" \
+       "subx.l #0x12345678:32,@er1-"
+gdb_test "x" "subx.l\ter3,er1" \
+       "subx.l er3,er1"
+gdb_test "x" "subx.l\ter3,@er1" \
+       "subx.l er3,@er1"
+gdb_test "x" "subx.l\ter3,@er1-" \
+       "subx.l er3,@er1-"
+gdb_test "x" "subx.l\t@er3,er1" \
+       "subx.l @er3,er1"
+gdb_test "x" "subx.l\t@er3,@er1" \
+       "subx.l @er3,@er1"
+gdb_test "x" "subx.l\t@er3-,er1" \
+       "subx.l @er3-,er1"
+gdb_test "x" "subx.l\t@er3-,@er1-" \
+       "subx.l @er3-,@er1-"
+gdb_test "x" "inc(.b|)\tr1h" \
+       "inc.b r1h"
+gdb_test "x" "inc(.w|)\t#1,r1" \
+       "inc.w #1,r1"
+gdb_test "x" "inc(.w|)\t#2,r1" \
+       "inc.w #2,r1"
+gdb_test "x" "inc(.l|)\t#1,er1" \
+       "inc.l #1,er1"
+gdb_test "x" "inc(.l|)\t#2,er1" \
+       "inc.l #2,er1"
+gdb_test "x" "dec(.b|)\tr1h" \
+       "dec.b r1h"
+gdb_test "x" "dec(.w|)\t#1,r1" \
+       "dec.w #1,r1"
+gdb_test "x" "dec(.w|)\t#2,r1" \
+       "dec.w #2,r1"
+gdb_test "x" "dec(.l|)\t#1,er1" \
+       "dec.l #1,er1"
+gdb_test "x" "dec(.l|)\t#2,er1" \
+       "dec.l #2,er1"
+gdb_test "x" "adds(.l|)\t#1,er1" \
+       "adds.l #1,er1"
+gdb_test "x" "adds(.l|)\t#2,er1" \
+       "adds.l #2,er1"
+gdb_test "x" "adds(.l|)\t#4,er1" \
+       "adds.l #4,er1"
+gdb_test "x" "subs(.l|)\t#1,er1" \
+       "subs.l #1,er1"
+gdb_test "x" "subs(.l|)\t#2,er1" \
+       "subs.l #2,er1"
+gdb_test "x" "subs(.l|)\t#4,er1" \
+       "subs.l #4,er1"
+gdb_test "x" "daa(.b|)\tr1h" \
+       "daa.b r1h"
+gdb_test "x" "das(.b|)\tr1h" \
+       "das.b r1h"
+gdb_test "x" "mulxu.b\t#0xf(:4|),r1" \
+       "mulxu.b #0xf:4,r1"
+gdb_test "x" "mulxu.b\tr3h,r1" \
+       "mulxu.b r3h,r1"
+gdb_test "x" "mulxu.w\t#0xf(:4|),er1" \
+       "mulxu.w #0xf:4,er1"
+gdb_test "x" "mulxu.w\tr3,er1" \
+       "mulxu.w r3,er1"
+gdb_test "x" "divxu.b\t#0xf(:4|),r1" \
+       "divxu.b #0xf:4,r1"
+gdb_test "x" "divxu.b\tr3h,r1" \
+       "divxu.b r3h,r1"
+gdb_test "x" "divxu.w\t#0xf(:4|),er1" \
+       "divxu.w #0xf:4,er1"
+gdb_test "x" "divxu.w\tr3,er1" \
+       "divxu.w r3,er1"
+gdb_test "x" "mulxs.b\t#0xf(:4|),r1" \
+       "mulxs.b #0xf:4,r1"
+gdb_test "x" "mulxs.b\tr3h,r1" \
+       "mulxs.b r3h,r1"
+gdb_test "x" "mulxs.w\t#0xf(:4|),er1" \
+       "mulxs.w #0xf:4,er1"
+gdb_test "x" "mulxs.w\tr3,er1" \
+       "mulxs.w r3,er1"
+gdb_test "x" "divxs.b\t#0xf(:4|),r1" \
+       "divxs.b #0xf:4,r1"
+gdb_test "x" "divxs.b\tr3h,r1" \
+       "divxs.b r3h,r1"
+gdb_test "x" "divxs.w\t#0xf(:4|),er1" \
+       "divxs.w #0xf:4,er1"
+gdb_test "x" "divxs.w\tr3,er1" \
+       "divxs.w r3,er1"
+gdb_test "x" "mulu.w\t#0xf(:4|),r1" \
+       "mulu.w #0xf:4,r1"
+gdb_test "x" "mulu.w\tr3,r1" \
+       "mulu.w r3,r1"
+gdb_test "x" "mulu.l\t#0xf(:4|),er1" \
+       "mulu.l #0xf:4,er1"
+gdb_test "x" "mulu.l\ter3,er1" \
+       "mulu.l er3,er1"
+gdb_test "x" "mulu/u.l\t#0xf(:4|),er1" \
+       "mulu/u.l #0xf:4,er1"
+gdb_test "x" "mulu/u.l\ter3,er1" \
+       "mulu/u.l er3,er1"
+gdb_test "x" "muls.w\t#0xf(:4|),r1" \
+       "muls.w #0xf:4,r1"
+gdb_test "x" "muls.w\tr3,r1" \
+       "muls.w r3,r1"
+gdb_test "x" "muls.l\t#0xf(:4|),er1" \
+       "muls.l #0xf:4,er1"
+gdb_test "x" "muls.l\ter3,er1" \
+       "muls.l er3,er1"
+gdb_test "x" "muls/u.l\t#0xf(:4|),er1" \
+       "muls/u.l #0xf:4,er1"
+gdb_test "x" "muls/u.l\ter3,er1" \
+       "muls/u.l er3,er1"
+gdb_test "x" "divu.w\t#0xf(:4|),r1" \
+       "divu.w #0xf:4,r1"
+gdb_test "x" "divu.w\tr3,r1" \
+       "divu.w r3,r1"
+gdb_test "x" "divu.l\t#0xf(:4|),er1" \
+       "divu.l #0xf:4,er1"
+gdb_test "x" "divu.l\ter3,er1" \
+       "divu.l er3,er1"
+gdb_test "x" "divs.w\t#0xf(:4|),r1" \
+       "divs.w #0xf:4,r1"
+gdb_test "x" "divs.w\tr3,r1" \
+       "divs.w r3,r1"
+gdb_test "x" "divs.l\t#0xf(:4|),er1" \
+       "divs.l #0xf:4,er1"
+gdb_test "x" "divs.l\ter3,er1" \
+       "divs.l er3,er1"
diff --git a/gdb/testsuite/gdb.disasm/t06_ari2.s b/gdb/testsuite/gdb.disasm/t06_ari2.s
new file mode 100644 (file)
index 0000000..2c7c99f
--- /dev/null
@@ -0,0 +1,188 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;arith_2\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    addx.b #0x12:8,r1h          ;9112\r
+    addx.b #0x12:8,@er1         ;7d109012\r
+    addx.b #0x12:8,@er1-        ;01766c189012\r
+\r
+    addx.b r3h,r1h             ;0e31\r
+    addx.b r3h,@er1           ;7d100e30\r
+    addx.b r3h,@er1-          ;01766c180e30\r
+\r
+    addx.b @er3,r1h           ;7c300e01\r
+    addx.b @er3,@er1         ;0174683d0110\r
+\r
+    addx.b @er3-,r1h         ;01766c300e01\r
+    addx.b @er3-,@er1-       ;01766c3da110\r
+\r
+    addx.w #0x1234:16,r1         ;015179111234\r
+    addx.w #0x1234:16,@er1        ;7d9179101234\r
+    addx.w #0x1234:16,@er1-       ;01566d1979101234\r
+\r
+    addx.w r3,r1             ;01510931\r
+    addx.w r3,@er1           ;7d910930\r
+    addx.w r3,@er1-          ;01566d190930\r
+\r
+    addx.w @er3,r1           ;7cb10901\r
+    addx.w @er3,@er1         ;0154693d0110\r
+\r
+    addx.w @er3-,r1         ;01566d310901\r
+    addx.w @er3-,@er1-       ;01566d3da110\r
+\r
+    addx.l #0x12345678:32,er1        ;01017a1112345678\r
+    addx.l #0x12345678:32,@er1        ;010469197a1012345678\r
+    addx.l #0x12345678:32,@er1-       ;01066d197a1012345678\r
+\r
+    addx.l er3,er1           ;01010ab1\r
+    addx.l er3,@er1           ;010469190ab0\r
+    addx.l er3,@er1-          ;01066d190ab0\r
+\r
+    addx.l @er3,er1           ;010469310a81\r
+    addx.l @er3,@er1         ;0104693d0110\r
+\r
+    addx.l @er3-,er1         ;01066d310a81\r
+    addx.l @er3-,@er1-       ;01066d3da110\r
+\r
+    subx.b #0x12:8,r1h          ;b112\r
+    subx.b #0x12:8,@er1         ;7d10b012\r
+    subx.b #0x12:8,@er1-        ;01766c18b012\r
+\r
+    subx.b r3h,r1h             ;1e31\r
+    subx.b r3h,@er1           ;7d101e30\r
+    subx.b r3h,@er1-          ;01766c181e30\r
+\r
+    subx.b @er3,r1h           ;7c301e01\r
+    subx.b @er3,@er1         ;0174683d0130\r
+\r
+    subx.b @er3-,r1h         ;01766c301e01\r
+    subx.b @er3-,@er1-       ;01766c3da130\r
+\r
+    subx.w #0x1234:16,r1         ;015179311234\r
+    subx.w #0x1234:16,@er1        ;7d9179301234\r
+    subx.w #0x1234:16,@er1-       ;01566d1979301234\r
+\r
+    subx.w r3,r1             ;01511931\r
+    subx.w r3,@er1           ;7d911930\r
+    subx.w r3,@er1-          ;01566d191930\r
+\r
+    subx.w @er3,r1           ;7cb11901\r
+    subx.w @er3,@er1         ;0154693d0130\r
+\r
+    subx.w @er3-,r1         ;01566d311901\r
+    subx.w @er3-,@er1-       ;01566d3da130\r
+\r
+    subx.l #0x12345678:32,er1        ;01017a3112345678\r
+    subx.l #0x12345678:32,@er1        ;010469197a3012345678\r
+    subx.l #0x12345678:32,@er1-       ;01066d197a3012345678\r
+\r
+    subx.l er3,er1           ;01011ab1\r
+    subx.l er3,@er1           ;010469191ab0\r
+    subx.l er3,@er1-          ;01066d191ab0\r
+\r
+    subx.l @er3,er1           ;010469311a81\r
+    subx.l @er3,@er1         ;0104693d0130\r
+\r
+    subx.l @er3-,er1         ;01066d311a81\r
+    subx.l @er3-,@er1-       ;01066d3da130\r
+\r
+    inc.b r1h                 ;0a01\r
+    inc.w #1,r1              ;0b51\r
+    inc.w #2,r1              ;0bd1\r
+    inc.l #1,er1              ;0b71\r
+    inc.l #2,er1              ;0bf1\r
+\r
+    dec.b r1h                 ;1a01\r
+    dec.w #1,r1              ;1b51\r
+    dec.w #2,r1              ;1bd1\r
+    dec.l #1,er1              ;1b71\r
+    dec.l #2,er1              ;1bf1\r
+\r
+    adds.l #1,er1             ;0b01\r
+    adds.l #2,er1             ;0b81\r
+    adds.l #4,er1             ;0b91\r
+\r
+    subs.l #1,er1             ;1b01\r
+    subs.l #2,er1             ;1b81\r
+    subs.l #4,er1             ;1b91\r
+\r
+    daa.b r1h                 ;0f01\r
+\r
+    das.b r1h                 ;1f01\r
+\r
+    mulxu.b #0xf:4,r1          ;01cc50f1\r
+\r
+    mulxu.b r3h,r1            ;5031\r
+\r
+    mulxu.w #0xf:4,er1         ;01cc52f1\r
+\r
+    mulxu.w r3,er1           ;5231\r
+\r
+    divxu.b #0xf:4,r1          ;01dc51f1\r
+\r
+    divxu.b r3h,r1            ;5131\r
+\r
+    divxu.w #0xf:4,er1         ;01dc53f1\r
+\r
+    divxu.w r3,er1           ;5331\r
+\r
+    mulxs.b #0xf:4,r1          ;01c450f1\r
+\r
+    mulxs.b r3h,r1            ;01c05031\r
+\r
+    mulxs.w #0xf:4,er1         ;01c452f1\r
+\r
+    mulxs.w r3,er1           ;01c05231\r
+\r
+    divxs.b #0xf:4,r1          ;01d451f1\r
+\r
+    divxs.b r3h,r1            ;01d05131\r
+\r
+    divxs.w #0xf:4,er1         ;01d453f1\r
+\r
+    divxs.w r3,er1           ;01d05331\r
+\r
+    mulu.w #0xf:4,r1           ;01ce50f1\r
+\r
+    mulu.w r3,r1             ;01ca5031\r
+\r
+    mulu.l #0xf:4,er1          ;01ce52f1\r
+\r
+    mulu.l er3,er1           ;01ca5231\r
+\r
+    mulu/u.l #0xf:4,er1          ;01cf52f1\r
+\r
+    mulu/u.l er3,er1           ;01cb5231\r
+\r
+    muls.w #0xf:4,r1           ;01c650f1\r
+\r
+    muls.w r3,r1             ;01c25031\r
+\r
+    muls.l #0xf:4,er1          ;01c652f1\r
+\r
+    muls.l er3,er1           ;01c25231\r
+\r
+    muls/u.l #0xf:4,er1          ;01c752f1\r
+\r
+    muls/u.l er3,er1           ;01c35231\r
+\r
+    divu.w #0xf:4,r1           ;01de51f1\r
+\r
+    divu.w r3,r1             ;01da5131\r
+\r
+    divu.l #0xf:4,er1          ;01de53f1\r
+\r
+    divu.l er3,er1            ;01da5331\r
+\r
+    divs.w #0xf:4,r1           ;01d651f1\r
+\r
+    divs.w r3,r1             ;01d25131\r
+\r
+    divs.l #0xf:4,er1          ;01d653f1\r
+\r
+    divs.l er3,er1            ;01d25331\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t07_ari3.exp b/gdb/testsuite/gdb.disasm/t07_ari3.exp
new file mode 100644 (file)
index 0000000..7084a95
--- /dev/null
@@ -0,0 +1,364 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t07_ari3"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "neg.b\tr1h" \
+       "neg.b r1h"
+gdb_test "x" "neg.b\t@er1" \
+       "neg.b @er1"
+gdb_test "x" "neg.b\t@\\(0x3(:2|),er1\\)" \
+       "neg.b @(0x3:2,er1)"
+gdb_test "x" "neg.b\t@er1\\+" \
+       "neg.b @er1+"
+gdb_test "x" "neg.b\t@-er1" \
+       "neg.b @-er1"
+gdb_test "x" "neg.b\t@\\+er1" \
+       "neg.b @+er1"
+gdb_test "x" "neg.b\t@er1-" \
+       "neg.b @er1-"
+gdb_test "x" "neg.b\t@\\(0x1234(:16|),er1\\)" \
+       "neg.b @(0x1234:16,er1)"
+gdb_test "x" "neg.b\t@\\(0x12345678(:32|),er1\\)" \
+       "neg.b @(0x12345678:32,er1)"
+gdb_test "x" "neg.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "neg.b @(0x1234:16,r2l.b)"
+gdb_test "x" "neg.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "neg.b @(0x1234:16,r2.w)"
+gdb_test "x" "neg.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "neg.b @(0x1234:16,er2.l)"
+gdb_test "x" "neg.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "neg.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "neg.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "neg.b @(0x12345678:32,r2.w)"
+gdb_test "x" "neg.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "neg.b @(0x12345678:32,er2.l)"
+gdb_test "x" "neg.b\t@0x12(:8|)" \
+       "neg.b @0x12:8"
+gdb_test "x" "neg.b\t@0x1234(:16|)" \
+       "neg.b @0x1234:16"
+gdb_test "x" "neg.b\t@0x12345678(:32|)" \
+       "neg.b @0x12345678:32"
+gdb_test "x" "neg.w\tr1" \
+       "neg.w r1"
+gdb_test "x" "neg.w\t@er1" \
+       "neg.w @er1"
+gdb_test "x" "neg.w\t@\\(0x6(:2|),er1\\)" \
+       "neg.w @(0x6:2,er1)"
+gdb_test "x" "neg.w\t@er1\\+" \
+       "neg.w @er1+"
+gdb_test "x" "neg.w\t@-er1" \
+       "neg.w @-er1"
+gdb_test "x" "neg.w\t@\\+er1" \
+       "neg.w @+er1"
+gdb_test "x" "neg.w\t@er1-" \
+       "neg.w @er1-"
+gdb_test "x" "neg.w\t@\\(0x1234(:16|),er1\\)" \
+       "neg.w @(0x1234:16,er1)"
+gdb_test "x" "neg.w\t@\\(0x12345678(:32|),er1\\)" \
+       "neg.w @(0x12345678:32,er1)"
+gdb_test "x" "neg.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "neg.w @(0x1234:16,r2l.b)"
+gdb_test "x" "neg.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "neg.w @(0x1234:16,r2.w)"
+gdb_test "x" "neg.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "neg.w @(0x1234:16,er2.l)"
+gdb_test "x" "neg.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "neg.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "neg.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "neg.w @(0x12345678:32,r2.w)"
+gdb_test "x" "neg.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "neg.w @(0x12345678:32,er2.l)"
+gdb_test "x" "neg.w\t@0x1234(:16|)" \
+       "neg.w @0x1234:16"
+gdb_test "x" "neg.w\t@0x12345678(:32|)" \
+       "neg.w @0x12345678:32"
+gdb_test "x" "neg.l\ter1" \
+       "neg.l er1"
+gdb_test "x" "neg.l\t@er1" \
+       "neg.l @er1"
+gdb_test "x" "neg.l\t@\\(0xc(:2|),er1\\)" \
+       "neg.l @(0xc:2,er1)"
+gdb_test "x" "neg.l\t@er1\\+" \
+       "neg.l @er1+"
+gdb_test "x" "neg.l\t@-er1" \
+       "neg.l @-er1"
+gdb_test "x" "neg.l\t@\\+er1" \
+       "neg.l @+er1"
+gdb_test "x" "neg.l\t@er1-" \
+       "neg.l @er1-"
+gdb_test "x" "neg.l\t@\\(0x1234(:16|),er1\\)" \
+       "neg.l @(0x1234:16,er1)"
+gdb_test "x" "neg.l\t@\\(0x12345678(:32|),er1\\)" \
+       "neg.l @(0x12345678:32,er1)"
+gdb_test "x" "neg.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "neg.l @(0x1234:16,r2l.b)"
+gdb_test "x" "neg.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "neg.l @(0x1234:16,r2.w)"
+gdb_test "x" "neg.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "neg.l @(0x1234:16,er2.l)"
+gdb_test "x" "neg.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "neg.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "neg.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "neg.l @(0x12345678:32,r2.w)"
+gdb_test "x" "neg.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "neg.l @(0x12345678:32,er2.l)"
+gdb_test "x" "neg.l\t@0x1234(:16|)" \
+       "neg.l @0x1234:16"
+gdb_test "x" "neg.l\t@0x12345678(:32|)" \
+       "neg.l @0x12345678:32"
+gdb_test "x" "tas\t@er1" \
+       "tas @er1"
+gdb_test "x" "extu.w\tr1" \
+       "extu.w r1"
+gdb_test "x" "extu.w\t@er1" \
+       "extu.w @er1"
+gdb_test "x" "extu.w\t@\\(0x6(:2|),er1\\)" \
+       "extu.w @(0x6:2,er1)"
+gdb_test "x" "extu.w\t@er1\\+" \
+       "extu.w @er1+"
+gdb_test "x" "extu.w\t@-er1" \
+       "extu.w @-er1"
+gdb_test "x" "extu.w\t@\\+er1" \
+       "extu.w @+er1"
+gdb_test "x" "extu.w\t@er1-" \
+       "extu.w @er1-"
+gdb_test "x" "extu.w\t@\\(0x1234(:16|),er1\\)" \
+       "extu.w @(0x1234:16,er1)"
+gdb_test "x" "extu.w\t@\\(0x12345678(:32|),er1\\)" \
+       "extu.w @(0x12345678:32,er1)"
+gdb_test "x" "extu.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "extu.w @(0x1234:16,r2l.b)"
+gdb_test "x" "extu.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "extu.w @(0x1234:16,r2.w)"
+gdb_test "x" "extu.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "extu.w @(0x1234:16,er2.l)"
+gdb_test "x" "extu.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "extu.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "extu.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "extu.w @(0x12345678:32,r2.w)"
+gdb_test "x" "extu.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "extu.w @(0x12345678:32,er2.l)"
+gdb_test "x" "extu.w\t@0x1234(:16|)" \
+       "extu.w @0x1234:16"
+gdb_test "x" "extu.w\t@0x12345678(:32|)" \
+       "extu.w @0x12345678:32"
+gdb_test "x" "extu.l\ter1" \
+       "extu.l er1"
+gdb_test "x" "extu.l\t@er1" \
+       "extu.l @er1"
+gdb_test "x" "extu.l\t@\\(0xc(:2|),er1\\)" \
+       "extu.l @(0xc:2,er1)"
+gdb_test "x" "extu.l\t@er1\\+" \
+       "extu.l @er1+"
+gdb_test "x" "extu.l\t@-er1" \
+       "extu.l @-er1"
+gdb_test "x" "extu.l\t@\\+er1" \
+       "extu.l @+er1"
+gdb_test "x" "extu.l\t@er1-" \
+       "extu.l @er1-"
+gdb_test "x" "extu.l\t@\\(0x1234(:16|),er1\\)" \
+       "extu.l @(0x1234:16,er1)"
+gdb_test "x" "extu.l\t@\\(0x12345678(:32|),er1\\)" \
+       "extu.l @(0x12345678:32,er1)"
+gdb_test "x" "extu.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "extu.l @(0x1234:16,r2l.b)"
+gdb_test "x" "extu.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "extu.l @(0x1234:16,r2.w)"
+gdb_test "x" "extu.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "extu.l @(0x1234:16,er2.l)"
+gdb_test "x" "extu.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "extu.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "extu.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "extu.l @(0x12345678:32,r2.w)"
+gdb_test "x" "extu.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "extu.l @(0x12345678:32,er2.l)"
+gdb_test "x" "extu.l\t@0x1234(:16|)" \
+       "extu.l @0x1234:16"
+gdb_test "x" "extu.l\t@0x12345678(:32|)" \
+       "extu.l @0x12345678:32"
+gdb_test "x" "extu.l\t#2,er1" \
+       "extu.l #2,er1"
+gdb_test "x" "extu.l\t#2,@er1" \
+       "extu.l #2,@er1"
+gdb_test "x" "extu.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "extu.l #2,@(0xc:2,er1)"
+gdb_test "x" "extu.l\t#2,@er1\\+" \
+       "extu.l #2,@er1+"
+gdb_test "x" "extu.l\t#2,@-er1" \
+       "extu.l #2,@-er1"
+gdb_test "x" "extu.l\t#2,@\\+er1" \
+       "extu.l #2,@+er1"
+gdb_test "x" "extu.l\t#2,@er1-" \
+       "extu.l #2,@er1-"
+gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "extu.l #2,@(0x1234:16,er1)"
+gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "extu.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "extu.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "extu.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "extu.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "extu.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "extu.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "extu.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "extu.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "extu.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "extu.l\t#2,@0x1234(:16|)" \
+       "extu.l #2,@0x1234:16"
+gdb_test "x" "extu.l\t#2,@0x12345678(:32|)" \
+       "extu.l #2,@0x12345678:32"
+gdb_test "x" "exts.w\tr1" \
+       "exts.w r1"
+gdb_test "x" "exts.w\t@er1" \
+       "exts.w @er1"
+gdb_test "x" "exts.w\t@\\(0x6(:2|),er1\\)" \
+       "exts.w @(0x6:2,er1)"
+gdb_test "x" "exts.w\t@er1\\+" \
+       "exts.w @er1+"
+gdb_test "x" "exts.w\t@-er1" \
+       "exts.w @-er1"
+gdb_test "x" "exts.w\t@\\+er1" \
+       "exts.w @+er1"
+gdb_test "x" "exts.w\t@er1-" \
+       "exts.w @er1-"
+gdb_test "x" "exts.w\t@\\(0x1234(:16|),er1\\)" \
+       "exts.w @(0x1234:16,er1)"
+gdb_test "x" "exts.w\t@\\(0x12345678(:32|),er1\\)" \
+       "exts.w @(0x12345678:32,er1)"
+gdb_test "x" "exts.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "exts.w @(0x1234:16,r2l.b)"
+gdb_test "x" "exts.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "exts.w @(0x1234:16,r2.w)"
+gdb_test "x" "exts.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "exts.w @(0x1234:16,er2.l)"
+gdb_test "x" "exts.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "exts.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "exts.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "exts.w @(0x12345678:32,r2.w)"
+gdb_test "x" "exts.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "exts.w @(0x12345678:32,er2.l)"
+gdb_test "x" "exts.w\t@0x1234(:16|)" \
+       "exts.w @0x1234:16"
+gdb_test "x" "exts.w\t@0x12345678(:32|)" \
+       "exts.w @0x12345678:32"
+gdb_test "x" "exts.l\ter1" \
+       "exts.l er1"
+gdb_test "x" "exts.l\t@er1" \
+       "exts.l @er1"
+gdb_test "x" "exts.l\t@\\(0xc(:2|),er1\\)" \
+       "exts.l @(0xc:2,er1)"
+gdb_test "x" "exts.l\t@er1\\+" \
+       "exts.l @er1+"
+gdb_test "x" "exts.l\t@-er1" \
+       "exts.l @-er1"
+gdb_test "x" "exts.l\t@\\+er1" \
+       "exts.l @+er1"
+gdb_test "x" "exts.l\t@er1-" \
+       "exts.l @er1-"
+gdb_test "x" "exts.l\t@\\(0x1234(:16|),er1\\)" \
+       "exts.l @(0x1234:16,er1)"
+gdb_test "x" "exts.l\t@\\(0x12345678(:32|),er1\\)" \
+       "exts.l @(0x12345678:32,er1)"
+gdb_test "x" "exts.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "exts.l @(0x1234:16,r2l.b)"
+gdb_test "x" "exts.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "exts.l @(0x1234:16,r2.w)"
+gdb_test "x" "exts.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "exts.l @(0x1234:16,er2.l)"
+gdb_test "x" "exts.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "exts.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "exts.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "exts.l @(0x12345678:32,r2.w)"
+gdb_test "x" "exts.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "exts.l @(0x12345678:32,er2.l)"
+gdb_test "x" "exts.l\t@0x1234(:16|)" \
+       "exts.l @0x1234:16"
+gdb_test "x" "exts.l\t@0x12345678(:32|)" \
+       "exts.l @0x12345678:32"
+gdb_test "x" "exts.l\t#2,er1" \
+       "exts.l #2,er1"
+gdb_test "x" "exts.l\t#2,@er1" \
+       "exts.l #2,@er1"
+gdb_test "x" "exts.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "exts.l #2,@(0xc:2,er1)"
+gdb_test "x" "exts.l\t#2,@er1\\+" \
+       "exts.l #2,@er1+"
+gdb_test "x" "exts.l\t#2,@-er1" \
+       "exts.l #2,@-er1"
+gdb_test "x" "exts.l\t#2,@\\+er1" \
+       "exts.l #2,@+er1"
+gdb_test "x" "exts.l\t#2,@er1-" \
+       "exts.l #2,@er1-"
+gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "exts.l #2,@(0x1234:16,er1)"
+gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "exts.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "exts.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "exts.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "exts.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "exts.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "exts.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "exts.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "exts.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "exts.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "exts.l\t#2,@0x1234(:16|)" \
+       "exts.l #2,@0x1234:16"
+gdb_test "x" "exts.l\t#2,@0x12345678(:32|)" \
+       "exts.l #2,@0x12345678:32"
diff --git a/gdb/testsuite/gdb.disasm/t07_ari3.s b/gdb/testsuite/gdb.disasm/t07_ari3.s
new file mode 100644 (file)
index 0000000..985c684
--- /dev/null
@@ -0,0 +1,173 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;arith_3\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    neg.b r1h                 ;1781\r
+    neg.b @er1               ;7d101780\r
+    neg.b @(0x3:2,er1)         ;017768181780\r
+    neg.b @er1+              ;01746c181780\r
+    neg.b @-er1              ;01776c181780\r
+    neg.b @+er1              ;01756c181780\r
+    neg.b @er1-              ;01766c181780\r
+    neg.b @(0x1234:16,er1)        ;01746e1812341780\r
+    neg.b @(0x12345678:32,er1)        ;78146a28123456781780\r
+    neg.b @(0x1234:16,r2l.b)      ;01756e2812341780\r
+    neg.b @(0x1234:16,r2.w)      ;01766e2812341780\r
+    neg.b @(0x1234:16,er2.l)      ;01776e2812341780\r
+    neg.b @(0x12345678:32,r2l.b)      ;78256a28123456781780\r
+    neg.b @(0x12345678:32,r2.w)      ;78266a28123456781780\r
+    neg.b @(0x12345678:32,er2.l)      ;78276a28123456781780\r
+    neg.b @0xffffff12:8              ;7f121780\r
+    neg.b @0x1234:16             ;6a1812341780\r
+    neg.b @0x12345678:32             ;6a38123456781780\r
+\r
+    neg.w r1                 ;1791\r
+    neg.w @er1               ;7d901790\r
+    neg.w @(0x6:2,er1)      ;015769181790\r
+    neg.w @er1+              ;01546d181790\r
+    neg.w @-er1              ;01576d181790\r
+    neg.w @+er1              ;01556d181790\r
+    neg.w @er1-              ;01566d181790\r
+    neg.w @(0x1234:16,er1)        ;01546f1812341790\r
+    neg.w @(0x12345678:32,er1)        ;78146b28123456781790\r
+    neg.w @(0x1234:16,r2l.b)      ;01556f2812341790\r
+    neg.w @(0x1234:16,r2.w)      ;01566f2812341790\r
+    neg.w @(0x1234:16,er2.l)      ;01576f2812341790\r
+    neg.w @(0x12345678:32,r2l.b)      ;78256b28123456781790\r
+    neg.w @(0x12345678:32,r2.w)      ;78266b28123456781790\r
+    neg.w @(0x12345678:32,er2.l)      ;78276b28123456781790\r
+    neg.w @0x1234:16             ;6b1812341790\r
+    neg.w @0x12345678:32             ;6b38123456781790\r
+\r
+    neg.l er1                 ;17b1\r
+    neg.l @er1               ;0104691817b0\r
+    neg.l @(0xc:2,er1)      ;0107691817b0\r
+    neg.l @er1+              ;01046d1817b0\r
+    neg.l @-er1              ;01076d1817b0\r
+    neg.l @+er1              ;01056d1817b0\r
+    neg.l @er1-              ;01066d1817b0\r
+    neg.l @(0x1234:16,er1)        ;01046f18123417b0\r
+    neg.l @(0x12345678:32,er1)        ;78946b281234567817b0\r
+    neg.l @(0x1234:16,r2l.b)      ;01056f28123417b0\r
+    neg.l @(0x1234:16,r2.w)      ;01066f28123417b0\r
+    neg.l @(0x1234:16,er2.l)      ;01076f28123417b0\r
+    neg.l @(0x12345678:32,r2l.b)      ;78a56b281234567817b0\r
+    neg.l @(0x12345678:32,r2.w)      ;78a66b281234567817b0\r
+    neg.l @(0x12345678:32,er2.l)      ;78a76b281234567817b0\r
+    neg.l @0x1234:16             ;01046b08123417b0\r
+    neg.l @0x12345678:32             ;01046b281234567817b0\r
+\r
+    tas @er1                 ;01e07b1c\r
+\r
+    extu.w r1                ;1751\r
+    extu.w @er1              ;7d901750\r
+    extu.w @(0x6:2,er1)     ;015769181750\r
+    extu.w @er1+             ;01546d181750\r
+    extu.w @-er1             ;01576d181750\r
+    extu.w @+er1             ;01556d181750\r
+    extu.w @er1-             ;01566d181750\r
+    extu.w @(0x1234:16,er1)       ;01546f1812341750\r
+    extu.w @(0x12345678:32,er1)       ;78146b28123456781750\r
+    extu.w @(0x1234:16,r2l.b)     ;01556f2812341750\r
+    extu.w @(0x1234:16,r2.w)     ;01566f2812341750\r
+    extu.w @(0x1234:16,er2.l)     ;01576f2812341750\r
+    extu.w @(0x12345678:32,r2l.b)     ;78256b28123456781750\r
+    extu.w @(0x12345678:32,r2.w)     ;78266b28123456781750\r
+    extu.w @(0x12345678:32,er2.l)     ;78276b28123456781750\r
+    extu.w @0x1234:16            ;6b1812341750\r
+    extu.w @0x12345678:32            ;6b38123456781750\r
+\r
+    extu.l er1                ;1771\r
+    extu.l @er1              ;010469181770\r
+    extu.l @(0xc:2,er1)     ;010769181770\r
+    extu.l @er1+             ;01046d181770\r
+    extu.l @-er1             ;01076d181770\r
+    extu.l @+er1             ;01056d181770\r
+    extu.l @er1-             ;01066d181770\r
+    extu.l @(0x1234:16,er1)       ;01046f1812341770\r
+    extu.l @(0x12345678:32,er1)       ;78946b28123456781770\r
+    extu.l @(0x1234:16,r2l.b)     ;01056f2812341770\r
+    extu.l @(0x1234:16,r2.w)     ;01066f2812341770\r
+    extu.l @(0x1234:16,er2.l)     ;01076f2812341770\r
+    extu.l @(0x12345678:32,r2l.b)     ;78a56b28123456781770\r
+    extu.l @(0x12345678:32,r2.w)     ;78a66b28123456781770\r
+    extu.l @(0x12345678:32,er2.l)     ;78a76b28123456781770\r
+    extu.l @0x1234:16            ;01046b0812341770\r
+    extu.l @0x12345678:32            ;01046b28123456781770\r
+\r
+    extu.l #2,er1             ;1761\r
+    extu.l #2,@er1           ;010469181760\r
+    extu.l #2,@(0xc:2,er1)  ;010769181760\r
+    extu.l #2,@er1+          ;01046d181760\r
+    extu.l #2,@-er1          ;01076d181760\r
+    extu.l #2,@+er1          ;01056d181760\r
+    extu.l #2,@er1-          ;01066d181760\r
+    extu.l #2,@(0x1234:16,er1)    ;01046f1812341760\r
+    extu.l #2,@(0x12345678:32,er1)    ;78946b28123456781760\r
+    extu.l #2,@(0x1234:16,r2l.b)  ;01056f2812341760\r
+    extu.l #2,@(0x1234:16,r2.w)  ;01066f2812341760\r
+    extu.l #2,@(0x1234:16,er2.l)  ;01076f2812341760\r
+    extu.l #2,@(0x12345678:32,r2l.b)  ;78a56b28123456781760\r
+    extu.l #2,@(0x12345678:32,r2.w)  ;78a66b28123456781760\r
+    extu.l #2,@(0x12345678:32,er2.l)  ;78a76b28123456781760\r
+    extu.l #2,@0x1234:16         ;01046b0812341760\r
+    extu.l #2,@0x12345678:32         ;01046b28123456781760\r
+\r
+    exts.w r1                ;17d1\r
+    exts.w @er1              ;7d9017d0\r
+    exts.w @(0x6:2,er1)     ;0157691817d0\r
+    exts.w @er1+             ;01546d1817d0\r
+    exts.w @-er1             ;01576d1817d0\r
+    exts.w @+er1             ;01556d1817d0\r
+    exts.w @er1-             ;01566d1817d0\r
+    exts.w @(0x1234:16,er1)       ;01546f18123417d0\r
+    exts.w @(0x12345678:32,er1)       ;78146b281234567817d0\r
+    exts.w @(0x1234:16,r2l.b)     ;01556f28123417d0\r
+    exts.w @(0x1234:16,r2.w)     ;01566f28123417d0\r
+    exts.w @(0x1234:16,er2.l)     ;01576f28123417d0\r
+    exts.w @(0x12345678:32,r2l.b)     ;78256b281234567817d0\r
+    exts.w @(0x12345678:32,r2.w)     ;78266b281234567817d0\r
+    exts.w @(0x12345678:32,er2.l)     ;78276b281234567817d0\r
+    exts.w @0x1234:16            ;6b18123417d0\r
+    exts.w @0x12345678:32            ;6b381234567817d0\r
+\r
+    exts.l er1                ;17f1\r
+    exts.l @er1              ;0104691817f0\r
+    exts.l @(0xc:2,er1)     ;0107691817f0\r
+    exts.l @er1+             ;01046d1817f0\r
+    exts.l @-er1             ;01076d1817f0\r
+    exts.l @+er1             ;01056d1817f0\r
+    exts.l @er1-             ;01066d1817f0\r
+    exts.l @(0x1234:16,er1)       ;01046f18123417f0\r
+    exts.l @(0x12345678:32,er1)       ;78946b281234567817f0\r
+    exts.l @(0x1234:16,r2l.b)     ;01056f28123417f0\r
+    exts.l @(0x1234:16,r2.w)     ;01066f28123417f0\r
+    exts.l @(0x1234:16,er2.l)     ;01076f28123417f0\r
+    exts.l @(0x12345678:32,r2l.b)     ;78a56b281234567817f0\r
+    exts.l @(0x12345678:32,r2.w)     ;78a66b281234567817f0\r
+    exts.l @(0x12345678:32,er2.l)     ;78a76b281234567817f0\r
+    exts.l @0x1234:16            ;01046b08123417f0\r
+    exts.l @0x12345678:32            ;01046b281234567817f0\r
+\r
+    exts.l #2,er1             ;17e1\r
+    exts.l #2,@er1           ;0104691817e0\r
+    exts.l #2,@(0xc:2,er1)  ;0107691817e0\r
+    exts.l #2,@er1+          ;01046d1817e0\r
+    exts.l #2,@-er1          ;01076d1817e0\r
+    exts.l #2,@+er1          ;01056d1817e0\r
+    exts.l #2,@er1-          ;01066d1817e0\r
+    exts.l #2,@(0x1234:16,er1)    ;01046f18123417e0\r
+    exts.l #2,@(0x12345678:32,er1)    ;78946b281234567817e0\r
+    exts.l #2,@(0x1234:16,r2l.b)  ;01056f28123417e0\r
+    exts.l #2,@(0x1234:16,r2.w)  ;01066f28123417e0\r
+    exts.l #2,@(0x1234:16,er2.l)  ;01076f28123417e0\r
+    exts.l #2,@(0x12345678:32,r2l.b)  ;78a56b281234567817e0\r
+    exts.l #2,@(0x12345678:32,r2.w)  ;78a66b281234567817e0\r
+    exts.l #2,@(0x12345678:32,er2.l)  ;78a76b281234567817e0\r
+    exts.l #2,@0x1234:16         ;01046b08123417e0\r
+    exts.l #2,@0x12345678:32         ;01046b281234567817e0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t08_or.exp b/gdb/testsuite/gdb.disasm/t08_or.exp
new file mode 100644 (file)
index 0000000..5652cf7
--- /dev/null
@@ -0,0 +1,1866 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t08_or"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "or.b\t#0x12(:8|),r1h" \
+       "or.b #0x12:8,r1h"
+gdb_test "x" "or.b\t#0x12(:8|),@er1" \
+       "or.b #0x12:8,@er1"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x3(:2|),er1\\)" \
+       "or.b #0x12:8,@(0x3:2,er1)"
+gdb_test "x" "or.b\t#0x12(:8|),@er1\\+" \
+       "or.b #0x12:8,@er1+"
+gdb_test "x" "or.b\t#0x12(:8|),@-er1" \
+       "or.b #0x12:8,@-er1"
+gdb_test "x" "or.b\t#0x12(:8|),@\\+er1" \
+       "or.b #0x12:8,@+er1"
+gdb_test "x" "or.b\t#0x12(:8|),@er1-" \
+       "or.b #0x12:8,@er1-"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x1234(:16|),er1\\)" \
+       "or.b #0x12:8,@(0x1234:16,er1)"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x12345678(:32|),er1\\)" \
+       "or.b #0x12:8,@(0x12345678:32,er1)"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x1234(:16|),r2l.b\\)" \
+       "or.b #0x12:8,@(0x1234:16,r2l.b)"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x1234(:16|),r2.w\\)" \
+       "or.b #0x12:8,@(0x1234:16,r2.w)"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x1234(:16|),er2.l\\)" \
+       "or.b #0x12:8,@(0x1234:16,er2.l)"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x12345678(:32|),r2l.b\\)" \
+       "or.b #0x12:8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x12345678(:32|),r2.w\\)" \
+       "or.b #0x12:8,@(0x12345678:32,r2.w)"
+gdb_test "x" "or.b\t#0x12(:8|),@\\(0x12345678(:32|),er2.l\\)" \
+       "or.b #0x12:8,@(0x12345678:32,er2.l)"
+gdb_test "x" "or.b\t#0x12(:8|),@0x12(:8|)" \
+       "or.b #0x12:8,@0x12:8"
+gdb_test "x" "or.b\t#0x12(:8|),@0x1234(:16|)" \
+       "or.b #0x12:8,@0x1234:16"
+gdb_test "x" "or.b\t#0x12(:8|),@0x12345678(:32|)" \
+       "or.b #0x12:8,@0x12345678:32"
+gdb_test "x" "or.b\tr3h,r1h" \
+       "or.b r3h,r1h"
+gdb_test "x" "or.b\tr3h,@er1" \
+       "or.b r3h,@er1"
+gdb_test "x" "or.b\tr3h,@\\(0x3(:2|),er1\\)" \
+       "or.b r3h,@(0x3:2,er1)"
+gdb_test "x" "or.b\tr3h,@er1\\+" \
+       "or.b r3h,@er1+"
+gdb_test "x" "or.b\tr3h,@-er1" \
+       "or.b r3h,@-er1"
+gdb_test "x" "or.b\tr3h,@\\+er1" \
+       "or.b r3h,@+er1"
+gdb_test "x" "or.b\tr3h,@er1-" \
+       "or.b r3h,@er1-"
+gdb_test "x" "or.b\tr3h,@\\(0x1234(:16|),er1\\)" \
+       "or.b r3h,@(0x1234:16,er1)"
+gdb_test "x" "or.b\tr3h,@\\(0x12345678(:32|),er1\\)" \
+       "or.b r3h,@(0x12345678:32,er1)"
+gdb_test "x" "or.b\tr3h,@\\(0x1234(:16|),r2l.b\\)" \
+       "or.b r3h,@(0x1234:16,r2l.b)"
+gdb_test "x" "or.b\tr3h,@\\(0x1234(:16|),r2.w\\)" \
+       "or.b r3h,@(0x1234:16,r2.w)"
+gdb_test "x" "or.b\tr3h,@\\(0x1234(:16|),er2.l\\)" \
+       "or.b r3h,@(0x1234:16,er2.l)"
+gdb_test "x" "or.b\tr3h,@\\(0x12345678(:32|),r2l.b\\)" \
+       "or.b r3h,@(0x12345678:32,r2l.b)"
+gdb_test "x" "or.b\tr3h,@\\(0x12345678(:32|),r2.w\\)" \
+       "or.b r3h,@(0x12345678:32,r2.w)"
+gdb_test "x" "or.b\tr3h,@\\(0x12345678(:32|),er2.l\\)" \
+       "or.b r3h,@(0x12345678:32,er2.l)"
+gdb_test "x" "or.b\tr3h,@0x12(:8|)" \
+       "or.b r3h,@0x12:8"
+gdb_test "x" "or.b\tr3h,@0x1234(:16|)" \
+       "or.b r3h,@0x1234:16"
+gdb_test "x" "or.b\tr3h,@0x12345678(:32|)" \
+       "or.b r3h,@0x12345678:32"
+gdb_test "x" "or.b\t@er3,r1h" \
+       "or.b @er3,r1h"
+gdb_test "x" "or.b\t@\\(0x3(:2|),er3\\),r1h" \
+       "or.b @(0x3:2,er3),r1h"
+gdb_test "x" "or.b\t@er3\\+,r1h" \
+       "or.b @er3+,r1h"
+gdb_test "x" "or.b\t@-er3,r1h" \
+       "or.b @-er3,r1h"
+gdb_test "x" "or.b\t@\\+er3,r1h" \
+       "or.b @+er3,r1h"
+gdb_test "x" "or.b\t@er3-,r1h" \
+       "or.b @er3-,r1h"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er1\\),r1h" \
+       "or.b @(0x1234:16,er1),r1h"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er1\\),r1h" \
+       "or.b @(0x12345678:32,er1),r1h"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r2l.b\\),r1h" \
+       "or.b @(0x1234:16,r2l.b),r1h"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r2.w\\),r1h" \
+       "or.b @(0x1234:16,r2.w),r1h"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er2.l\\),r1h" \
+       "or.b @(0x1234:16,er2.l),r1h"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r2l.b\\),r1h" \
+       "or.b @(0x12345678:32,r2l.b),r1h"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r2.w\\),r1h" \
+       "or.b @(0x12345678:32,r2.w),r1h"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er2.l\\),r1h" \
+       "or.b @(0x12345678:32,er2.l),r1h"
+gdb_test "x" "or.b\t@0x12(:8|),r1h" \
+       "or.b @0x12:8,r1h"
+gdb_test "x" "or.b\t@0x1234(:16|),r1h" \
+       "or.b @0x1234:16,r1h"
+gdb_test "x" "or.b\t@0x12345678(:32|),r1h" \
+       "or.b @0x12345678:32,r1h"
+gdb_test "x" "or.b\t@er3,@er1" \
+       "or.b @er3,@er1"
+gdb_test "x" "or.b\t@er3,@\\(0x3(:2|),er1\\)" \
+       "or.b @er3,@(0x3:2,er1)"
+gdb_test "x" "or.b\t@er3,@-er1" \
+       "or.b @er3,@-er1"
+gdb_test "x" "or.b\t@er3,@er1\\+" \
+       "or.b @er3,@er1+"
+gdb_test "x" "or.b\t@er3,@er1-" \
+       "or.b @er3,@er1-"
+gdb_test "x" "or.b\t@er3,@\\+er1" \
+       "or.b @er3,@+er1"
+gdb_test "x" "or.b\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.b @er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@er3,@0x9abc(:16|)" \
+       "or.b @er3,@0x9abc:16"
+gdb_test "x" "or.b\t@er3,@0x9abcdef0(:32|)" \
+       "or.b @er3,@0x9abcdef0:32"
+gdb_test "x" "or.b\t@-er3,@er1" \
+       "or.b @-er3,@er1"
+gdb_test "x" "or.b\t@-er3,@\\(0x3(:2|),er1\\)" \
+       "or.b @-er3,@(0x3:2,er1)"
+gdb_test "x" "or.b\t@-er3,@-er1" \
+       "or.b @-er3,@-er1"
+gdb_test "x" "or.b\t@-er3,@er1\\+" \
+       "or.b @-er3,@er1+"
+gdb_test "x" "or.b\t@-er3,@er1-" \
+       "or.b @-er3,@er1-"
+gdb_test "x" "or.b\t@-er3,@\\+er1" \
+       "or.b @-er3,@+er1"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.b @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@-er3,@0x9abc(:16|)" \
+       "or.b @-er3,@0x9abc:16"
+gdb_test "x" "or.b\t@-er3,@0x9abcdef0(:32|)" \
+       "or.b @-er3,@0x9abcdef0:32"
+gdb_test "x" "or.b\t@er3\\+,@er1" \
+       "or.b @er3+,@er1"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x3(:2|),er1\\)" \
+       "or.b @er3+,@(0x3:2,er1)"
+gdb_test "x" "or.b\t@er3\\+,@-er1" \
+       "or.b @er3+,@-er1"
+gdb_test "x" "or.b\t@er3\\+,@er1\\+" \
+       "or.b @er3+,@er1+"
+gdb_test "x" "or.b\t@er3\\+,@er1-" \
+       "or.b @er3+,@er1-"
+gdb_test "x" "or.b\t@er3\\+,@\\+er1" \
+       "or.b @er3+,@+er1"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "or.b @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@er3\\+,@0x9abc(:16|)" \
+       "or.b @er3+,@0x9abc:16"
+gdb_test "x" "or.b\t@er3\\+,@0x9abcdef0(:32|)" \
+       "or.b @er3+,@0x9abcdef0:32"
+gdb_test "x" "or.b\t@er3-,@er1" \
+       "or.b @er3-,@er1"
+gdb_test "x" "or.b\t@er3-,@\\(0x3(:2|),er1\\)" \
+       "or.b @er3-,@(0x3:2,er1)"
+gdb_test "x" "or.b\t@er3-,@-er1" \
+       "or.b @er3-,@-er1"
+gdb_test "x" "or.b\t@er3-,@er1\\+" \
+       "or.b @er3-,@er1+"
+gdb_test "x" "or.b\t@er3-,@er1-" \
+       "or.b @er3-,@er1-"
+gdb_test "x" "or.b\t@er3-,@\\+er1" \
+       "or.b @er3-,@+er1"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "or.b @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@er3-,@0x9abc(:16|)" \
+       "or.b @er3-,@0x9abc:16"
+gdb_test "x" "or.b\t@er3-,@0x9abcdef0(:32|)" \
+       "or.b @er3-,@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\+er3,@er1" \
+       "or.b @+er3,@er1"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x3(:2|),er1\\)" \
+       "or.b @+er3,@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\+er3,@-er1" \
+       "or.b @+er3,@-er1"
+gdb_test "x" "or.b\t@\\+er3,@er1\\+" \
+       "or.b @+er3,@er1+"
+gdb_test "x" "or.b\t@\\+er3,@er1-" \
+       "or.b @+er3,@er1-"
+gdb_test "x" "or.b\t@\\+er3,@\\+er1" \
+       "or.b @+er3,@+er1"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.b @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\+er3,@0x9abc(:16|)" \
+       "or.b @+er3,@0x9abc:16"
+gdb_test "x" "or.b\t@\\+er3,@0x9abcdef0(:32|)" \
+       "or.b @+er3,@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@er1" \
+       "or.b @(0x1234:16,er3),@er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x1234:16,er3),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "or.b @(0x1234:16,er3),@-er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "or.b @(0x1234:16,er3),@er1+"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "or.b @(0x1234:16,er3),@er1-"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "or.b @(0x1234:16,er3),@+er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "or.b @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "or.b @(0x12345678:32,er3),@er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x12345678:32,er3),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "or.b @(0x12345678:32,er3),@-er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "or.b @(0x12345678:32,er3),@er1+"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "or.b @(0x12345678:32,er3),@er1-"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "or.b @(0x12345678:32,er3),@+er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "or.b @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "or.b @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "or.b @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "or.b @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "or.b @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "or.b @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "or.b @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "or.b @(0x1234:16,r3.w),@er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "or.b @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "or.b @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "or.b @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "or.b @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "or.b @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "or.b @(0x1234:16,er3.l),@er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "or.b @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "or.b @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "or.b @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "or.b @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "or.b @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "or.b @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "or.b @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "or.b @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "or.b @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "or.b @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "or.b @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "or.b @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "or.b @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "or.b @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "or.b @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "or.b @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "or.b @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "or.b @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x3:2,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "or.b @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "or.b @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "or.b @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "or.b @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "or.b @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "or.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "or.b @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "or.b\t@0x1234(:16|),@er1" \
+       "or.b @0x1234:16,@er1"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x3(:2|),er1\\)" \
+       "or.b @0x1234:16,@(0x3:2,er1)"
+gdb_test "x" "or.b\t@0x1234(:16|),@-er1" \
+       "or.b @0x1234:16,@-er1"
+gdb_test "x" "or.b\t@0x1234(:16|),@er1\\+" \
+       "or.b @0x1234:16,@er1+"
+gdb_test "x" "or.b\t@0x1234(:16|),@er1-" \
+       "or.b @0x1234:16,@er1-"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\+er1" \
+       "or.b @0x1234:16,@+er1"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@0x1234(:16|),@0x9abc(:16|)" \
+       "or.b @0x1234:16,@0x9abc:16"
+gdb_test "x" "or.b\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "or.b @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "or.b\t@0x12345678(:32|),@er1" \
+       "or.b @0x12345678:32,@er1"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x3(:2|),er1\\)" \
+       "or.b @0x12345678:32,@(0x3:2,er1)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@-er1" \
+       "or.b @0x12345678:32,@-er1"
+gdb_test "x" "or.b\t@0x12345678(:32|),@er1\\+" \
+       "or.b @0x12345678:32,@er1+"
+gdb_test "x" "or.b\t@0x12345678(:32|),@er1-" \
+       "or.b @0x12345678:32,@er1-"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\+er1" \
+       "or.b @0x12345678:32,@+er1"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "or.b @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.b @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.b @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.b @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.b @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.b @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.b @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.b\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "or.b @0x12345678:32,@0x9abc:16"
+gdb_test "x" "or.b\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "or.b @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "or.w\t#0x1234(:16|),r1" \
+       "or.w #0x1234:16,r1"
+gdb_test "x" "or.w\t#0x1234(:16|),@er1" \
+       "or.w #0x1234:16,@er1"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "or.w #0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "or.w\t#0x1234(:16|),@er1\\+" \
+       "or.w #0x1234:16,@er1+"
+gdb_test "x" "or.w\t#0x1234(:16|),@-er1" \
+       "or.w #0x1234:16,@-er1"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\+er1" \
+       "or.w #0x1234:16,@+er1"
+gdb_test "x" "or.w\t#0x1234(:16|),@er1-" \
+       "or.w #0x1234:16,@er1-"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "or.w #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t#0x1234(:16|),@0x9abc(:16|)" \
+       "or.w #0x1234:16,@0x9abc:16"
+gdb_test "x" "or.w\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "or.w #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "or.w\tr3,r1" \
+       "or.w r3,r1"
+gdb_test "x" "or.w\tr3,@er1" \
+       "or.w r3,@er1"
+gdb_test "x" "or.w\tr3,@\\(0x6(:2|),er1\\)" \
+       "or.w r3,@(0x6:2,er1)"
+gdb_test "x" "or.w\tr3,@er1\\+" \
+       "or.w r3,@er1+"
+gdb_test "x" "or.w\tr3,@-er1" \
+       "or.w r3,@-er1"
+gdb_test "x" "or.w\tr3,@\\+er1" \
+       "or.w r3,@+er1"
+gdb_test "x" "or.w\tr3,@er1-" \
+       "or.w r3,@er1-"
+gdb_test "x" "or.w\tr3,@\\(0x1234(:16|),er1\\)" \
+       "or.w r3,@(0x1234:16,er1)"
+gdb_test "x" "or.w\tr3,@\\(0x12345678(:32|),er1\\)" \
+       "or.w r3,@(0x12345678:32,er1)"
+gdb_test "x" "or.w\tr3,@\\(0x1234(:16|),r2l.b\\)" \
+       "or.w r3,@(0x1234:16,r2l.b)"
+gdb_test "x" "or.w\tr3,@\\(0x1234(:16|),r2.w\\)" \
+       "or.w r3,@(0x1234:16,r2.w)"
+gdb_test "x" "or.w\tr3,@\\(0x1234(:16|),er2.l\\)" \
+       "or.w r3,@(0x1234:16,er2.l)"
+gdb_test "x" "or.w\tr3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "or.w r3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "or.w\tr3,@\\(0x12345678(:32|),r2.w\\)" \
+       "or.w r3,@(0x12345678:32,r2.w)"
+gdb_test "x" "or.w\tr3,@\\(0x12345678(:32|),er2.l\\)" \
+       "or.w r3,@(0x12345678:32,er2.l)"
+gdb_test "x" "or.w\tr3,@0x1234(:16|)" \
+       "or.w r3,@0x1234:16"
+gdb_test "x" "or.w\tr3,@0x12345678(:32|)" \
+       "or.w r3,@0x12345678:32"
+gdb_test "x" "or.w\t@er3,r1" \
+       "or.w @er3,r1"
+gdb_test "x" "or.w\t@\\(0x6(:2|),er3\\),r1" \
+       "or.w @(0x6:2,er3),r1"
+gdb_test "x" "or.w\t@er3\\+,r1" \
+       "or.w @er3+,r1"
+gdb_test "x" "or.w\t@-er3,r1" \
+       "or.w @-er3,r1"
+gdb_test "x" "or.w\t@\\+er3,r1" \
+       "or.w @+er3,r1"
+gdb_test "x" "or.w\t@er3-,r1" \
+       "or.w @er3-,r1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er1\\),r1" \
+       "or.w @(0x1234:16,er1),r1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er1\\),r1" \
+       "or.w @(0x12345678:32,er1),r1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r2l.b\\),r1" \
+       "or.w @(0x1234:16,r2l.b),r1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r2.w\\),r1" \
+       "or.w @(0x1234:16,r2.w),r1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er2.l\\),r1" \
+       "or.w @(0x1234:16,er2.l),r1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r2l.b\\),r1" \
+       "or.w @(0x12345678:32,r2l.b),r1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r2.w\\),r1" \
+       "or.w @(0x12345678:32,r2.w),r1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er2.l\\),r1" \
+       "or.w @(0x12345678:32,er2.l),r1"
+gdb_test "x" "or.w\t@0x1234(:16|),r1" \
+       "or.w @0x1234:16,r1"
+gdb_test "x" "or.w\t@0x12345678(:32|),r1" \
+       "or.w @0x12345678:32,r1"
+gdb_test "x" "or.w\t@er3,@er1" \
+       "or.w @er3,@er1"
+gdb_test "x" "or.w\t@er3,@\\(0x6(:2|),er1\\)" \
+       "or.w @er3,@(0x6:2,er1)"
+gdb_test "x" "or.w\t@er3,@-er1" \
+       "or.w @er3,@-er1"
+gdb_test "x" "or.w\t@er3,@er1\\+" \
+       "or.w @er3,@er1+"
+gdb_test "x" "or.w\t@er3,@er1-" \
+       "or.w @er3,@er1-"
+gdb_test "x" "or.w\t@er3,@\\+er1" \
+       "or.w @er3,@+er1"
+gdb_test "x" "or.w\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.w @er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@er3,@0x9abc(:16|)" \
+       "or.w @er3,@0x9abc:16"
+gdb_test "x" "or.w\t@er3,@0x9abcdef0(:32|)" \
+       "or.w @er3,@0x9abcdef0:32"
+gdb_test "x" "or.w\t@-er3,@er1" \
+       "or.w @-er3,@er1"
+gdb_test "x" "or.w\t@-er3,@\\(0x6(:2|),er1\\)" \
+       "or.w @-er3,@(0x6:2,er1)"
+gdb_test "x" "or.w\t@-er3,@-er1" \
+       "or.w @-er3,@-er1"
+gdb_test "x" "or.w\t@-er3,@er1\\+" \
+       "or.w @-er3,@er1+"
+gdb_test "x" "or.w\t@-er3,@er1-" \
+       "or.w @-er3,@er1-"
+gdb_test "x" "or.w\t@-er3,@\\+er1" \
+       "or.w @-er3,@+er1"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.w @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@-er3,@0x9abc(:16|)" \
+       "or.w @-er3,@0x9abc:16"
+gdb_test "x" "or.w\t@-er3,@0x9abcdef0(:32|)" \
+       "or.w @-er3,@0x9abcdef0:32"
+gdb_test "x" "or.w\t@er3\\+,@er1" \
+       "or.w @er3+,@er1"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x6(:2|),er1\\)" \
+       "or.w @er3+,@(0x6:2,er1)"
+gdb_test "x" "or.w\t@er3\\+,@-er1" \
+       "or.w @er3+,@-er1"
+gdb_test "x" "or.w\t@er3\\+,@er1\\+" \
+       "or.w @er3+,@er1+"
+gdb_test "x" "or.w\t@er3\\+,@er1-" \
+       "or.w @er3+,@er1-"
+gdb_test "x" "or.w\t@er3\\+,@\\+er1" \
+       "or.w @er3+,@+er1"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "or.w @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@er3\\+,@0x9abc(:16|)" \
+       "or.w @er3+,@0x9abc:16"
+gdb_test "x" "or.w\t@er3\\+,@0x9abcdef0(:32|)" \
+       "or.w @er3+,@0x9abcdef0:32"
+gdb_test "x" "or.w\t@er3-,@er1" \
+       "or.w @er3-,@er1"
+gdb_test "x" "or.w\t@er3-,@\\(0x6(:2|),er1\\)" \
+       "or.w @er3-,@(0x6:2,er1)"
+gdb_test "x" "or.w\t@er3-,@-er1" \
+       "or.w @er3-,@-er1"
+gdb_test "x" "or.w\t@er3-,@er1\\+" \
+       "or.w @er3-,@er1+"
+gdb_test "x" "or.w\t@er3-,@er1-" \
+       "or.w @er3-,@er1-"
+gdb_test "x" "or.w\t@er3-,@\\+er1" \
+       "or.w @er3-,@+er1"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "or.w @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@er3-,@0x9abc(:16|)" \
+       "or.w @er3-,@0x9abc:16"
+gdb_test "x" "or.w\t@er3-,@0x9abcdef0(:32|)" \
+       "or.w @er3-,@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\+er3,@er1" \
+       "or.w @+er3,@er1"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x6(:2|),er1\\)" \
+       "or.w @+er3,@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\+er3,@-er1" \
+       "or.w @+er3,@-er1"
+gdb_test "x" "or.w\t@\\+er3,@er1\\+" \
+       "or.w @+er3,@er1+"
+gdb_test "x" "or.w\t@\\+er3,@er1-" \
+       "or.w @+er3,@er1-"
+gdb_test "x" "or.w\t@\\+er3,@\\+er1" \
+       "or.w @+er3,@+er1"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.w @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\+er3,@0x9abc(:16|)" \
+       "or.w @+er3,@0x9abc:16"
+gdb_test "x" "or.w\t@\\+er3,@0x9abcdef0(:32|)" \
+       "or.w @+er3,@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@er1" \
+       "or.w @(0x1234:16,er3),@er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x1234:16,er3),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "or.w @(0x1234:16,er3),@-er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "or.w @(0x1234:16,er3),@er1+"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "or.w @(0x1234:16,er3),@er1-"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "or.w @(0x1234:16,er3),@+er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "or.w @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "or.w @(0x12345678:32,er3),@er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x12345678:32,er3),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "or.w @(0x12345678:32,er3),@-er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "or.w @(0x12345678:32,er3),@er1+"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "or.w @(0x12345678:32,er3),@er1-"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "or.w @(0x12345678:32,er3),@+er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "or.w @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "or.w @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "or.w @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "or.w @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "or.w @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "or.w @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "or.w @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "or.w @(0x1234:16,r3.w),@er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "or.w @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "or.w @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "or.w @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "or.w @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "or.w @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "or.w @(0x1234:16,er3.l),@er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "or.w @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "or.w @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "or.w @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "or.w @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "or.w @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "or.w @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "or.w @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "or.w @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "or.w @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "or.w @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "or.w @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "or.w @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "or.w @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "or.w @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "or.w @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "or.w @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "or.w @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "or.w @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x6:2,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "or.w @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "or.w @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "or.w @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "or.w @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "or.w @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "or.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "or.w @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "or.w\t@0x1234(:16|),@er1" \
+       "or.w @0x1234:16,@er1"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "or.w @0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "or.w\t@0x1234(:16|),@-er1" \
+       "or.w @0x1234:16,@-er1"
+gdb_test "x" "or.w\t@0x1234(:16|),@er1\\+" \
+       "or.w @0x1234:16,@er1+"
+gdb_test "x" "or.w\t@0x1234(:16|),@er1-" \
+       "or.w @0x1234:16,@er1-"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\+er1" \
+       "or.w @0x1234:16,@+er1"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@0x1234(:16|),@0x9abc(:16|)" \
+       "or.w @0x1234:16,@0x9abc:16"
+gdb_test "x" "or.w\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "or.w @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "or.w\t@0x12345678(:32|),@er1" \
+       "or.w @0x12345678:32,@er1"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x6(:2|),er1\\)" \
+       "or.w @0x12345678:32,@(0x6:2,er1)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@-er1" \
+       "or.w @0x12345678:32,@-er1"
+gdb_test "x" "or.w\t@0x12345678(:32|),@er1\\+" \
+       "or.w @0x12345678:32,@er1+"
+gdb_test "x" "or.w\t@0x12345678(:32|),@er1-" \
+       "or.w @0x12345678:32,@er1-"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\+er1" \
+       "or.w @0x12345678:32,@+er1"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "or.w @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.w @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.w @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.w @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.w @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.w @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.w @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.w\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "or.w @0x12345678:32,@0x9abc:16"
+gdb_test "x" "or.w\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "or.w @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "or.l\t#0x12345678(:32|),er1" \
+       "or.l #0x12345678:32,er1"
+gdb_test "x" "or.l\t#0x1234(:16|),er1" \
+       "or.l #0x1234:16,er1"
+gdb_test "x" "or.l\t#0x12345678(:32|),@er1" \
+       "or.l #0x12345678:32,@er1"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "or.l #0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@er1\\+" \
+       "or.l #0x12345678:32,@er1+"
+gdb_test "x" "or.l\t#0x12345678(:32|),@-er1" \
+       "or.l #0x12345678:32,@-er1"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\+er1" \
+       "or.l #0x12345678:32,@+er1"
+gdb_test "x" "or.l\t#0x12345678(:32|),@er1-" \
+       "or.l #0x12345678:32,@er1-"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "or.l #0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l #0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l #0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l #0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l #0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l #0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l #0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t#0x12345678(:32|),@0x9abc(:16|)" \
+       "or.l #0x12345678:32,@0x9abc:16"
+gdb_test "x" "or.l\t#0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "or.l #0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "or.l\t#0x1234(:16|),@er1" \
+       "or.l #0x1234:16,@er1"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "or.l #0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "or.l\t#0x1234(:16|),@er1\\+" \
+       "or.l #0x1234:16,@er1+"
+gdb_test "x" "or.l\t#0x1234(:16|),@-er1" \
+       "or.l #0x1234:16,@-er1"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\+er1" \
+       "or.l #0x1234:16,@+er1"
+gdb_test "x" "or.l\t#0x1234(:16|),@er1-" \
+       "or.l #0x1234:16,@er1-"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "or.l #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t#0x1234(:16|),@0x9abc(:16|)" \
+       "or.l #0x1234:16,@0x9abc:16"
+gdb_test "x" "or.l\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "or.l #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "or.l\ter3,er1" \
+       "or.l er3,er1"
+gdb_test "x" "or.l\ter3,@er1" \
+       "or.l er3,@er1"
+gdb_test "x" "or.l\ter3,@\\(0xc(:2|),er1\\)" \
+       "or.l er3,@(0xc:2,er1)"
+gdb_test "x" "or.l\ter3,@er1\\+" \
+       "or.l er3,@er1+"
+gdb_test "x" "or.l\ter3,@-er1" \
+       "or.l er3,@-er1"
+gdb_test "x" "or.l\ter3,@\\+er1" \
+       "or.l er3,@+er1"
+gdb_test "x" "or.l\ter3,@er1-" \
+       "or.l er3,@er1-"
+gdb_test "x" "or.l\ter3,@\\(0x1234(:16|),er1\\)" \
+       "or.l er3,@(0x1234:16,er1)"
+gdb_test "x" "or.l\ter3,@\\(0x12345678(:32|),er1\\)" \
+       "or.l er3,@(0x12345678:32,er1)"
+gdb_test "x" "or.l\ter3,@\\(0x1234(:16|),r2l.b\\)" \
+       "or.l er3,@(0x1234:16,r2l.b)"
+gdb_test "x" "or.l\ter3,@\\(0x1234(:16|),r2.w\\)" \
+       "or.l er3,@(0x1234:16,r2.w)"
+gdb_test "x" "or.l\ter3,@\\(0x1234(:16|),er2.l\\)" \
+       "or.l er3,@(0x1234:16,er2.l)"
+gdb_test "x" "or.l\ter3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "or.l er3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "or.l\ter3,@\\(0x12345678(:32|),r2.w\\)" \
+       "or.l er3,@(0x12345678:32,r2.w)"
+gdb_test "x" "or.l\ter3,@\\(0x12345678(:32|),er2.l\\)" \
+       "or.l er3,@(0x12345678:32,er2.l)"
+gdb_test "x" "or.l\ter3,@0x1234(:16|)" \
+       "or.l er3,@0x1234:16"
+gdb_test "x" "or.l\ter3,@0x12345678(:32|)" \
+       "or.l er3,@0x12345678:32"
+gdb_test "x" "or.l\t@er3,er1" \
+       "or.l @er3,er1"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),er1" \
+       "or.l @(0xc:2,er3),er1"
+gdb_test "x" "or.l\t@er3\\+,er1" \
+       "or.l @er3+,er1"
+gdb_test "x" "or.l\t@-er3,er1" \
+       "or.l @-er3,er1"
+gdb_test "x" "or.l\t@\\+er3,er1" \
+       "or.l @+er3,er1"
+gdb_test "x" "or.l\t@er3-,er1" \
+       "or.l @er3-,er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er1\\),er1" \
+       "or.l @(0x1234:16,er1),er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er1\\),er1" \
+       "or.l @(0x12345678:32,er1),er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r2l.b\\),er1" \
+       "or.l @(0x1234:16,r2l.b),er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r2.w\\),er1" \
+       "or.l @(0x1234:16,r2.w),er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er2.l\\),er1" \
+       "or.l @(0x1234:16,er2.l),er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r2l.b\\),er1" \
+       "or.l @(0x12345678:32,r2l.b),er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r2.w\\),er1" \
+       "or.l @(0x12345678:32,r2.w),er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er2.l\\),er1" \
+       "or.l @(0x12345678:32,er2.l),er1"
+gdb_test "x" "or.l\t@0x1234(:16|),er1" \
+       "or.l @0x1234:16,er1"
+gdb_test "x" "or.l\t@0x12345678(:32|),er1" \
+       "or.l @0x12345678:32,er1"
+gdb_test "x" "or.l\t@er3,@er1" \
+       "or.l @er3,@er1"
+gdb_test "x" "or.l\t@er3,@\\(0xc(:2|),er1\\)" \
+       "or.l @er3,@(0xc:2,er1)"
+gdb_test "x" "or.l\t@er3,@-er1" \
+       "or.l @er3,@-er1"
+gdb_test "x" "or.l\t@er3,@er1\\+" \
+       "or.l @er3,@er1+"
+gdb_test "x" "or.l\t@er3,@er1-" \
+       "or.l @er3,@er1-"
+gdb_test "x" "or.l\t@er3,@\\+er1" \
+       "or.l @er3,@+er1"
+gdb_test "x" "or.l\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.l @er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@er3,@0x9abc(:16|)" \
+       "or.l @er3,@0x9abc:16"
+gdb_test "x" "or.l\t@er3,@0x9abcdef0(:32|)" \
+       "or.l @er3,@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@er1" \
+       "or.l @(0xc:2,er3),@er1"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0xc:2,er3),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@-er1" \
+       "or.l @(0xc:2,er3),@-er1"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@er1\\+" \
+       "or.l @(0xc:2,er3),@er1+"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@er1-" \
+       "or.l @(0xc:2,er3),@er1-"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\+er1" \
+       "or.l @(0xc:2,er3),@+er1"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0xc:2,er3),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0xc:2,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0xc:2,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0xc:2,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0xc:2,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@0x9abc(:16|)" \
+       "or.l @(0xc:2,er3),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0xc(:2|),er3\\),@0x9abcdef0(:32|)" \
+       "or.l @(0xc:2,er3),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@-er3,@er1" \
+       "or.l @-er3,@er1"
+gdb_test "x" "or.l\t@-er3,@\\(0xc(:2|),er1\\)" \
+       "or.l @-er3,@(0xc:2,er1)"
+gdb_test "x" "or.l\t@-er3,@-er1" \
+       "or.l @-er3,@-er1"
+gdb_test "x" "or.l\t@-er3,@er1\\+" \
+       "or.l @-er3,@er1+"
+gdb_test "x" "or.l\t@-er3,@er1-" \
+       "or.l @-er3,@er1-"
+gdb_test "x" "or.l\t@-er3,@\\+er1" \
+       "or.l @-er3,@+er1"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.l @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@-er3,@0x9abc(:16|)" \
+       "or.l @-er3,@0x9abc:16"
+gdb_test "x" "or.l\t@-er3,@0x9abcdef0(:32|)" \
+       "or.l @-er3,@0x9abcdef0:32"
+gdb_test "x" "or.l\t@er3\\+,@er1" \
+       "or.l @er3+,@er1"
+gdb_test "x" "or.l\t@er3\\+,@\\(0xc(:2|),er1\\)" \
+       "or.l @er3+,@(0xc:2,er1)"
+gdb_test "x" "or.l\t@er3\\+,@-er1" \
+       "or.l @er3+,@-er1"
+gdb_test "x" "or.l\t@er3\\+,@er1\\+" \
+       "or.l @er3+,@er1+"
+gdb_test "x" "or.l\t@er3\\+,@er1-" \
+       "or.l @er3+,@er1-"
+gdb_test "x" "or.l\t@er3\\+,@\\+er1" \
+       "or.l @er3+,@+er1"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "or.l @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@er3\\+,@0x9abc(:16|)" \
+       "or.l @er3+,@0x9abc:16"
+gdb_test "x" "or.l\t@er3\\+,@0x9abcdef0(:32|)" \
+       "or.l @er3+,@0x9abcdef0:32"
+gdb_test "x" "or.l\t@er3-,@er1" \
+       "or.l @er3-,@er1"
+gdb_test "x" "or.l\t@er3-,@\\(0xc(:2|),er1\\)" \
+       "or.l @er3-,@(0xc:2,er1)"
+gdb_test "x" "or.l\t@er3-,@-er1" \
+       "or.l @er3-,@-er1"
+gdb_test "x" "or.l\t@er3-,@er1\\+" \
+       "or.l @er3-,@er1+"
+gdb_test "x" "or.l\t@er3-,@er1-" \
+       "or.l @er3-,@er1-"
+gdb_test "x" "or.l\t@er3-,@\\+er1" \
+       "or.l @er3-,@+er1"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "or.l @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@er3-,@0x9abc(:16|)" \
+       "or.l @er3-,@0x9abc:16"
+gdb_test "x" "or.l\t@er3-,@0x9abcdef0(:32|)" \
+       "or.l @er3-,@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\+er3,@er1" \
+       "or.l @+er3,@er1"
+gdb_test "x" "or.l\t@\\+er3,@\\(0xc(:2|),er1\\)" \
+       "or.l @+er3,@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\+er3,@-er1" \
+       "or.l @+er3,@-er1"
+gdb_test "x" "or.l\t@\\+er3,@er1\\+" \
+       "or.l @+er3,@er1+"
+gdb_test "x" "or.l\t@\\+er3,@er1-" \
+       "or.l @+er3,@er1-"
+gdb_test "x" "or.l\t@\\+er3,@\\+er1" \
+       "or.l @+er3,@+er1"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "or.l @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\+er3,@0x9abc(:16|)" \
+       "or.l @+er3,@0x9abc:16"
+gdb_test "x" "or.l\t@\\+er3,@0x9abcdef0(:32|)" \
+       "or.l @+er3,@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@er1" \
+       "or.l @(0x1234:16,er3),@er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x1234:16,er3),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "or.l @(0x1234:16,er3),@-er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "or.l @(0x1234:16,er3),@er1+"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "or.l @(0x1234:16,er3),@er1-"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "or.l @(0x1234:16,er3),@+er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "or.l @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "or.l @(0x12345678:32,er3),@er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x12345678:32,er3),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "or.l @(0x12345678:32,er3),@-er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "or.l @(0x12345678:32,er3),@er1+"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "or.l @(0x12345678:32,er3),@er1-"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "or.l @(0x12345678:32,er3),@+er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "or.l @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "or.l @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "or.l @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "or.l @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "or.l @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "or.l @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "or.l @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "or.l @(0x1234:16,r3.w),@er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x1234:16,r3.w),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "or.l @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "or.l @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "or.l @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "or.l @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "or.l @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "or.l @(0x1234:16,er3.l),@er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x1234:16,er3.l),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "or.l @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "or.l @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "or.l @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "or.l @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "or.l @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "or.l @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "or.l @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "or.l @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "or.l @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "or.l @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "or.l @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "or.l @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "or.l @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "or.l @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "or.l @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "or.l @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "or.l @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "or.l @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0xc:2,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "or.l @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "or.l @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "or.l @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "or.l @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "or.l @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "or.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "or.l @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "or.l\t@0x1234(:16|),@er1" \
+       "or.l @0x1234:16,@er1"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "or.l @0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "or.l\t@0x1234(:16|),@-er1" \
+       "or.l @0x1234:16,@-er1"
+gdb_test "x" "or.l\t@0x1234(:16|),@er1\\+" \
+       "or.l @0x1234:16,@er1+"
+gdb_test "x" "or.l\t@0x1234(:16|),@er1-" \
+       "or.l @0x1234:16,@er1-"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\+er1" \
+       "or.l @0x1234:16,@+er1"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@0x1234(:16|),@0x9abc(:16|)" \
+       "or.l @0x1234:16,@0x9abc:16"
+gdb_test "x" "or.l\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "or.l @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "or.l\t@0x12345678(:32|),@er1" \
+       "or.l @0x12345678:32,@er1"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "or.l @0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@-er1" \
+       "or.l @0x12345678:32,@-er1"
+gdb_test "x" "or.l\t@0x12345678(:32|),@er1\\+" \
+       "or.l @0x12345678:32,@er1+"
+gdb_test "x" "or.l\t@0x12345678(:32|),@er1-" \
+       "or.l @0x12345678:32,@er1-"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\+er1" \
+       "or.l @0x12345678:32,@+er1"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "or.l @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "or.l @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "or.l @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "or.l @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "or.l @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "or.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "or.l @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "or.l @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "or.l\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "or.l @0x12345678:32,@0x9abc:16"
+gdb_test "x" "or.l\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "or.l @0x12345678:32,@0x9abcdef0:32"
diff --git a/gdb/testsuite/gdb.disasm/t08_or.s b/gdb/testsuite/gdb.disasm/t08_or.s
new file mode 100644 (file)
index 0000000..22d9f04
--- /dev/null
@@ -0,0 +1,972 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;log_1\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    or.b #0x12:8,r1h            ;c112\r
+    or.b #0x12:8,@er1           ;7d10c012\r
+    or.b #0x12:8,@(0x3:2,er1)     ;01776818c012\r
+    or.b #0x12:8,@er1+          ;01746c18c012\r
+    or.b #0x12:8,@-er1          ;01776c18c012\r
+    or.b #0x12:8,@+er1          ;01756c18c012\r
+    or.b #0x12:8,@er1-          ;01766c18c012\r
+    or.b #0x12:8,@(0x1234:16,er1)    ;01746e181234c012\r
+    or.b #0x12:8,@(0x12345678:32,er1)    ;78146a2812345678c012\r
+    or.b #0x12:8,@(0x1234:16,r2l.b)  ;01756e281234c012\r
+    or.b #0x12:8,@(0x1234:16,r2.w)  ;01766e281234c012\r
+    or.b #0x12:8,@(0x1234:16,er2.l)  ;01776e281234c012\r
+    or.b #0x12:8,@(0x12345678:32,r2l.b)  ;78256a2812345678c012\r
+    or.b #0x12:8,@(0x12345678:32,r2.w)  ;78266a2812345678c012\r
+    or.b #0x12:8,@(0x12345678:32,er2.l)  ;78276a2812345678c012\r
+    or.b #0x12:8,@0xffffff12:8          ;7f12c012\r
+    or.b #0x12:8,@0x1234:16         ;6a181234c012\r
+    or.b #0x12:8,@0x12345678:32         ;6a3812345678c012\r
+\r
+    or.b r3h,r1h               ;1431\r
+\r
+    or.b r3h,@er1             ;7d101430\r
+    or.b r3h,@(0x3:2,er1)       ;01793143\r
+    or.b r3h,@er1+            ;01798143\r
+    or.b r3h,@-er1            ;0179b143\r
+    or.b r3h,@+er1            ;01799143\r
+    or.b r3h,@er1-            ;0179a143\r
+    or.b r3h,@(0x1234:16,er1)      ;0179c1431234\r
+    or.b r3h,@(0x12345678:32,er1)      ;0179c94312345678\r
+    or.b r3h,@(0x1234:16,r2l.b)    ;0179d2431234\r
+    or.b r3h,@(0x1234:16,r2.w)    ;0179e2431234\r
+    or.b r3h,@(0x1234:16,er2.l)    ;0179f2431234\r
+    or.b r3h,@(0x12345678:32,r2l.b)    ;0179da4312345678\r
+    or.b r3h,@(0x12345678:32,r2.w)    ;0179ea4312345678\r
+    or.b r3h,@(0x12345678:32,er2.l)    ;0179fa4312345678\r
+    or.b r3h,@0xffffff12:8            ;7f121430\r
+    or.b r3h,@0x1234:16           ;6a1812341430\r
+    or.b r3h,@0x12345678:32            ;6a38123456781430\r
+\r
+    or.b @er3,r1h             ;7c301401\r
+    or.b @(0x3:2,er3),r1h      ;017a3341\r
+    or.b @er3+,r1h           ;017a8341\r
+    or.b @-er3,r1h           ;017ab341\r
+    or.b @+er3,r1h           ;017a9341\r
+    or.b @er3-,r1h           ;017aa341\r
+    or.b @(0x1234:16,er1),r1h      ;017ac1411234\r
+    or.b @(0x12345678:32,er1),r1h      ;017ac94112345678\r
+    or.b @(0x1234:16,r2l.b),r1h    ;017ad2411234\r
+    or.b @(0x1234:16,r2.w),r1h    ;017ae2411234\r
+    or.b @(0x1234:16,er2.l),r1h    ;017af2411234\r
+    or.b @(0x12345678:32,r2l.b),r1h    ;017ada4112345678\r
+    or.b @(0x12345678:32,r2.w),r1h    ;017aea4112345678\r
+    or.b @(0x12345678:32,er2.l),r1h    ;017afa4112345678\r
+    or.b @0xffffff12:8,r1h            ;7e121401\r
+    or.b @0x1234:16,r1h           ;6a1012341401\r
+    or.b @0x12345678:32,r1h           ;6a30123456781401\r
+\r
+    or.b @er3,@er1                                ;7c350140\r
+    or.b @er3,@(3:2,er1)                          ;7c353140\r
+    or.b @er3,@-er1                               ;7c35b140\r
+    or.b @er3,@er1+                               ;7c358140\r
+    or.b @er3,@er1-                               ;7c35a140\r
+    or.b @er3,@+er1                               ;7c359140\r
+    or.b @er3,@(0xffff9abc:16,er1)                ;7c35c1409abc\r
+    or.b @er3,@(0x9abcdef0:32,er1)                ;7c35c9409abcdef0\r
+    or.b @er3,@(0xffff9abc:16,r2l.b)              ;7c35d2409abc\r
+    or.b @er3,@(0xffff9abc:16,r2.w)              ;7c35e2409abc\r
+    or.b @er3,@(0xffff9abc:16,er2.l)              ;7c35f2409abc\r
+    or.b @er3,@(0x9abcdef0:32,r2l.b)              ;7c35da409abcdef0\r
+    or.b @er3,@(0x9abcdef0:32,r2.w)              ;7c35ea409abcdef0\r
+    or.b @er3,@(0x9abcdef0:32,er2.l)              ;7c35fa409abcdef0\r
+    or.b @er3,@0xffff9abc:16                      ;7c3540409abc\r
+    or.b @er3,@0x9abcdef0:32                      ;7c3548409abcdef0\r
+\r
+    or.b @-er3,@er1                               ;01776c3c0140\r
+    or.b @-er3,@(3:2,er1)                         ;01776c3c3140\r
+    or.b @-er3,@-er1                              ;01776c3cb140\r
+    or.b @-er3,@er1+                              ;01776c3c8140\r
+    or.b @-er3,@er1-                              ;01776c3ca140\r
+    or.b @-er3,@+er1                              ;01776c3c9140\r
+    or.b @-er3,@(0xffff9abc:16,er1)               ;01776c3cc1409abc\r
+    or.b @-er3,@(0x9abcdef0:32,er1)               ;01776c3cc9409abcdef0\r
+    or.b @-er3,@(0xffff9abc:16,r2l.b)             ;01776c3cd2409abc\r
+    or.b @-er3,@(0xffff9abc:16,r2.w)             ;01776c3ce2409abc\r
+    or.b @-er3,@(0xffff9abc:16,er2.l)             ;01776c3cf2409abc\r
+    or.b @-er3,@(0x9abcdef0:32,r2l.b)             ;01776c3cda409abcdef0\r
+    or.b @-er3,@(0x9abcdef0:32,r2.w)             ;01776c3cea409abcdef0\r
+    or.b @-er3,@(0x9abcdef0:32,er2.l)             ;01776c3cfa409abcdef0\r
+    or.b @-er3,@0xffff9abc:16                     ;01776c3c40409abc\r
+    or.b @-er3,@0x9abcdef0:32                     ;01776c3c48409abcdef0\r
+\r
+    or.b @er3+,@er1                               ;01746c3c0140\r
+    or.b @er3+,@(3:2,er1)                         ;01746c3c3140\r
+    or.b @er3+,@-er1                              ;01746c3cb140\r
+    or.b @er3+,@er1+                              ;01746c3c8140\r
+    or.b @er3+,@er1-                              ;01746c3ca140\r
+    or.b @er3+,@+er1                              ;01746c3c9140\r
+    or.b @er3+,@(0xffff9abc:16,er1)               ;01746c3cc1409abc\r
+    or.b @er3+,@(0x9abcdef0:32,er1)               ;01746c3cc9409abcdef0\r
+    or.b @er3+,@(0xffff9abc:16,r2l.b)             ;01746c3cd2409abc\r
+    or.b @er3+,@(0xffff9abc:16,r2.w)             ;01746c3ce2409abc\r
+    or.b @er3+,@(0xffff9abc:16,er2.l)             ;01746c3cf2409abc\r
+    or.b @er3+,@(0x9abcdef0:32,r2l.b)             ;01746c3cda409abcdef0\r
+    or.b @er3+,@(0x9abcdef0:32,r2.w)             ;01746c3cea409abcdef0\r
+    or.b @er3+,@(0x9abcdef0:32,er2.l)             ;01746c3cfa409abcdef0\r
+    or.b @er3+,@0xffff9abc:16                     ;01746c3c40409abc\r
+    or.b @er3+,@0x9abcdef0:32                     ;01746c3c48409abcdef0\r
+\r
+    or.b @er3-,@er1                               ;01766c3c0140\r
+    or.b @er3-,@(3:2,er1)                         ;01766c3c3140\r
+    or.b @er3-,@-er1                              ;01766c3cb140\r
+    or.b @er3-,@er1+                              ;01766c3c8140\r
+    or.b @er3-,@er1-                              ;01766c3ca140\r
+    or.b @er3-,@+er1                              ;01766c3c9140\r
+    or.b @er3-,@(0xffff9abc:16,er1)               ;01766c3cc1409abc\r
+    or.b @er3-,@(0x9abcdef0:32,er1)               ;01766c3cc9409abcdef0\r
+    or.b @er3-,@(0xffff9abc:16,r2l.b)             ;01766c3cd2409abc\r
+    or.b @er3-,@(0xffff9abc:16,r2.w)             ;01766c3ce2409abc\r
+    or.b @er3-,@(0xffff9abc:16,er2.l)             ;01766c3cf2409abc\r
+    or.b @er3-,@(0x9abcdef0:32,r2l.b)             ;01766c3cda409abcdef0\r
+    or.b @er3-,@(0x9abcdef0:32,r2.w)             ;01766c3cea409abcdef0\r
+    or.b @er3-,@(0x9abcdef0:32,er2.l)             ;01766c3cfa409abcdef0\r
+    or.b @er3-,@0xffff9abc:16                     ;01766c3c40409abc\r
+    or.b @er3-,@0x9abcdef0:32                     ;01766c3c48409abcdef0\r
+\r
+    or.b @+er3,@er1                               ;01756c3c0140\r
+    or.b @+er3,@(3:2,er1)                         ;01756c3c3140\r
+    or.b @+er3,@-er1                              ;01756c3cb140\r
+    or.b @+er3,@er1+                              ;01756c3c8140\r
+    or.b @+er3,@er1-                              ;01756c3ca140\r
+    or.b @+er3,@+er1                              ;01756c3c9140\r
+    or.b @+er3,@(0xffff9abc:16,er1)               ;01756c3cc1409abc\r
+    or.b @+er3,@(0x9abcdef0:32,er1)               ;01756c3cc9409abcdef0\r
+    or.b @+er3,@(0xffff9abc:16,r2l.b)             ;01756c3cd2409abc\r
+    or.b @+er3,@(0xffff9abc:16,r2.w)             ;01756c3ce2409abc\r
+    or.b @+er3,@(0xffff9abc:16,er2.l)             ;01756c3cf2409abc\r
+    or.b @+er3,@(0x9abcdef0:32,r2l.b)             ;01756c3cda409abcdef0\r
+    or.b @+er3,@(0x9abcdef0:32,r2.w)             ;01756c3cea409abcdef0\r
+    or.b @+er3,@(0x9abcdef0:32,er2.l)             ;01756c3cfa409abcdef0\r
+    or.b @+er3,@0xffff9abc:16                     ;01756c3c40409abc\r
+    or.b @+er3,@0x9abcdef0:32                     ;01756c3c48409abcdef0\r
+\r
+    or.b @(0x1234:16,er3),@er1                         ;01746e3c12340140\r
+    or.b @(0x1234:16,er3),@(3:2,er1)                   ;01746e3c12343140\r
+    or.b @(0x1234:16,er3),@-er1                        ;01746e3c1234b140\r
+    or.b @(0x1234:16,er3),@er1+                        ;01746e3c12348140\r
+    or.b @(0x1234:16,er3),@er1-                        ;01746e3c1234a140\r
+    or.b @(0x1234:16,er3),@+er1                        ;01746e3c12349140\r
+    or.b @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01746e3c1234c1409abc\r
+    or.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01746e3c1234c9409abcdef0\r
+    or.b @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01746e3c1234d2409abc\r
+    or.b @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01746e3c1234e2409abc\r
+    or.b @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01746e3c1234f2409abc\r
+    or.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01746e3c1234da409abcdef0\r
+    or.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01746e3c1234ea409abcdef0\r
+    or.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01746e3c1234fa409abcdef0\r
+    or.b @(0x1234:16,er3),@0xffff9abc:16               ;01746e3c123440409abc\r
+    or.b @(0x1234:16,er3),@0x9abcdef0:32               ;01746e3c123448409abcdef0\r
+\r
+    or.b @(0x12345678:32,er3),@er1                         ;78346a2c123456780140\r
+    or.b @(0x12345678:32,er3),@(3:2,er1)                   ;78346a2c123456783140\r
+    or.b @(0x12345678:32,er3),@-er1                        ;78346a2c12345678b140\r
+    or.b @(0x12345678:32,er3),@er1+                        ;78346a2c123456788140\r
+    or.b @(0x12345678:32,er3),@er1-                        ;78346a2c12345678a140\r
+    or.b @(0x12345678:32,er3),@+er1                        ;78346a2c123456789140\r
+    or.b @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346a2c12345678c1409abc\r
+    or.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346a2c12345678c9409abcdef0\r
+    or.b @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346a2c12345678d2409abc\r
+    or.b @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346a2c12345678e2409abc\r
+    or.b @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346a2c12345678f2409abc\r
+    or.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346a2c12345678da409abcdef0\r
+    or.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346a2c12345678ea409abcdef0\r
+    or.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346a2c12345678fa409abcdef0\r
+    or.b @(0x12345678:32,er3),@0xffff9abc:16               ;78346a2c1234567840409abc\r
+    or.b @(0x12345678:32,er3),@0x9abcdef0:32               ;78346a2c1234567848409abcdef0\r
+\r
+    or.b @(0x1234:16,r3l.b),@er1                       ;01756e3c12340140\r
+    or.b @(0x1234:16,r3l.b),@(3:2,er1)                 ;01756e3c12343140\r
+    or.b @(0x1234:16,r3l.b),@-er1                      ;01756e3c1234b140\r
+    or.b @(0x1234:16,r3l.b),@er1+                      ;01756e3c12348140\r
+    or.b @(0x1234:16,r3l.b),@er1-                      ;01756e3c1234a140\r
+    or.b @(0x1234:16,r3l.b),@+er1                      ;01756e3c12349140\r
+    or.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01756e3c1234c1409abc\r
+    or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01756e3c1234c9409abcdef0\r
+    or.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01756e3c1234d2409abc\r
+    or.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01756e3c1234e2409abc\r
+    or.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01756e3c1234f2409abc\r
+    or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01756e3c1234da409abcdef0\r
+    or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01756e3c1234ea409abcdef0\r
+    or.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01756e3c1234fa409abcdef0\r
+    or.b @(0x1234:16,r3l.b),@0xffff9abc:16             ;01756e3c123440409abc\r
+    or.b @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01756e3c123448409abcdef0\r
+\r
+    or.b @(0x1234:16,r3.w),@er1                       ;01766e3c12340140\r
+    or.b @(0x1234:16,r3.w),@(3:2,er1)                 ;01766e3c12343140\r
+    or.b @(0x1234:16,r3.w),@-er1                      ;01766e3c1234b140\r
+    or.b @(0x1234:16,r3.w),@er1+                      ;01766e3c12348140\r
+    or.b @(0x1234:16,r3.w),@er1-                      ;01766e3c1234a140\r
+    or.b @(0x1234:16,r3.w),@+er1                      ;01766e3c12349140\r
+    or.b @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01766e3c1234c1409abc\r
+    or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01766e3c1234c9409abcdef0\r
+    or.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01766e3c1234d2409abc\r
+    or.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01766e3c1234e2409abc\r
+    or.b @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01766e3c1234f2409abc\r
+    or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01766e3c1234da409abcdef0\r
+    or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01766e3c1234ea409abcdef0\r
+    or.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01766e3c1234fa409abcdef0\r
+    or.b @(0x1234:16,r3.w),@0xffff9abc:16             ;01766e3c123440409abc\r
+    or.b @(0x1234:16,r3.w),@0x9abcdef0:32             ;01766e3c123448409abcdef0\r
+\r
+    or.b @(0x1234:16,er3.l),@er1                       ;01776e3c12340140\r
+    or.b @(0x1234:16,er3.l),@(3:2,er1)                 ;01776e3c12343140\r
+    or.b @(0x1234:16,er3.l),@-er1                      ;01776e3c1234b140\r
+    or.b @(0x1234:16,er3.l),@er1+                      ;01776e3c12348140\r
+    or.b @(0x1234:16,er3.l),@er1-                      ;01776e3c1234a140\r
+    or.b @(0x1234:16,er3.l),@+er1                      ;01776e3c12349140\r
+    or.b @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01776e3c1234c1409abc\r
+    or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01776e3c1234c9409abcdef0\r
+    or.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01776e3c1234d2409abc\r
+    or.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01776e3c1234e2409abc\r
+    or.b @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01776e3c1234f2409abc\r
+    or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01776e3c1234da409abcdef0\r
+    or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01776e3c1234ea409abcdef0\r
+    or.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01776e3c1234fa409abcdef0\r
+    or.b @(0x1234:16,er3.l),@0xffff9abc:16             ;01776e3c123440409abc\r
+    or.b @(0x1234:16,er3.l),@0x9abcdef0:32             ;01776e3c123448409abcdef0\r
+\r
+    or.b @(0x12345678:32,r3l.b),@er1                       ;78356a2c123456780140\r
+    or.b @(0x12345678:32,r3l.b),@(3:2,er1)                 ;78356a2c123456783140\r
+    or.b @(0x12345678:32,r3l.b),@-er1                      ;78356a2c12345678b140\r
+    or.b @(0x12345678:32,r3l.b),@er1+                      ;78356a2c123456788140\r
+    or.b @(0x12345678:32,r3l.b),@er1-                      ;78356a2c12345678a140\r
+    or.b @(0x12345678:32,r3l.b),@+er1                      ;78356a2c123456789140\r
+    or.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356a2c12345678c1409abc\r
+    or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356a2c12345678c9409abcdef0\r
+    or.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356a2c12345678d2409abc\r
+    or.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356a2c12345678e2409abc\r
+    or.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356a2c12345678f2409abc\r
+    or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356a2c12345678da409abcdef0\r
+    or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356a2c12345678ea409abcdef0\r
+    or.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356a2c12345678fa409abcdef0\r
+    or.b @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356a2c1234567840409abc\r
+    or.b @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356a2c1234567848409abcdef0\r
+\r
+    or.b @(0x12345678:32,r3.w),@er1                       ;78366a2c123456780140\r
+    or.b @(0x12345678:32,r3.w),@(3:2,er1)                 ;78366a2c123456783140\r
+    or.b @(0x12345678:32,r3.w),@-er1                      ;78366a2c12345678b140\r
+    or.b @(0x12345678:32,r3.w),@er1+                      ;78366a2c123456788140\r
+    or.b @(0x12345678:32,r3.w),@er1-                      ;78366a2c12345678a140\r
+    or.b @(0x12345678:32,r3.w),@+er1                      ;78366a2c123456789140\r
+    or.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366a2c12345678c1409abc\r
+    or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366a2c12345678c9409abcdef0\r
+    or.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366a2c12345678d2409abc\r
+    or.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366a2c12345678e2409abc\r
+    or.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366a2c12345678f2409abc\r
+    or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366a2c12345678da409abcdef0\r
+    or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366a2c12345678ea409abcdef0\r
+    or.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366a2c12345678fa409abcdef0\r
+    or.b @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366a2c1234567840409abc\r
+    or.b @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366a2c1234567848409abcdef0\r
+\r
+    or.b @(0x12345678:32,er3.l),@er1                       ;78376a2c123456780140\r
+    or.b @(0x12345678:32,er3.l),@(3:2,er1)                 ;78376a2c123456783140\r
+    or.b @(0x12345678:32,er3.l),@-er1                      ;78376a2c12345678b140\r
+    or.b @(0x12345678:32,er3.l),@er1+                      ;78376a2c123456788140\r
+    or.b @(0x12345678:32,er3.l),@er1-                      ;78376a2c12345678a140\r
+    or.b @(0x12345678:32,er3.l),@+er1                      ;78376a2c123456789140\r
+    or.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376a2c12345678c1409abc\r
+    or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376a2c12345678c9409abcdef0\r
+    or.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376a2c12345678d2409abc\r
+    or.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376a2c12345678e2409abc\r
+    or.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376a2c12345678f2409abc\r
+    or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376a2c12345678da409abcdef0\r
+    or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376a2c12345678ea409abcdef0\r
+    or.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376a2c12345678fa409abcdef0\r
+    or.b @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376a2c1234567840409abc\r
+    or.b @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376a2c1234567848409abcdef0\r
+\r
+    or.b @0x1234:16,@er1                              ;6a1512340140\r
+    or.b @0x1234:16,@(3:2,er1)                        ;6a1512343140\r
+    or.b @0x1234:16,@-er1                             ;6a151234b140\r
+    or.b @0x1234:16,@er1+                             ;6a1512348140\r
+    or.b @0x1234:16,@er1-                             ;6a151234a140\r
+    or.b @0x1234:16,@+er1                             ;6a1512349140\r
+    or.b @0x1234:16,@(0xffff9abc:16,er1)              ;6a151234c1409abc\r
+    or.b @0x1234:16,@(0x9abcdef0:32,er1)              ;6a151234c9409abcdef0\r
+    or.b @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6a151234d2409abc\r
+    or.b @0x1234:16,@(0xffff9abc:16,r2.w)            ;6a151234e2409abc\r
+    or.b @0x1234:16,@(0xffff9abc:16,er2.l)            ;6a151234f2409abc\r
+    or.b @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6a151234da409abcdef0\r
+    or.b @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6a151234ea409abcdef0\r
+    or.b @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6a151234fa409abcdef0\r
+    or.b @0x1234:16,@0xffff9abc:16                    ;6a15123440409abc\r
+    or.b @0x1234:16,@0x9abcdef0:32                    ;6a15123448409abcdef0\r
+\r
+    or.b @0x12345678:32,@er1                              ;6a35123456780140\r
+    or.b @0x12345678:32,@(3:2,er1)                        ;6a35123456783140\r
+    or.b @0x12345678:32,@-er1                             ;6a3512345678b140\r
+    or.b @0x12345678:32,@er1+                             ;6a35123456788140\r
+    or.b @0x12345678:32,@er1-                             ;6a3512345678a140\r
+    or.b @0x12345678:32,@+er1                             ;6a35123456789140\r
+    or.b @0x12345678:32,@(0xffff9abc:16,er1)              ;6a3512345678c1409abc\r
+    or.b @0x12345678:32,@(0x9abcdef0:32,er1)              ;6a3512345678c9409abcdef0\r
+    or.b @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6a3512345678d2409abc\r
+    or.b @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6a3512345678e2409abc\r
+    or.b @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6a3512345678f2409abc\r
+    or.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6a3512345678da409abcdef0\r
+    or.b @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6a3512345678ea409abcdef0\r
+    or.b @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6a3512345678fa409abcdef0\r
+    or.b @0x12345678:32,@0xffff9abc:16                    ;6a351234567840409abc\r
+    or.b @0x12345678:32,@0x9abcdef0:32                    ;6a351234567848409abcdef0\r
+\r
+    or.w #0x1234:16,r1            ;79411234\r
+    or.w #0x1234:16,@er1           ;015e01401234\r
+    or.w #0x1234:16,@(0x6:2,er1) ;015e31401234\r
+    or.w #0x1234:16,@er1+          ;015e81401234\r
+    or.w #0x1234:16,@-er1          ;015eb1401234\r
+    or.w #0x1234:16,@+er1          ;015e91401234\r
+    or.w #0x1234:16,@er1-          ;015ea1401234\r
+    or.w #0x1234:16,@(0xffff9abc:16,er1)    ;015ec1409abc1234\r
+    or.w #0x1234:16,@(0x9abcdef0:32,er1)    ;015ec9409abcdef01234\r
+    or.w #0x1234:16,@(0xffff9abc:16,r2l.b)  ;015ed2409abc1234\r
+    or.w #0x1234:16,@(0xffff9abc:16,r2.w)  ;015ee2409abc1234\r
+    or.w #0x1234:16,@(0xffff9abc:16,er2.l)  ;015ef2409abc1234\r
+    or.w #0x1234:16,@(0x9abcdef0:32,r2l.b)  ;015eda409abcdef01234\r
+    or.w #0x1234:16,@(0x9abcdef0:32,r2.w)  ;015eea409abcdef01234\r
+    or.w #0x1234:16,@(0x9abcdef0:32,er2.l)  ;015efa409abcdef01234\r
+    or.w #0x1234:16,@0xffff9abc:16          ;015e40409abc1234\r
+    or.w #0x1234:16,@0x9abcdef0:32          ;015e48409abcdef01234\r
+\r
+    or.w r3,r1               ;6431\r
+\r
+    or.w r3,@er1             ;7d906430\r
+    or.w r3,@(0x6:2,er1)    ;01593143\r
+    or.w r3,@er1+            ;01598143\r
+    or.w r3,@-er1            ;0159b143\r
+    or.w r3,@+er1            ;01599143\r
+    or.w r3,@er1-            ;0159a143\r
+    or.w r3,@(0x1234:16,er1)      ;0159c1431234\r
+    or.w r3,@(0x12345678:32,er1)      ;0159c94312345678\r
+    or.w r3,@(0x1234:16,r2l.b)    ;0159d2431234\r
+    or.w r3,@(0x1234:16,r2.w)    ;0159e2431234\r
+    or.w r3,@(0x1234:16,er2.l)    ;0159f2431234\r
+    or.w r3,@(0x12345678:32,r2l.b)    ;0159da4312345678\r
+    or.w r3,@(0x12345678:32,r2.w)    ;0159ea4312345678\r
+    or.w r3,@(0x12345678:32,er2.l)    ;0159fa4312345678\r
+    or.w r3,@0x1234:16           ;6b1812346430\r
+    or.w r3,@0x12345678:32           ;6b38123456786430\r
+\r
+    or.w @er3,r1             ;7cb06401\r
+    or.w @(0x6:2,er3),r1   ;015a3341\r
+    or.w @er3+,r1           ;015a8341\r
+    or.w @-er3,r1           ;015ab341\r
+    or.w @+er3,r1           ;015a9341\r
+    or.w @er3-,r1           ;015aa341\r
+    or.w @(0x1234:16,er1),r1      ;015ac1411234\r
+    or.w @(0x12345678:32,er1),r1      ;015ac94112345678\r
+    or.w @(0x1234:16,r2l.b),r1    ;015ad2411234\r
+    or.w @(0x1234:16,r2.w),r1    ;015ae2411234\r
+    or.w @(0x1234:16,er2.l),r1    ;015af2411234\r
+    or.w @(0x12345678:32,r2l.b),r1    ;015ada4112345678\r
+    or.w @(0x12345678:32,r2.w),r1    ;015aea4112345678\r
+    or.w @(0x12345678:32,er2.l),r1    ;015afa4112345678\r
+    or.w @0x1234:16,r1           ;6b1012346401\r
+    or.w @0x12345678:32,r1           ;6b30123456786401\r
+\r
+    or.w @er3,@er1                                ;7cb50140\r
+    or.w @er3,@(6:2,er1)                          ;7cb53140\r
+    or.w @er3,@-er1                               ;7cb5b140\r
+    or.w @er3,@er1+                               ;7cb58140\r
+    or.w @er3,@er1-                               ;7cb5a140\r
+    or.w @er3,@+er1                               ;7cb59140\r
+    or.w @er3,@(0xffff9abc:16,er1)                ;7cb5c1409abc\r
+    or.w @er3,@(0x9abcdef0:32,er1)                ;7cb5c9409abcdef0\r
+    or.w @er3,@(0xffff9abc:16,r2l.b)              ;7cb5d2409abc\r
+    or.w @er3,@(0xffff9abc:16,r2.w)              ;7cb5e2409abc\r
+    or.w @er3,@(0xffff9abc:16,er2.l)              ;7cb5f2409abc\r
+    or.w @er3,@(0x9abcdef0:32,r2l.b)              ;7cb5da409abcdef0\r
+    or.w @er3,@(0x9abcdef0:32,r2.w)              ;7cb5ea409abcdef0\r
+    or.w @er3,@(0x9abcdef0:32,er2.l)              ;7cb5fa409abcdef0\r
+    or.w @er3,@0xffff9abc:16                      ;7cb540409abc\r
+    or.w @er3,@0x9abcdef0:32                      ;7cb548409abcdef0\r
+\r
+    or.w @-er3,@er1                               ;01576d3c0140\r
+    or.w @-er3,@(6:2,er1)                         ;01576d3c3140\r
+    or.w @-er3,@-er1                              ;01576d3cb140\r
+    or.w @-er3,@er1+                              ;01576d3c8140\r
+    or.w @-er3,@er1-                              ;01576d3ca140\r
+    or.w @-er3,@+er1                              ;01576d3c9140\r
+    or.w @-er3,@(0xffff9abc:16,er1)               ;01576d3cc1409abc\r
+    or.w @-er3,@(0x9abcdef0:32,er1)               ;01576d3cc9409abcdef0\r
+    or.w @-er3,@(0xffff9abc:16,r2l.b)             ;01576d3cd2409abc\r
+    or.w @-er3,@(0xffff9abc:16,r2.w)             ;01576d3ce2409abc\r
+    or.w @-er3,@(0xffff9abc:16,er2.l)             ;01576d3cf2409abc\r
+    or.w @-er3,@(0x9abcdef0:32,r2l.b)             ;01576d3cda409abcdef0\r
+    or.w @-er3,@(0x9abcdef0:32,r2.w)             ;01576d3cea409abcdef0\r
+    or.w @-er3,@(0x9abcdef0:32,er2.l)             ;01576d3cfa409abcdef0\r
+    or.w @-er3,@0xffff9abc:16                     ;01576d3c40409abc\r
+    or.w @-er3,@0x9abcdef0:32                     ;01576d3c48409abcdef0\r
+\r
+    or.w @er3+,@er1                               ;01546d3c0140\r
+    or.w @er3+,@(6:2,er1)                         ;01546d3c3140\r
+    or.w @er3+,@-er1                              ;01546d3cb140\r
+    or.w @er3+,@er1+                              ;01546d3c8140\r
+    or.w @er3+,@er1-                              ;01546d3ca140\r
+    or.w @er3+,@+er1                              ;01546d3c9140\r
+    or.w @er3+,@(0xffff9abc:16,er1)               ;01546d3cc1409abc\r
+    or.w @er3+,@(0x9abcdef0:32,er1)               ;01546d3cc9409abcdef0\r
+    or.w @er3+,@(0xffff9abc:16,r2l.b)             ;01546d3cd2409abc\r
+    or.w @er3+,@(0xffff9abc:16,r2.w)             ;01546d3ce2409abc\r
+    or.w @er3+,@(0xffff9abc:16,er2.l)             ;01546d3cf2409abc\r
+    or.w @er3+,@(0x9abcdef0:32,r2l.b)             ;01546d3cda409abcdef0\r
+    or.w @er3+,@(0x9abcdef0:32,r2.w)             ;01546d3cea409abcdef0\r
+    or.w @er3+,@(0x9abcdef0:32,er2.l)             ;01546d3cfa409abcdef0\r
+    or.w @er3+,@0xffff9abc:16                     ;01546d3c40409abc\r
+    or.w @er3+,@0x9abcdef0:32                     ;01546d3c48409abcdef0\r
+\r
+    or.w @er3-,@er1                               ;01566d3c0140\r
+    or.w @er3-,@(6:2,er1)                         ;01566d3c3140\r
+    or.w @er3-,@-er1                              ;01566d3cb140\r
+    or.w @er3-,@er1+                              ;01566d3c8140\r
+    or.w @er3-,@er1-                              ;01566d3ca140\r
+    or.w @er3-,@+er1                              ;01566d3c9140\r
+    or.w @er3-,@(0xffff9abc:16,er1)               ;01566d3cc1409abc\r
+    or.w @er3-,@(0x9abcdef0:32,er1)               ;01566d3cc9409abcdef0\r
+    or.w @er3-,@(0xffff9abc:16,r2l.b)             ;01566d3cd2409abc\r
+    or.w @er3-,@(0xffff9abc:16,r2.w)             ;01566d3ce2409abc\r
+    or.w @er3-,@(0xffff9abc:16,er2.l)             ;01566d3cf2409abc\r
+    or.w @er3-,@(0x9abcdef0:32,r2l.b)             ;01566d3cda409abcdef0\r
+    or.w @er3-,@(0x9abcdef0:32,r2.w)             ;01566d3cea409abcdef0\r
+    or.w @er3-,@(0x9abcdef0:32,er2.l)             ;01566d3cfa409abcdef0\r
+    or.w @er3-,@0xffff9abc:16                     ;01566d3c40409abc\r
+    or.w @er3-,@0x9abcdef0:32                     ;01566d3c48409abcdef0\r
+\r
+    or.w @+er3,@er1                               ;01556d3c0140\r
+    or.w @+er3,@(6:2,er1)                         ;01556d3c3140\r
+    or.w @+er3,@-er1                              ;01556d3cb140\r
+    or.w @+er3,@er1+                              ;01556d3c8140\r
+    or.w @+er3,@er1-                              ;01556d3ca140\r
+    or.w @+er3,@+er1                              ;01556d3c9140\r
+    or.w @+er3,@(0xffff9abc:16,er1)               ;01556d3cc1409abc\r
+    or.w @+er3,@(0x9abcdef0:32,er1)               ;01556d3cc9409abcdef0\r
+    or.w @+er3,@(0xffff9abc:16,r2l.b)             ;01556d3cd2409abc\r
+    or.w @+er3,@(0xffff9abc:16,r2.w)             ;01556d3ce2409abc\r
+    or.w @+er3,@(0xffff9abc:16,er2.l)             ;01556d3cf2409abc\r
+    or.w @+er3,@(0x9abcdef0:32,r2l.b)             ;01556d3cda409abcdef0\r
+    or.w @+er3,@(0x9abcdef0:32,r2.w)             ;01556d3cea409abcdef0\r
+    or.w @+er3,@(0x9abcdef0:32,er2.l)             ;01556d3cfa409abcdef0\r
+    or.w @+er3,@0xffff9abc:16                     ;01556d3c40409abc\r
+    or.w @+er3,@0x9abcdef0:32                     ;01556d3c48409abcdef0\r
+\r
+    or.w @(0x1234:16,er3),@er1                         ;01546f3c12340140\r
+    or.w @(0x1234:16,er3),@(6:2,er1)                   ;01546f3c12343140\r
+    or.w @(0x1234:16,er3),@-er1                        ;01546f3c1234b140\r
+    or.w @(0x1234:16,er3),@er1+                        ;01546f3c12348140\r
+    or.w @(0x1234:16,er3),@er1-                        ;01546f3c1234a140\r
+    or.w @(0x1234:16,er3),@+er1                        ;01546f3c12349140\r
+    or.w @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01546f3c1234c1409abc\r
+    or.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01546f3c1234c9409abcdef0\r
+    or.w @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01546f3c1234d2409abc\r
+    or.w @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01546f3c1234e2409abc\r
+    or.w @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01546f3c1234f2409abc\r
+    or.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01546f3c1234da409abcdef0\r
+    or.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01546f3c1234ea409abcdef0\r
+    or.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01546f3c1234fa409abcdef0\r
+    or.w @(0x1234:16,er3),@0xffff9abc:16               ;01546f3c123440409abc\r
+    or.w @(0x1234:16,er3),@0x9abcdef0:32               ;01546f3c123448409abcdef0\r
+\r
+    or.w @(0x12345678:32,er3),@er1                         ;78346b2c123456780140\r
+    or.w @(0x12345678:32,er3),@(6:2,er1)                   ;78346b2c123456783140\r
+    or.w @(0x12345678:32,er3),@-er1                        ;78346b2c12345678b140\r
+    or.w @(0x12345678:32,er3),@er1+                        ;78346b2c123456788140\r
+    or.w @(0x12345678:32,er3),@er1-                        ;78346b2c12345678a140\r
+    or.w @(0x12345678:32,er3),@+er1                        ;78346b2c123456789140\r
+    or.w @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346b2c12345678c1409abc\r
+    or.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346b2c12345678c9409abcdef0\r
+    or.w @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346b2c12345678d2409abc\r
+    or.w @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346b2c12345678e2409abc\r
+    or.w @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346b2c12345678f2409abc\r
+    or.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346b2c12345678da409abcdef0\r
+    or.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346b2c12345678ea409abcdef0\r
+    or.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346b2c12345678fa409abcdef0\r
+    or.w @(0x12345678:32,er3),@0xffff9abc:16               ;78346b2c1234567840409abc\r
+    or.w @(0x12345678:32,er3),@0x9abcdef0:32               ;78346b2c1234567848409abcdef0\r
+\r
+    or.w @(0x1234:16,r3l.b),@er1                       ;01556f3c12340140\r
+    or.w @(0x1234:16,r3l.b),@(6:2,er1)                 ;01556f3c12343140\r
+    or.w @(0x1234:16,r3l.b),@-er1                      ;01556f3c1234b140\r
+    or.w @(0x1234:16,r3l.b),@er1+                      ;01556f3c12348140\r
+    or.w @(0x1234:16,r3l.b),@er1-                      ;01556f3c1234a140\r
+    or.w @(0x1234:16,r3l.b),@+er1                      ;01556f3c12349140\r
+    or.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01556f3c1234c1409abc\r
+    or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01556f3c1234c9409abcdef0\r
+    or.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01556f3c1234d2409abc\r
+    or.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01556f3c1234e2409abc\r
+    or.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01556f3c1234f2409abc\r
+    or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01556f3c1234da409abcdef0\r
+    or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01556f3c1234ea409abcdef0\r
+    or.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01556f3c1234fa409abcdef0\r
+    or.w @(0x1234:16,r3l.b),@0xffff9abc:16             ;01556f3c123440409abc\r
+    or.w @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01556f3c123448409abcdef0\r
+\r
+    or.w @(0x1234:16,r3.w),@er1                       ;01566f3c12340140\r
+    or.w @(0x1234:16,r3.w),@(6:2,er1)                 ;01566f3c12343140\r
+    or.w @(0x1234:16,r3.w),@-er1                      ;01566f3c1234b140\r
+    or.w @(0x1234:16,r3.w),@er1+                      ;01566f3c12348140\r
+    or.w @(0x1234:16,r3.w),@er1-                      ;01566f3c1234a140\r
+    or.w @(0x1234:16,r3.w),@+er1                      ;01566f3c12349140\r
+    or.w @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01566f3c1234c1409abc\r
+    or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01566f3c1234c9409abcdef0\r
+    or.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01566f3c1234d2409abc\r
+    or.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01566f3c1234e2409abc\r
+    or.w @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01566f3c1234f2409abc\r
+    or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01566f3c1234da409abcdef0\r
+    or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01566f3c1234ea409abcdef0\r
+    or.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01566f3c1234fa409abcdef0\r
+    or.w @(0x1234:16,r3.w),@0xffff9abc:16             ;01566f3c123440409abc\r
+    or.w @(0x1234:16,r3.w),@0x9abcdef0:32             ;01566f3c123448409abcdef0\r
+\r
+    or.w @(0x1234:16,er3.l),@er1                       ;01576f3c12340140\r
+    or.w @(0x1234:16,er3.l),@(6:2,er1)                 ;01576f3c12343140\r
+    or.w @(0x1234:16,er3.l),@-er1                      ;01576f3c1234b140\r
+    or.w @(0x1234:16,er3.l),@er1+                      ;01576f3c12348140\r
+    or.w @(0x1234:16,er3.l),@er1-                      ;01576f3c1234a140\r
+    or.w @(0x1234:16,er3.l),@+er1                      ;01576f3c12349140\r
+    or.w @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01576f3c1234c1409abc\r
+    or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01576f3c1234c9409abcdef0\r
+    or.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01576f3c1234d2409abc\r
+    or.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01576f3c1234e2409abc\r
+    or.w @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01576f3c1234f2409abc\r
+    or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01576f3c1234da409abcdef0\r
+    or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01576f3c1234ea409abcdef0\r
+    or.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01576f3c1234fa409abcdef0\r
+    or.w @(0x1234:16,er3.l),@0xffff9abc:16             ;01576f3c123440409abc\r
+    or.w @(0x1234:16,er3.l),@0x9abcdef0:32             ;01576f3c123448409abcdef0\r
+\r
+    or.w @(0x12345678:32,r3l.b),@er1                       ;78356b2c123456780140\r
+    or.w @(0x12345678:32,r3l.b),@(6:2,er1)                 ;78356b2c123456783140\r
+    or.w @(0x12345678:32,r3l.b),@-er1                      ;78356b2c12345678b140\r
+    or.w @(0x12345678:32,r3l.b),@er1+                      ;78356b2c123456788140\r
+    or.w @(0x12345678:32,r3l.b),@er1-                      ;78356b2c12345678a140\r
+    or.w @(0x12345678:32,r3l.b),@+er1                      ;78356b2c123456789140\r
+    or.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356b2c12345678c1409abc\r
+    or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356b2c12345678c9409abcdef0\r
+    or.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356b2c12345678d2409abc\r
+    or.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356b2c12345678e2409abc\r
+    or.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356b2c12345678f2409abc\r
+    or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356b2c12345678da409abcdef0\r
+    or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356b2c12345678ea409abcdef0\r
+    or.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356b2c12345678fa409abcdef0\r
+    or.w @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356b2c1234567840409abc\r
+    or.w @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356b2c1234567848409abcdef0\r
+\r
+    or.w @(0x12345678:32,r3.w),@er1                       ;78366b2c123456780140\r
+    or.w @(0x12345678:32,r3.w),@(6:2,er1)                 ;78366b2c123456783140\r
+    or.w @(0x12345678:32,r3.w),@-er1                      ;78366b2c12345678b140\r
+    or.w @(0x12345678:32,r3.w),@er1+                      ;78366b2c123456788140\r
+    or.w @(0x12345678:32,r3.w),@er1-                      ;78366b2c12345678a140\r
+    or.w @(0x12345678:32,r3.w),@+er1                      ;78366b2c123456789140\r
+    or.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366b2c12345678c1409abc\r
+    or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366b2c12345678c9409abcdef0\r
+    or.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366b2c12345678d2409abc\r
+    or.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366b2c12345678e2409abc\r
+    or.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366b2c12345678f2409abc\r
+    or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366b2c12345678da409abcdef0\r
+    or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366b2c12345678ea409abcdef0\r
+    or.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366b2c12345678fa409abcdef0\r
+    or.w @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366b2c1234567840409abc\r
+    or.w @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366b2c1234567848409abcdef0\r
+\r
+    or.w @(0x12345678:32,er3.l),@er1                       ;78376b2c123456780140\r
+    or.w @(0x12345678:32,er3.l),@(6:2,er1)                 ;78376b2c123456783140\r
+    or.w @(0x12345678:32,er3.l),@-er1                      ;78376b2c12345678b140\r
+    or.w @(0x12345678:32,er3.l),@er1+                      ;78376b2c123456788140\r
+    or.w @(0x12345678:32,er3.l),@er1-                      ;78376b2c12345678a140\r
+    or.w @(0x12345678:32,er3.l),@+er1                      ;78376b2c123456789140\r
+    or.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376b2c12345678c1409abc\r
+    or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376b2c12345678c9409abcdef0\r
+    or.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376b2c12345678d2409abc\r
+    or.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376b2c12345678e2409abc\r
+    or.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376b2c12345678f2409abc\r
+    or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376b2c12345678da409abcdef0\r
+    or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376b2c12345678ea409abcdef0\r
+    or.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376b2c12345678fa409abcdef0\r
+    or.w @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376b2c1234567840409abc\r
+    or.w @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376b2c1234567848409abcdef0\r
+\r
+    or.w @0x1234:16,@er1                              ;6b1512340140\r
+    or.w @0x1234:16,@(6:2,er1)                        ;6b1512343140\r
+    or.w @0x1234:16,@-er1                             ;6b151234b140\r
+    or.w @0x1234:16,@er1+                             ;6b1512348140\r
+    or.w @0x1234:16,@er1-                             ;6b151234a140\r
+    or.w @0x1234:16,@+er1                             ;6b1512349140\r
+    or.w @0x1234:16,@(0xffff9abc:16,er1)              ;6b151234c1409abc\r
+    or.w @0x1234:16,@(0x9abcdef0:32,er1)              ;6b151234c9409abcdef0\r
+    or.w @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6b151234d2409abc\r
+    or.w @0x1234:16,@(0xffff9abc:16,r2.w)            ;6b151234e2409abc\r
+    or.w @0x1234:16,@(0xffff9abc:16,er2.l)            ;6b151234f2409abc\r
+    or.w @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6b151234da409abcdef0\r
+    or.w @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6b151234ea409abcdef0\r
+    or.w @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6b151234fa409abcdef0\r
+    or.w @0x1234:16,@0xffff9abc:16                    ;6b15123440409abc\r
+    or.w @0x1234:16,@0x9abcdef0:32                    ;6b15123448409abcdef0\r
+\r
+    or.w @0x12345678:32,@er1                              ;6b35123456780140\r
+    or.w @0x12345678:32,@(6:2,er1)                        ;6b35123456783140\r
+    or.w @0x12345678:32,@-er1                             ;6b3512345678b140\r
+    or.w @0x12345678:32,@er1+                             ;6b35123456788140\r
+    or.w @0x12345678:32,@er1-                             ;6b3512345678a140\r
+    or.w @0x12345678:32,@+er1                             ;6b35123456789140\r
+    or.w @0x12345678:32,@(0xffff9abc:16,er1)              ;6b3512345678c1409abc\r
+    or.w @0x12345678:32,@(0x9abcdef0:32,er1)              ;6b3512345678c9409abcdef0\r
+    or.w @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6b3512345678d2409abc\r
+    or.w @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6b3512345678e2409abc\r
+    or.w @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6b3512345678f2409abc\r
+    or.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6b3512345678da409abcdef0\r
+    or.w @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6b3512345678ea409abcdef0\r
+    or.w @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6b3512345678fa409abcdef0\r
+    or.w @0x12345678:32,@0xffff9abc:16                    ;6b351234567840409abc\r
+    or.w @0x12345678:32,@0x9abcdef0:32                    ;6b351234567848409abcdef0\r
+\r
+    or.l #0x12345678:32,er1          ;7a4112345678\r
+    or.l #0x1234:16,er1           ;7a491234\r
+    or.l #0x12345678:32,@er1          ;010e014812345678\r
+    or.l #0x12345678:32,@(0xc:2,er1) ;010e314812345678\r
+    or.l #0x12345678:32,@er1+         ;010e814812345678\r
+    or.l #0x12345678:32,@-er1         ;010eb14812345678\r
+    or.l #0x12345678:32,@+er1         ;010e914812345678\r
+    or.l #0x12345678:32,@er1-         ;010ea14812345678\r
+    or.l #0x12345678:32,@(0xffff9abc:16,er1)   ;010ec1489abc12345678\r
+    or.l #0x12345678:32,@(0x9abcdef0:32,er1)   ;010ec9489abcdef012345678\r
+    or.l #0x12345678:32,@(0xffff9abc:16,r2l.b) ;010ed2489abc12345678\r
+    or.l #0x12345678:32,@(0xffff9abc:16,r2.w) ;010ee2489abc12345678\r
+    or.l #0x12345678:32,@(0xffff9abc:16,er2.l) ;010ef2489abc12345678\r
+    or.l #0x12345678:32,@(0x9abcdef0:32,r2l.b) ;010eda489abcdef012345678\r
+    or.l #0x12345678:32,@(0x9abcdef0:32,r2.w) ;010eea489abcdef012345678\r
+    or.l #0x12345678:32,@(0x9abcdef0:32,er2.l) ;010efa489abcdef012345678\r
+    or.l #0x12345678:32,@0xffff9abc:16         ;010e40489abc12345678\r
+    or.l #0x12345678:32,@0x9abcdef0:32         ;010e48489abcdef012345678\r
+    or.l #0x1234:16,@er1          ;010e01401234\r
+    or.l #0x1234:16,@(0xc:2,er1) ;010e31401234\r
+    or.l #0x1234:16,@er1+         ;010e81401234\r
+    or.l #0x1234:16,@-er1         ;010eb1401234\r
+    or.l #0x1234:16,@+er1         ;010e91401234\r
+    or.l #0x1234:16,@er1-         ;010ea1401234\r
+    or.l #0x1234:16,@(0xffff9abc:16,er1)   ;010ec1409abc1234\r
+    or.l #0x1234:16,@(0x9abcdef0:32,er1)   ;010ec9409abcdef01234\r
+    or.l #0x1234:16,@(0xffff9abc:16,r2l.b) ;010ed2409abc1234\r
+    or.l #0x1234:16,@(0xffff9abc:16,r2.w) ;010ee2409abc1234\r
+    or.l #0x1234:16,@(0xffff9abc:16,er2.l) ;010ef2409abc1234\r
+    or.l #0x1234:16,@(0x9abcdef0:32,r2l.b) ;010eda409abcdef01234\r
+    or.l #0x1234:16,@(0x9abcdef0:32,r2.w) ;010eea409abcdef01234\r
+    or.l #0x1234:16,@(0x9abcdef0:32,er2.l) ;010efa409abcdef01234\r
+    or.l #0x1234:16,@0xffff9abc:16         ;010e40409abc1234\r
+    or.l #0x1234:16,@0x9abcdef0:32         ;010e48409abcdef01234\r
+\r
+    or.l er3,er1               ;01f06431\r
+\r
+    or.l er3,@er1             ;01090143\r
+    or.l er3,@(0xc:2,er1)    ;01093143\r
+    or.l er3,@er1+            ;01098143\r
+    or.l er3,@-er1            ;0109b143\r
+    or.l er3,@+er1            ;01099143\r
+    or.l er3,@er1-            ;0109a143\r
+    or.l er3,@(0x1234:16,er1)      ;0109c1431234\r
+    or.l er3,@(0x12345678:32,er1)      ;0109c94312345678\r
+    or.l er3,@(0x1234:16,r2l.b)    ;0109d2431234\r
+    or.l er3,@(0x1234:16,r2.w)    ;0109e2431234\r
+    or.l er3,@(0x1234:16,er2.l)    ;0109f2431234\r
+    or.l er3,@(0x12345678:32,r2l.b)    ;0109da4312345678\r
+    or.l er3,@(0x12345678:32,r2.w)    ;0109ea4312345678\r
+    or.l er3,@(0x12345678:32,er2.l)    ;0109fa4312345678\r
+    or.l er3,@0x1234:16           ;010940431234\r
+    or.l er3,@0x12345678:32           ;0109484312345678\r
+\r
+    or.l @er3,er1             ;010a0341\r
+    or.l @(0xc:2,er3),er1   ;010a3341\r
+    or.l @er3+,er1           ;010a8341\r
+    or.l @-er3,er1           ;010ab341\r
+    or.l @+er3,er1           ;010a9341\r
+    or.l @er3-,er1           ;010aa341\r
+    or.l @(0x1234:16,er1),er1      ;010ac1411234\r
+    or.l @(0x12345678:32,er1),er1      ;010ac94112345678\r
+    or.l @(0x1234:16,r2l.b),er1    ;010ad2411234\r
+    or.l @(0x1234:16,r2.w),er1    ;010ae2411234\r
+    or.l @(0x1234:16,er2.l),er1    ;010af2411234\r
+    or.l @(0x12345678:32,r2l.b),er1    ;010ada4112345678\r
+    or.l @(0x12345678:32,r2.w),er1    ;010aea4112345678\r
+    or.l @(0x12345678:32,er2.l),er1    ;010afa4112345678\r
+    or.l @0x1234:16,er1           ;010a40411234\r
+    or.l @0x12345678:32,er1           ;010a484112345678\r
+\r
+    or.l @er3,@er1                                ;0104693c0140\r
+    or.l @er3,@(0xc:2,er1)                          ;0104693c3140\r
+    or.l @er3,@-er1                               ;0104693cb140\r
+    or.l @er3,@er1+                               ;0104693c8140\r
+    or.l @er3,@er1-                               ;0104693ca140\r
+    or.l @er3,@+er1                               ;0104693c9140\r
+    or.l @er3,@(0xffff9abc:16,er1)                ;0104693cc1409abc\r
+    or.l @er3,@(0x9abcdef0:32,er1)                ;0104693cc9409abcdef0\r
+    or.l @er3,@(0xffff9abc:16,r2l.b)              ;0104693cd2409abc\r
+    or.l @er3,@(0xffff9abc:16,r2.w)              ;0104693ce2409abc\r
+    or.l @er3,@(0xffff9abc:16,er2.l)              ;0104693cf2409abc\r
+    or.l @er3,@(0x9abcdef0:32,r2l.b)              ;0104693cda409abcdef0\r
+    or.l @er3,@(0x9abcdef0:32,r2.w)              ;0104693cea409abcdef0\r
+    or.l @er3,@(0x9abcdef0:32,er2.l)              ;0104693cfa409abcdef0\r
+    or.l @er3,@0xffff9abc:16                      ;0104693c40409abc\r
+    or.l @er3,@0x9abcdef0:32                      ;0104693c48409abcdef0\r
+\r
+    or.l @(0xc:2,er3),@er1                       ;0107693c0140\r
+    or.l @(0xc:2,er3),@(0xc:2,er1)                 ;0107693c3140\r
+    or.l @(0xc:2,er3),@-er1                      ;0107693cb140\r
+    or.l @(0xc:2,er3),@er1+                      ;0107693c8140\r
+    or.l @(0xc:2,er3),@er1-                      ;0107693ca140\r
+    or.l @(0xc:2,er3),@+er1                      ;0107693c9140\r
+    or.l @(0xc:2,er3),@(0xffff9abc:16,er1)       ;0107693cc1409abc\r
+    or.l @(0xc:2,er3),@(0x9abcdef0:32,er1)       ;0107693cc9409abcdef0\r
+    or.l @(0xc:2,er3),@(0xffff9abc:16,r2l.b)     ;0107693cd2409abc\r
+    or.l @(0xc:2,er3),@(0xffff9abc:16,r2.w)     ;0107693ce2409abc\r
+    or.l @(0xc:2,er3),@(0xffff9abc:16,er2.l)     ;0107693cf2409abc\r
+    or.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)     ;0107693cda409abcdef0\r
+    or.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)     ;0107693cea409abcdef0\r
+    or.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)     ;0107693cfa409abcdef0\r
+    or.l @(0xc:2,er3),@0xffff9abc:16             ;0107693c40409abc\r
+    or.l @(0xc:2,er3),@0x9abcdef0:32             ;0107693c48409abcdef0\r
+\r
+    or.l @-er3,@er1                               ;01076d3c0140\r
+    or.l @-er3,@(0xc:2,er1)                         ;01076d3c3140\r
+    or.l @-er3,@-er1                              ;01076d3cb140\r
+    or.l @-er3,@er1+                              ;01076d3c8140\r
+    or.l @-er3,@er1-                              ;01076d3ca140\r
+    or.l @-er3,@+er1                              ;01076d3c9140\r
+    or.l @-er3,@(0xffff9abc:16,er1)               ;01076d3cc1409abc\r
+    or.l @-er3,@(0x9abcdef0:32,er1)               ;01076d3cc9409abcdef0\r
+    or.l @-er3,@(0xffff9abc:16,r2l.b)             ;01076d3cd2409abc\r
+    or.l @-er3,@(0xffff9abc:16,r2.w)             ;01076d3ce2409abc\r
+    or.l @-er3,@(0xffff9abc:16,er2.l)             ;01076d3cf2409abc\r
+    or.l @-er3,@(0x9abcdef0:32,r2l.b)             ;01076d3cda409abcdef0\r
+    or.l @-er3,@(0x9abcdef0:32,r2.w)             ;01076d3cea409abcdef0\r
+    or.l @-er3,@(0x9abcdef0:32,er2.l)             ;01076d3cfa409abcdef0\r
+    or.l @-er3,@0xffff9abc:16                     ;01076d3c40409abc\r
+    or.l @-er3,@0x9abcdef0:32                     ;01076d3c48409abcdef0\r
+\r
+    or.l @er3+,@er1                               ;01046d3c0140\r
+    or.l @er3+,@(0xc:2,er1)                         ;01046d3c3140\r
+    or.l @er3+,@-er1                              ;01046d3cb140\r
+    or.l @er3+,@er1+                              ;01046d3c8140\r
+    or.l @er3+,@er1-                              ;01046d3ca140\r
+    or.l @er3+,@+er1                              ;01046d3c9140\r
+    or.l @er3+,@(0xffff9abc:16,er1)               ;01046d3cc1409abc\r
+    or.l @er3+,@(0x9abcdef0:32,er1)               ;01046d3cc9409abcdef0\r
+    or.l @er3+,@(0xffff9abc:16,r2l.b)             ;01046d3cd2409abc\r
+    or.l @er3+,@(0xffff9abc:16,r2.w)             ;01046d3ce2409abc\r
+    or.l @er3+,@(0xffff9abc:16,er2.l)             ;01046d3cf2409abc\r
+    or.l @er3+,@(0x9abcdef0:32,r2l.b)             ;01046d3cda409abcdef0\r
+    or.l @er3+,@(0x9abcdef0:32,r2.w)             ;01046d3cea409abcdef0\r
+    or.l @er3+,@(0x9abcdef0:32,er2.l)             ;01046d3cfa409abcdef0\r
+    or.l @er3+,@0xffff9abc:16                     ;01046d3c40409abc\r
+    or.l @er3+,@0x9abcdef0:32                     ;01046d3c48409abcdef0\r
+\r
+    or.l @er3-,@er1                               ;01066d3c0140\r
+    or.l @er3-,@(0xc:2,er1)                         ;01066d3c3140\r
+    or.l @er3-,@-er1                              ;01066d3cb140\r
+    or.l @er3-,@er1+                              ;01066d3c8140\r
+    or.l @er3-,@er1-                              ;01066d3ca140\r
+    or.l @er3-,@+er1                              ;01066d3c9140\r
+    or.l @er3-,@(0xffff9abc:16,er1)               ;01066d3cc1409abc\r
+    or.l @er3-,@(0x9abcdef0:32,er1)               ;01066d3cc9409abcdef0\r
+    or.l @er3-,@(0xffff9abc:16,r2l.b)             ;01066d3cd2409abc\r
+    or.l @er3-,@(0xffff9abc:16,r2.w)             ;01066d3ce2409abc\r
+    or.l @er3-,@(0xffff9abc:16,er2.l)             ;01066d3cf2409abc\r
+    or.l @er3-,@(0x9abcdef0:32,r2l.b)             ;01066d3cda409abcdef0\r
+    or.l @er3-,@(0x9abcdef0:32,r2.w)             ;01066d3cea409abcdef0\r
+    or.l @er3-,@(0x9abcdef0:32,er2.l)             ;01066d3cfa409abcdef0\r
+    or.l @er3-,@0xffff9abc:16                     ;01066d3c40409abc\r
+    or.l @er3-,@0x9abcdef0:32                     ;01066d3c48409abcdef0\r
+\r
+    or.l @+er3,@er1                               ;01056d3c0140\r
+    or.l @+er3,@(0xc:2,er1)                         ;01056d3c3140\r
+    or.l @+er3,@-er1                              ;01056d3cb140\r
+    or.l @+er3,@er1+                              ;01056d3c8140\r
+    or.l @+er3,@er1-                              ;01056d3ca140\r
+    or.l @+er3,@+er1                              ;01056d3c9140\r
+    or.l @+er3,@(0xffff9abc:16,er1)               ;01056d3cc1409abc\r
+    or.l @+er3,@(0x9abcdef0:32,er1)               ;01056d3cc9409abcdef0\r
+    or.l @+er3,@(0xffff9abc:16,r2l.b)             ;01056d3cd2409abc\r
+    or.l @+er3,@(0xffff9abc:16,r2.w)             ;01056d3ce2409abc\r
+    or.l @+er3,@(0xffff9abc:16,er2.l)             ;01056d3cf2409abc\r
+    or.l @+er3,@(0x9abcdef0:32,r2l.b)             ;01056d3cda409abcdef0\r
+    or.l @+er3,@(0x9abcdef0:32,r2.w)             ;01056d3cea409abcdef0\r
+    or.l @+er3,@(0x9abcdef0:32,er2.l)             ;01056d3cfa409abcdef0\r
+    or.l @+er3,@0xffff9abc:16                     ;01056d3c40409abc\r
+    or.l @+er3,@0x9abcdef0:32                     ;01056d3c48409abcdef0\r
+\r
+    or.l @(0x1234:16,er3),@er1                         ;01046f3c12340140\r
+    or.l @(0x1234:16,er3),@(0xc:2,er1)                   ;01046f3c12343140\r
+    or.l @(0x1234:16,er3),@-er1                        ;01046f3c1234b140\r
+    or.l @(0x1234:16,er3),@er1+                        ;01046f3c12348140\r
+    or.l @(0x1234:16,er3),@er1-                        ;01046f3c1234a140\r
+    or.l @(0x1234:16,er3),@+er1                        ;01046f3c12349140\r
+    or.l @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01046f3c1234c1409abc\r
+    or.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01046f3c1234c9409abcdef0\r
+    or.l @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01046f3c1234d2409abc\r
+    or.l @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01046f3c1234e2409abc\r
+    or.l @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01046f3c1234f2409abc\r
+    or.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01046f3c1234da409abcdef0\r
+    or.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01046f3c1234ea409abcdef0\r
+    or.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01046f3c1234fa409abcdef0\r
+    or.l @(0x1234:16,er3),@0xffff9abc:16               ;01046f3c123440409abc\r
+    or.l @(0x1234:16,er3),@0x9abcdef0:32               ;01046f3c123448409abcdef0\r
+\r
+    or.l @(0x12345678:32,er3),@er1                         ;78b46b2c123456780140\r
+    or.l @(0x12345678:32,er3),@(0xc:2,er1)                   ;78b46b2c123456783140\r
+    or.l @(0x12345678:32,er3),@-er1                        ;78b46b2c12345678b140\r
+    or.l @(0x12345678:32,er3),@er1+                        ;78b46b2c123456788140\r
+    or.l @(0x12345678:32,er3),@er1-                        ;78b46b2c12345678a140\r
+    or.l @(0x12345678:32,er3),@+er1                        ;78b46b2c123456789140\r
+    or.l @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78b46b2c12345678c1409abc\r
+    or.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78b46b2c12345678c9409abcdef0\r
+    or.l @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78b46b2c12345678d2409abc\r
+    or.l @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78b46b2c12345678e2409abc\r
+    or.l @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78b46b2c12345678f2409abc\r
+    or.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78b46b2c12345678da409abcdef0\r
+    or.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78b46b2c12345678ea409abcdef0\r
+    or.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78b46b2c12345678fa409abcdef0\r
+    or.l @(0x12345678:32,er3),@0xffff9abc:16               ;78b46b2c1234567840409abc\r
+    or.l @(0x12345678:32,er3),@0x9abcdef0:32               ;78b46b2c1234567848409abcdef0\r
+\r
+    or.l @(0x1234:16,r3l.b),@er1                       ;01056f3c12340140\r
+    or.l @(0x1234:16,r3l.b),@(0xc:2,er1)                 ;01056f3c12343140\r
+    or.l @(0x1234:16,r3l.b),@-er1                      ;01056f3c1234b140\r
+    or.l @(0x1234:16,r3l.b),@er1+                      ;01056f3c12348140\r
+    or.l @(0x1234:16,r3l.b),@er1-                      ;01056f3c1234a140\r
+    or.l @(0x1234:16,r3l.b),@+er1                      ;01056f3c12349140\r
+    or.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01056f3c1234c1409abc\r
+    or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01056f3c1234c9409abcdef0\r
+    or.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01056f3c1234d2409abc\r
+    or.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01056f3c1234e2409abc\r
+    or.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01056f3c1234f2409abc\r
+    or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01056f3c1234da409abcdef0\r
+    or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01056f3c1234ea409abcdef0\r
+    or.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01056f3c1234fa409abcdef0\r
+    or.l @(0x1234:16,r3l.b),@0xffff9abc:16             ;01056f3c123440409abc\r
+    or.l @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01056f3c123448409abcdef0\r
+\r
+    or.l @(0x1234:16,r3.w),@er1                       ;01066f3c12340140\r
+    or.l @(0x1234:16,r3.w),@(0xc:2,er1)                 ;01066f3c12343140\r
+    or.l @(0x1234:16,r3.w),@-er1                      ;01066f3c1234b140\r
+    or.l @(0x1234:16,r3.w),@er1+                      ;01066f3c12348140\r
+    or.l @(0x1234:16,r3.w),@er1-                      ;01066f3c1234a140\r
+    or.l @(0x1234:16,r3.w),@+er1                      ;01066f3c12349140\r
+    or.l @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01066f3c1234c1409abc\r
+    or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01066f3c1234c9409abcdef0\r
+    or.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01066f3c1234d2409abc\r
+    or.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01066f3c1234e2409abc\r
+    or.l @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01066f3c1234f2409abc\r
+    or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01066f3c1234da409abcdef0\r
+    or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01066f3c1234ea409abcdef0\r
+    or.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01066f3c1234fa409abcdef0\r
+    or.l @(0x1234:16,r3.w),@0xffff9abc:16             ;01066f3c123440409abc\r
+    or.l @(0x1234:16,r3.w),@0x9abcdef0:32             ;01066f3c123448409abcdef0\r
+\r
+    or.l @(0x1234:16,er3.l),@er1                       ;01076f3c12340140\r
+    or.l @(0x1234:16,er3.l),@(0xc:2,er1)                 ;01076f3c12343140\r
+    or.l @(0x1234:16,er3.l),@-er1                      ;01076f3c1234b140\r
+    or.l @(0x1234:16,er3.l),@er1+                      ;01076f3c12348140\r
+    or.l @(0x1234:16,er3.l),@er1-                      ;01076f3c1234a140\r
+    or.l @(0x1234:16,er3.l),@+er1                      ;01076f3c12349140\r
+    or.l @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01076f3c1234c1409abc\r
+    or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01076f3c1234c9409abcdef0\r
+    or.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01076f3c1234d2409abc\r
+    or.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01076f3c1234e2409abc\r
+    or.l @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01076f3c1234f2409abc\r
+    or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01076f3c1234da409abcdef0\r
+    or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01076f3c1234ea409abcdef0\r
+    or.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01076f3c1234fa409abcdef0\r
+    or.l @(0x1234:16,er3.l),@0xffff9abc:16             ;01076f3c123440409abc\r
+    or.l @(0x1234:16,er3.l),@0x9abcdef0:32             ;01076f3c123448409abcdef0\r
+\r
+    or.l @(0x12345678:32,r3l.b),@er1                       ;78b56b2c123456780140\r
+    or.l @(0x12345678:32,r3l.b),@(0xc:2,er1)                 ;78b56b2c123456783140\r
+    or.l @(0x12345678:32,r3l.b),@-er1                      ;78b56b2c12345678b140\r
+    or.l @(0x12345678:32,r3l.b),@er1+                      ;78b56b2c123456788140\r
+    or.l @(0x12345678:32,r3l.b),@er1-                      ;78b56b2c12345678a140\r
+    or.l @(0x12345678:32,r3l.b),@+er1                      ;78b56b2c123456789140\r
+    or.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78b56b2c12345678c1409abc\r
+    or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78b56b2c12345678c9409abcdef0\r
+    or.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78b56b2c12345678d2409abc\r
+    or.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78b56b2c12345678e2409abc\r
+    or.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78b56b2c12345678f2409abc\r
+    or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78b56b2c12345678da409abcdef0\r
+    or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78b56b2c12345678ea409abcdef0\r
+    or.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78b56b2c12345678fa409abcdef0\r
+    or.l @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78b56b2c1234567840409abc\r
+    or.l @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78b56b2c1234567848409abcdef0\r
+\r
+    or.l @(0x12345678:32,r3.w),@er1                       ;78b66b2c123456780140\r
+    or.l @(0x12345678:32,r3.w),@(0xc:2,er1)                 ;78b66b2c123456783140\r
+    or.l @(0x12345678:32,r3.w),@-er1                      ;78b66b2c12345678b140\r
+    or.l @(0x12345678:32,r3.w),@er1+                      ;78b66b2c123456788140\r
+    or.l @(0x12345678:32,r3.w),@er1-                      ;78b66b2c12345678a140\r
+    or.l @(0x12345678:32,r3.w),@+er1                      ;78b66b2c123456789140\r
+    or.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78b66b2c12345678c1409abc\r
+    or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78b66b2c12345678c9409abcdef0\r
+    or.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78b66b2c12345678d2409abc\r
+    or.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78b66b2c12345678e2409abc\r
+    or.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78b66b2c12345678f2409abc\r
+    or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78b66b2c12345678da409abcdef0\r
+    or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78b66b2c12345678ea409abcdef0\r
+    or.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78b66b2c12345678fa409abcdef0\r
+    or.l @(0x12345678:32,r3.w),@0xffff9abc:16             ;78b66b2c1234567840409abc\r
+    or.l @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78b66b2c1234567848409abcdef0\r
+\r
+    or.l @(0x12345678:32,er3.l),@er1                       ;78b76b2c123456780140\r
+    or.l @(0x12345678:32,er3.l),@(0xc:2,er1)                 ;78b76b2c123456783140\r
+    or.l @(0x12345678:32,er3.l),@-er1                      ;78b76b2c12345678b140\r
+    or.l @(0x12345678:32,er3.l),@er1+                      ;78b76b2c123456788140\r
+    or.l @(0x12345678:32,er3.l),@er1-                      ;78b76b2c12345678a140\r
+    or.l @(0x12345678:32,er3.l),@+er1                      ;78b76b2c123456789140\r
+    or.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78b76b2c12345678c1409abc\r
+    or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78b76b2c12345678c9409abcdef0\r
+    or.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78b76b2c12345678d2409abc\r
+    or.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78b76b2c12345678e2409abc\r
+    or.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78b76b2c12345678f2409abc\r
+    or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78b76b2c12345678da409abcdef0\r
+    or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78b76b2c12345678ea409abcdef0\r
+    or.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78b76b2c12345678fa409abcdef0\r
+    or.l @(0x12345678:32,er3.l),@0xffff9abc:16             ;78b76b2c1234567840409abc\r
+    or.l @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78b76b2c1234567848409abcdef0\r
+\r
+    or.l @0x1234:16,@er1                              ;01046b0c12340140\r
+    or.l @0x1234:16,@(0xc:2,er1)                        ;01046b0c12343140\r
+    or.l @0x1234:16,@-er1                             ;01046b0c1234b140\r
+    or.l @0x1234:16,@er1+                             ;01046b0c12348140\r
+    or.l @0x1234:16,@er1-                             ;01046b0c1234a140\r
+    or.l @0x1234:16,@+er1                             ;01046b0c12349140\r
+    or.l @0x1234:16,@(0xffff9abc:16,er1)              ;01046b0c1234c1409abc\r
+    or.l @0x1234:16,@(0x9abcdef0:32,er1)              ;01046b0c1234c9409abcdef0\r
+    or.l @0x1234:16,@(0xffff9abc:16,r2l.b)            ;01046b0c1234d2409abc\r
+    or.l @0x1234:16,@(0xffff9abc:16,r2.w)            ;01046b0c1234e2409abc\r
+    or.l @0x1234:16,@(0xffff9abc:16,er2.l)            ;01046b0c1234f2409abc\r
+    or.l @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;01046b0c1234da409abcdef0\r
+    or.l @0x1234:16,@(0x9abcdef0:32,r2.w)            ;01046b0c1234ea409abcdef0\r
+    or.l @0x1234:16,@(0x9abcdef0:32,er2.l)            ;01046b0c1234fa409abcdef0\r
+    or.l @0x1234:16,@0xffff9abc:16                    ;01046b0c123440409abc\r
+    or.l @0x1234:16,@0x9abcdef0:32                    ;01046b0c123448409abcdef0\r
+\r
+    or.l @0x12345678:32,@er1                              ;01046b2c123456780140\r
+    or.l @0x12345678:32,@(0xc:2,er1)                        ;01046b2c123456783140\r
+    or.l @0x12345678:32,@-er1                             ;01046b2c12345678b140\r
+    or.l @0x12345678:32,@er1+                             ;01046b2c123456788140\r
+    or.l @0x12345678:32,@er1-                             ;01046b2c12345678a140\r
+    or.l @0x12345678:32,@+er1                             ;01046b2c123456789140\r
+    or.l @0x12345678:32,@(0xffff9abc:16,er1)              ;01046b2c12345678c1409abc\r
+    or.l @0x12345678:32,@(0x9abcdef0:32,er1)              ;01046b2c12345678c9409abcdef0\r
+    or.l @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;01046b2c12345678d2409abc\r
+    or.l @0x12345678:32,@(0xffff9abc:16,r2.w)            ;01046b2c12345678e2409abc\r
+    or.l @0x12345678:32,@(0xffff9abc:16,er2.l)            ;01046b2c12345678f2409abc\r
+    or.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;01046b2c12345678da409abcdef0\r
+    or.l @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;01046b2c12345678ea409abcdef0\r
+    or.l @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;01046b2c12345678fa409abcdef0\r
+    or.l @0x12345678:32,@0xffff9abc:16                    ;01046b2c1234567840409abc\r
+    or.l @0x12345678:32,@0x9abcdef0:32                    ;01046b2c1234567848409abcdef0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t09_xor.exp b/gdb/testsuite/gdb.disasm/t09_xor.exp
new file mode 100644 (file)
index 0000000..0164b33
--- /dev/null
@@ -0,0 +1,1866 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t09_xor"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "xor.b\t#0x12(:8|),r1h" \
+       "xor.b #0x12:8,r1h"
+gdb_test "x" "xor.b\t#0x12(:8|),@er1" \
+       "xor.b #0x12:8,@er1"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x3(:2|),er1\\)" \
+       "xor.b #0x12:8,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t#0x12(:8|),@er1\\+" \
+       "xor.b #0x12:8,@er1+"
+gdb_test "x" "xor.b\t#0x12(:8|),@-er1" \
+       "xor.b #0x12:8,@-er1"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\+er1" \
+       "xor.b #0x12:8,@+er1"
+gdb_test "x" "xor.b\t#0x12(:8|),@er1-" \
+       "xor.b #0x12:8,@er1-"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x1234(:16|),er1\\)" \
+       "xor.b #0x12:8,@(0x1234:16,er1)"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x12345678(:32|),er1\\)" \
+       "xor.b #0x12:8,@(0x12345678:32,er1)"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x1234(:16|),r2l.b\\)" \
+       "xor.b #0x12:8,@(0x1234:16,r2l.b)"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x1234(:16|),r2.w\\)" \
+       "xor.b #0x12:8,@(0x1234:16,r2.w)"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x1234(:16|),er2.l\\)" \
+       "xor.b #0x12:8,@(0x1234:16,er2.l)"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x12345678(:32|),r2l.b\\)" \
+       "xor.b #0x12:8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x12345678(:32|),r2.w\\)" \
+       "xor.b #0x12:8,@(0x12345678:32,r2.w)"
+gdb_test "x" "xor.b\t#0x12(:8|),@\\(0x12345678(:32|),er2.l\\)" \
+       "xor.b #0x12:8,@(0x12345678:32,er2.l)"
+gdb_test "x" "xor.b\t#0x12(:8|),@0x12(:8|)" \
+       "xor.b #0x12:8,@0x12:8"
+gdb_test "x" "xor.b\t#0x12(:8|),@0x1234(:16|)" \
+       "xor.b #0x12:8,@0x1234:16"
+gdb_test "x" "xor.b\t#0x12(:8|),@0x12345678(:32|)" \
+       "xor.b #0x12:8,@0x12345678:32"
+gdb_test "x" "xor.b\tr3h,r1h" \
+       "xor.b r3h,r1h"
+gdb_test "x" "xor.b\tr3h,@er1" \
+       "xor.b r3h,@er1"
+gdb_test "x" "xor.b\tr3h,@\\(0x3(:2|),er1\\)" \
+       "xor.b r3h,@(0x3:2,er1)"
+gdb_test "x" "xor.b\tr3h,@er1\\+" \
+       "xor.b r3h,@er1+"
+gdb_test "x" "xor.b\tr3h,@-er1" \
+       "xor.b r3h,@-er1"
+gdb_test "x" "xor.b\tr3h,@\\+er1" \
+       "xor.b r3h,@+er1"
+gdb_test "x" "xor.b\tr3h,@er1-" \
+       "xor.b r3h,@er1-"
+gdb_test "x" "xor.b\tr3h,@\\(0x1234(:16|),er1\\)" \
+       "xor.b r3h,@(0x1234:16,er1)"
+gdb_test "x" "xor.b\tr3h,@\\(0x12345678(:32|),er1\\)" \
+       "xor.b r3h,@(0x12345678:32,er1)"
+gdb_test "x" "xor.b\tr3h,@\\(0x1234(:16|),r2l.b\\)" \
+       "xor.b r3h,@(0x1234:16,r2l.b)"
+gdb_test "x" "xor.b\tr3h,@\\(0x1234(:16|),r2.w\\)" \
+       "xor.b r3h,@(0x1234:16,r2.w)"
+gdb_test "x" "xor.b\tr3h,@\\(0x1234(:16|),er2.l\\)" \
+       "xor.b r3h,@(0x1234:16,er2.l)"
+gdb_test "x" "xor.b\tr3h,@\\(0x12345678(:32|),r2l.b\\)" \
+       "xor.b r3h,@(0x12345678:32,r2l.b)"
+gdb_test "x" "xor.b\tr3h,@\\(0x12345678(:32|),r2.w\\)" \
+       "xor.b r3h,@(0x12345678:32,r2.w)"
+gdb_test "x" "xor.b\tr3h,@\\(0x12345678(:32|),er2.l\\)" \
+       "xor.b r3h,@(0x12345678:32,er2.l)"
+gdb_test "x" "xor.b\tr3h,@0x12(:8|)" \
+       "xor.b r3h,@0x12:8"
+gdb_test "x" "xor.b\tr3h,@0x1234(:16|)" \
+       "xor.b r3h,@0x1234:16"
+gdb_test "x" "xor.b\tr3h,@0x12345678(:32|)" \
+       "xor.b r3h,@0x12345678:32"
+gdb_test "x" "xor.b\t@er3,r1h" \
+       "xor.b @er3,r1h"
+gdb_test "x" "xor.b\t@\\(0x3(:2|),er3\\),r1h" \
+       "xor.b @(0x3:2,er3),r1h"
+gdb_test "x" "xor.b\t@er3\\+,r1h" \
+       "xor.b @er3+,r1h"
+gdb_test "x" "xor.b\t@-er3,r1h" \
+       "xor.b @-er3,r1h"
+gdb_test "x" "xor.b\t@\\+er3,r1h" \
+       "xor.b @+er3,r1h"
+gdb_test "x" "xor.b\t@er3-,r1h" \
+       "xor.b @er3-,r1h"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er1\\),r1h" \
+       "xor.b @(0x1234:16,er1),r1h"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er1\\),r1h" \
+       "xor.b @(0x12345678:32,er1),r1h"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r2l.b\\),r1h" \
+       "xor.b @(0x1234:16,r2l.b),r1h"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r2.w\\),r1h" \
+       "xor.b @(0x1234:16,r2.w),r1h"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er2.l\\),r1h" \
+       "xor.b @(0x1234:16,er2.l),r1h"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r2l.b\\),r1h" \
+       "xor.b @(0x12345678:32,r2l.b),r1h"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r2.w\\),r1h" \
+       "xor.b @(0x12345678:32,r2.w),r1h"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er2.l\\),r1h" \
+       "xor.b @(0x12345678:32,er2.l),r1h"
+gdb_test "x" "xor.b\t@0x12(:8|),r1h" \
+       "xor.b @0x12:8,r1h"
+gdb_test "x" "xor.b\t@0x1234(:16|),r1h" \
+       "xor.b @0x1234:16,r1h"
+gdb_test "x" "xor.b\t@0x12345678(:32|),r1h" \
+       "xor.b @0x12345678:32,r1h"
+gdb_test "x" "xor.b\t@er3,@er1" \
+       "xor.b @er3,@er1"
+gdb_test "x" "xor.b\t@er3,@\\(0x3(:2|),er1\\)" \
+       "xor.b @er3,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@er3,@-er1" \
+       "xor.b @er3,@-er1"
+gdb_test "x" "xor.b\t@er3,@er1\\+" \
+       "xor.b @er3,@er1+"
+gdb_test "x" "xor.b\t@er3,@er1-" \
+       "xor.b @er3,@er1-"
+gdb_test "x" "xor.b\t@er3,@\\+er1" \
+       "xor.b @er3,@+er1"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@er3,@0x9abc(:16|)" \
+       "xor.b @er3,@0x9abc:16"
+gdb_test "x" "xor.b\t@er3,@0x9abcdef0(:32|)" \
+       "xor.b @er3,@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@-er3,@er1" \
+       "xor.b @-er3,@er1"
+gdb_test "x" "xor.b\t@-er3,@\\(0x3(:2|),er1\\)" \
+       "xor.b @-er3,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@-er3,@-er1" \
+       "xor.b @-er3,@-er1"
+gdb_test "x" "xor.b\t@-er3,@er1\\+" \
+       "xor.b @-er3,@er1+"
+gdb_test "x" "xor.b\t@-er3,@er1-" \
+       "xor.b @-er3,@er1-"
+gdb_test "x" "xor.b\t@-er3,@\\+er1" \
+       "xor.b @-er3,@+er1"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@-er3,@0x9abc(:16|)" \
+       "xor.b @-er3,@0x9abc:16"
+gdb_test "x" "xor.b\t@-er3,@0x9abcdef0(:32|)" \
+       "xor.b @-er3,@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@er3\\+,@er1" \
+       "xor.b @er3+,@er1"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x3(:2|),er1\\)" \
+       "xor.b @er3+,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@er3\\+,@-er1" \
+       "xor.b @er3+,@-er1"
+gdb_test "x" "xor.b\t@er3\\+,@er1\\+" \
+       "xor.b @er3+,@er1+"
+gdb_test "x" "xor.b\t@er3\\+,@er1-" \
+       "xor.b @er3+,@er1-"
+gdb_test "x" "xor.b\t@er3\\+,@\\+er1" \
+       "xor.b @er3+,@+er1"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@er3\\+,@0x9abc(:16|)" \
+       "xor.b @er3+,@0x9abc:16"
+gdb_test "x" "xor.b\t@er3\\+,@0x9abcdef0(:32|)" \
+       "xor.b @er3+,@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@er3-,@er1" \
+       "xor.b @er3-,@er1"
+gdb_test "x" "xor.b\t@er3-,@\\(0x3(:2|),er1\\)" \
+       "xor.b @er3-,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@er3-,@-er1" \
+       "xor.b @er3-,@-er1"
+gdb_test "x" "xor.b\t@er3-,@er1\\+" \
+       "xor.b @er3-,@er1+"
+gdb_test "x" "xor.b\t@er3-,@er1-" \
+       "xor.b @er3-,@er1-"
+gdb_test "x" "xor.b\t@er3-,@\\+er1" \
+       "xor.b @er3-,@+er1"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@er3-,@0x9abc(:16|)" \
+       "xor.b @er3-,@0x9abc:16"
+gdb_test "x" "xor.b\t@er3-,@0x9abcdef0(:32|)" \
+       "xor.b @er3-,@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\+er3,@er1" \
+       "xor.b @+er3,@er1"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x3(:2|),er1\\)" \
+       "xor.b @+er3,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\+er3,@-er1" \
+       "xor.b @+er3,@-er1"
+gdb_test "x" "xor.b\t@\\+er3,@er1\\+" \
+       "xor.b @+er3,@er1+"
+gdb_test "x" "xor.b\t@\\+er3,@er1-" \
+       "xor.b @+er3,@er1-"
+gdb_test "x" "xor.b\t@\\+er3,@\\+er1" \
+       "xor.b @+er3,@+er1"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\+er3,@0x9abc(:16|)" \
+       "xor.b @+er3,@0x9abc:16"
+gdb_test "x" "xor.b\t@\\+er3,@0x9abcdef0(:32|)" \
+       "xor.b @+er3,@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@er1" \
+       "xor.b @(0x1234:16,er3),@er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x1234:16,er3),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "xor.b @(0x1234:16,er3),@-er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "xor.b @(0x1234:16,er3),@er1+"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "xor.b @(0x1234:16,er3),@er1-"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "xor.b @(0x1234:16,er3),@+er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "xor.b @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "xor.b @(0x12345678:32,er3),@er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "xor.b @(0x12345678:32,er3),@-er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "xor.b @(0x12345678:32,er3),@er1+"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "xor.b @(0x12345678:32,er3),@er1-"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "xor.b @(0x12345678:32,er3),@+er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "xor.b @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "xor.b @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "xor.b @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "xor.b @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "xor.b @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "xor.b @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "xor.b @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "xor.b @(0x1234:16,r3.w),@er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "xor.b @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "xor.b @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "xor.b @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "xor.b @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "xor.b @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "xor.b @(0x1234:16,er3.l),@er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "xor.b @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "xor.b @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "xor.b @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "xor.b @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "xor.b @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "xor.b @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "xor.b @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "xor.b @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "xor.b @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "xor.b @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "xor.b @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "xor.b @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "xor.b @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "xor.b @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "xor.b @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "xor.b @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "xor.b @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "xor.b @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "xor.b @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "xor.b @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "xor.b @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "xor.b @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "xor.b @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "xor.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "xor.b @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@0x1234(:16|),@er1" \
+       "xor.b @0x1234:16,@er1"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x3(:2|),er1\\)" \
+       "xor.b @0x1234:16,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@-er1" \
+       "xor.b @0x1234:16,@-er1"
+gdb_test "x" "xor.b\t@0x1234(:16|),@er1\\+" \
+       "xor.b @0x1234:16,@er1+"
+gdb_test "x" "xor.b\t@0x1234(:16|),@er1-" \
+       "xor.b @0x1234:16,@er1-"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\+er1" \
+       "xor.b @0x1234:16,@+er1"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@0x1234(:16|),@0x9abc(:16|)" \
+       "xor.b @0x1234:16,@0x9abc:16"
+gdb_test "x" "xor.b\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "xor.b @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@er1" \
+       "xor.b @0x12345678:32,@er1"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x3(:2|),er1\\)" \
+       "xor.b @0x12345678:32,@(0x3:2,er1)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@-er1" \
+       "xor.b @0x12345678:32,@-er1"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@er1\\+" \
+       "xor.b @0x12345678:32,@er1+"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@er1-" \
+       "xor.b @0x12345678:32,@er1-"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\+er1" \
+       "xor.b @0x12345678:32,@+er1"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.b @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.b @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.b @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.b @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.b @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.b @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.b @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "xor.b @0x12345678:32,@0x9abc:16"
+gdb_test "x" "xor.b\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "xor.b @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "xor.w\t#0x1234(:16|),r1" \
+       "xor.w #0x1234:16,r1"
+gdb_test "x" "xor.w\t#0x1234(:16|),@er1" \
+       "xor.w #0x1234:16,@er1"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "xor.w #0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@er1\\+" \
+       "xor.w #0x1234:16,@er1+"
+gdb_test "x" "xor.w\t#0x1234(:16|),@-er1" \
+       "xor.w #0x1234:16,@-er1"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\+er1" \
+       "xor.w #0x1234:16,@+er1"
+gdb_test "x" "xor.w\t#0x1234(:16|),@er1-" \
+       "xor.w #0x1234:16,@er1-"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t#0x1234(:16|),@0x9abc(:16|)" \
+       "xor.w #0x1234:16,@0x9abc:16"
+gdb_test "x" "xor.w\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "xor.w #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "xor.w\tr3,r1" \
+       "xor.w r3,r1"
+gdb_test "x" "xor.w\tr3,@er1" \
+       "xor.w r3,@er1"
+gdb_test "x" "xor.w\tr3,@\\(0x6(:2|),er1\\)" \
+       "xor.w r3,@(0x6:2,er1)"
+gdb_test "x" "xor.w\tr3,@-er1" \
+       "xor.w r3,@-er1"
+gdb_test "x" "xor.w\tr3,@er1\\+" \
+       "xor.w r3,@er1+"
+gdb_test "x" "xor.w\tr3,@er1-" \
+       "xor.w r3,@er1-"
+gdb_test "x" "xor.w\tr3,@\\+er1" \
+       "xor.w r3,@+er1"
+gdb_test "x" "xor.w\tr3,@\\(0x1234(:16|),er1\\)" \
+       "xor.w r3,@(0x1234:16,er1)"
+gdb_test "x" "xor.w\tr3,@\\(0x12345678(:32|),er1\\)" \
+       "xor.w r3,@(0x12345678:32,er1)"
+gdb_test "x" "xor.w\tr3,@\\(0x1234(:16|),r2l.b\\)" \
+       "xor.w r3,@(0x1234:16,r2l.b)"
+gdb_test "x" "xor.w\tr3,@\\(0x1234(:16|),r2.w\\)" \
+       "xor.w r3,@(0x1234:16,r2.w)"
+gdb_test "x" "xor.w\tr3,@\\(0x1234(:16|),er2.l\\)" \
+       "xor.w r3,@(0x1234:16,er2.l)"
+gdb_test "x" "xor.w\tr3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "xor.w r3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "xor.w\tr3,@\\(0x12345678(:32|),r2.w\\)" \
+       "xor.w r3,@(0x12345678:32,r2.w)"
+gdb_test "x" "xor.w\tr3,@\\(0x12345678(:32|),er2.l\\)" \
+       "xor.w r3,@(0x12345678:32,er2.l)"
+gdb_test "x" "xor.w\tr3,@0x1234(:16|)" \
+       "xor.w r3,@0x1234:16"
+gdb_test "x" "xor.w\tr3,@0x12345678(:32|)" \
+       "xor.w r3,@0x12345678:32"
+gdb_test "x" "xor.w\t@er3,r1" \
+       "xor.w @er3,r1"
+gdb_test "x" "xor.w\t@\\(0x6(:2|),er3\\),r1" \
+       "xor.w @(0x6:2,er3),r1"
+gdb_test "x" "xor.w\t@er3\\+,r1" \
+       "xor.w @er3+,r1"
+gdb_test "x" "xor.w\t@-er3,r1" \
+       "xor.w @-er3,r1"
+gdb_test "x" "xor.w\t@\\+er3,r1" \
+       "xor.w @+er3,r1"
+gdb_test "x" "xor.w\t@er3-,r1" \
+       "xor.w @er3-,r1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er1\\),r1" \
+       "xor.w @(0x1234:16,er1),r1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er1\\),r1" \
+       "xor.w @(0x12345678:32,er1),r1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r2l.b\\),r1" \
+       "xor.w @(0x1234:16,r2l.b),r1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r2.w\\),r1" \
+       "xor.w @(0x1234:16,r2.w),r1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er2.l\\),r1" \
+       "xor.w @(0x1234:16,er2.l),r1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r2l.b\\),r1" \
+       "xor.w @(0x12345678:32,r2l.b),r1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r2.w\\),r1" \
+       "xor.w @(0x12345678:32,r2.w),r1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er2.l\\),r1" \
+       "xor.w @(0x12345678:32,er2.l),r1"
+gdb_test "x" "xor.w\t@0x1234(:16|),r1" \
+       "xor.w @0x1234:16,r1"
+gdb_test "x" "xor.w\t@0x12345678(:32|),r1" \
+       "xor.w @0x12345678:32,r1"
+gdb_test "x" "xor.w\t@er3,@er1" \
+       "xor.w @er3,@er1"
+gdb_test "x" "xor.w\t@er3,@\\(0x6(:2|),er1\\)" \
+       "xor.w @er3,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@er3,@-er1" \
+       "xor.w @er3,@-er1"
+gdb_test "x" "xor.w\t@er3,@er1\\+" \
+       "xor.w @er3,@er1+"
+gdb_test "x" "xor.w\t@er3,@er1-" \
+       "xor.w @er3,@er1-"
+gdb_test "x" "xor.w\t@er3,@\\+er1" \
+       "xor.w @er3,@+er1"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@er3,@0x9abc(:16|)" \
+       "xor.w @er3,@0x9abc:16"
+gdb_test "x" "xor.w\t@er3,@0x9abcdef0(:32|)" \
+       "xor.w @er3,@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@-er3,@er1" \
+       "xor.w @-er3,@er1"
+gdb_test "x" "xor.w\t@-er3,@\\(0x6(:2|),er1\\)" \
+       "xor.w @-er3,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@-er3,@-er1" \
+       "xor.w @-er3,@-er1"
+gdb_test "x" "xor.w\t@-er3,@er1\\+" \
+       "xor.w @-er3,@er1+"
+gdb_test "x" "xor.w\t@-er3,@er1-" \
+       "xor.w @-er3,@er1-"
+gdb_test "x" "xor.w\t@-er3,@\\+er1" \
+       "xor.w @-er3,@+er1"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@-er3,@0x9abc(:16|)" \
+       "xor.w @-er3,@0x9abc:16"
+gdb_test "x" "xor.w\t@-er3,@0x9abcdef0(:32|)" \
+       "xor.w @-er3,@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@er3\\+,@er1" \
+       "xor.w @er3+,@er1"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x6(:2|),er1\\)" \
+       "xor.w @er3+,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@er3\\+,@-er1" \
+       "xor.w @er3+,@-er1"
+gdb_test "x" "xor.w\t@er3\\+,@er1\\+" \
+       "xor.w @er3+,@er1+"
+gdb_test "x" "xor.w\t@er3\\+,@er1-" \
+       "xor.w @er3+,@er1-"
+gdb_test "x" "xor.w\t@er3\\+,@\\+er1" \
+       "xor.w @er3+,@+er1"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@er3\\+,@0x9abc(:16|)" \
+       "xor.w @er3+,@0x9abc:16"
+gdb_test "x" "xor.w\t@er3\\+,@0x9abcdef0(:32|)" \
+       "xor.w @er3+,@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@er3-,@er1" \
+       "xor.w @er3-,@er1"
+gdb_test "x" "xor.w\t@er3-,@\\(0x6(:2|),er1\\)" \
+       "xor.w @er3-,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@er3-,@-er1" \
+       "xor.w @er3-,@-er1"
+gdb_test "x" "xor.w\t@er3-,@er1\\+" \
+       "xor.w @er3-,@er1+"
+gdb_test "x" "xor.w\t@er3-,@er1-" \
+       "xor.w @er3-,@er1-"
+gdb_test "x" "xor.w\t@er3-,@\\+er1" \
+       "xor.w @er3-,@+er1"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@er3-,@0x9abc(:16|)" \
+       "xor.w @er3-,@0x9abc:16"
+gdb_test "x" "xor.w\t@er3-,@0x9abcdef0(:32|)" \
+       "xor.w @er3-,@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\+er3,@er1" \
+       "xor.w @+er3,@er1"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x6(:2|),er1\\)" \
+       "xor.w @+er3,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\+er3,@-er1" \
+       "xor.w @+er3,@-er1"
+gdb_test "x" "xor.w\t@\\+er3,@er1\\+" \
+       "xor.w @+er3,@er1+"
+gdb_test "x" "xor.w\t@\\+er3,@er1-" \
+       "xor.w @+er3,@er1-"
+gdb_test "x" "xor.w\t@\\+er3,@\\+er1" \
+       "xor.w @+er3,@+er1"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\+er3,@0x9abc(:16|)" \
+       "xor.w @+er3,@0x9abc:16"
+gdb_test "x" "xor.w\t@\\+er3,@0x9abcdef0(:32|)" \
+       "xor.w @+er3,@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@er1" \
+       "xor.w @(0x1234:16,er3),@er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x1234:16,er3),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "xor.w @(0x1234:16,er3),@-er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "xor.w @(0x1234:16,er3),@er1+"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "xor.w @(0x1234:16,er3),@er1-"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "xor.w @(0x1234:16,er3),@+er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "xor.w @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "xor.w @(0x12345678:32,er3),@er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "xor.w @(0x12345678:32,er3),@-er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "xor.w @(0x12345678:32,er3),@er1+"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "xor.w @(0x12345678:32,er3),@er1-"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "xor.w @(0x12345678:32,er3),@+er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "xor.w @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "xor.w @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "xor.w @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "xor.w @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "xor.w @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "xor.w @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "xor.w @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "xor.w @(0x1234:16,r3.w),@er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "xor.w @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "xor.w @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "xor.w @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "xor.w @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "xor.w @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "xor.w @(0x1234:16,er3.l),@er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "xor.w @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "xor.w @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "xor.w @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "xor.w @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "xor.w @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "xor.w @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "xor.w @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "xor.w @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "xor.w @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "xor.w @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "xor.w @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "xor.w @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "xor.w @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "xor.w @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "xor.w @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "xor.w @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "xor.w @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "xor.w @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "xor.w @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "xor.w @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "xor.w @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "xor.w @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "xor.w @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "xor.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "xor.w @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@0x1234(:16|),@er1" \
+       "xor.w @0x1234:16,@er1"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "xor.w @0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@-er1" \
+       "xor.w @0x1234:16,@-er1"
+gdb_test "x" "xor.w\t@0x1234(:16|),@er1\\+" \
+       "xor.w @0x1234:16,@er1+"
+gdb_test "x" "xor.w\t@0x1234(:16|),@er1-" \
+       "xor.w @0x1234:16,@er1-"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\+er1" \
+       "xor.w @0x1234:16,@+er1"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@0x1234(:16|),@0x9abc(:16|)" \
+       "xor.w @0x1234:16,@0x9abc:16"
+gdb_test "x" "xor.w\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "xor.w @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@er1" \
+       "xor.w @0x12345678:32,@er1"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x6(:2|),er1\\)" \
+       "xor.w @0x12345678:32,@(0x6:2,er1)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@-er1" \
+       "xor.w @0x12345678:32,@-er1"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@er1\\+" \
+       "xor.w @0x12345678:32,@er1+"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@er1-" \
+       "xor.w @0x12345678:32,@er1-"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\+er1" \
+       "xor.w @0x12345678:32,@+er1"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.w @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.w @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.w @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.w @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.w @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.w @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.w @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "xor.w @0x12345678:32,@0x9abc:16"
+gdb_test "x" "xor.w\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "xor.w @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t#0x12345678(:32|),er1" \
+       "xor.l #0x12345678:32,er1"
+gdb_test "x" "xor.l\t#0x1234(:16|),er1" \
+       "xor.l #0x1234:16,er1"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@er1" \
+       "xor.l #0x12345678:32,@er1"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "xor.l #0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@er1\\+" \
+       "xor.l #0x12345678:32,@er1+"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@-er1" \
+       "xor.l #0x12345678:32,@-er1"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\+er1" \
+       "xor.l #0x12345678:32,@+er1"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@er1-" \
+       "xor.l #0x12345678:32,@er1-"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l #0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l #0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l #0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l #0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l #0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l #0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l #0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@0x9abc(:16|)" \
+       "xor.l #0x12345678:32,@0x9abc:16"
+gdb_test "x" "xor.l\t#0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "xor.l #0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t#0x1234(:16|),@er1" \
+       "xor.l #0x1234:16,@er1"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "xor.l #0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@er1\\+" \
+       "xor.l #0x1234:16,@er1+"
+gdb_test "x" "xor.l\t#0x1234(:16|),@-er1" \
+       "xor.l #0x1234:16,@-er1"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\+er1" \
+       "xor.l #0x1234:16,@+er1"
+gdb_test "x" "xor.l\t#0x1234(:16|),@er1-" \
+       "xor.l #0x1234:16,@er1-"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t#0x1234(:16|),@0x9abc(:16|)" \
+       "xor.l #0x1234:16,@0x9abc:16"
+gdb_test "x" "xor.l\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "xor.l #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "xor.l\ter3,er1" \
+       "xor.l er3,er1"
+gdb_test "x" "xor.l\ter3,@er1" \
+       "xor.l er3,@er1"
+gdb_test "x" "xor.l\ter3,@\\(0xc(:2|),er1\\)" \
+       "xor.l er3,@(0xc:2,er1)"
+gdb_test "x" "xor.l\ter3,@er1\\+" \
+       "xor.l er3,@er1+"
+gdb_test "x" "xor.l\ter3,@-er1" \
+       "xor.l er3,@-er1"
+gdb_test "x" "xor.l\ter3,@\\+er1" \
+       "xor.l er3,@+er1"
+gdb_test "x" "xor.l\ter3,@er1-" \
+       "xor.l er3,@er1-"
+gdb_test "x" "xor.l\ter3,@\\(0x1234(:16|),er1\\)" \
+       "xor.l er3,@(0x1234:16,er1)"
+gdb_test "x" "xor.l\ter3,@\\(0x12345678(:32|),er1\\)" \
+       "xor.l er3,@(0x12345678:32,er1)"
+gdb_test "x" "xor.l\ter3,@\\(0x1234(:16|),r2l.b\\)" \
+       "xor.l er3,@(0x1234:16,r2l.b)"
+gdb_test "x" "xor.l\ter3,@\\(0x1234(:16|),r2.w\\)" \
+       "xor.l er3,@(0x1234:16,r2.w)"
+gdb_test "x" "xor.l\ter3,@\\(0x1234(:16|),er2.l\\)" \
+       "xor.l er3,@(0x1234:16,er2.l)"
+gdb_test "x" "xor.l\ter3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "xor.l er3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "xor.l\ter3,@\\(0x12345678(:32|),r2.w\\)" \
+       "xor.l er3,@(0x12345678:32,r2.w)"
+gdb_test "x" "xor.l\ter3,@\\(0x12345678(:32|),er2.l\\)" \
+       "xor.l er3,@(0x12345678:32,er2.l)"
+gdb_test "x" "xor.l\ter3,@0x1234(:16|)" \
+       "xor.l er3,@0x1234:16"
+gdb_test "x" "xor.l\ter3,@0x12345678(:32|)" \
+       "xor.l er3,@0x12345678:32"
+gdb_test "x" "xor.l\t@er3,er1" \
+       "xor.l @er3,er1"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),er1" \
+       "xor.l @(0xc:2,er3),er1"
+gdb_test "x" "xor.l\t@er3\\+,er1" \
+       "xor.l @er3+,er1"
+gdb_test "x" "xor.l\t@-er3,er1" \
+       "xor.l @-er3,er1"
+gdb_test "x" "xor.l\t@\\+er3,er1" \
+       "xor.l @+er3,er1"
+gdb_test "x" "xor.l\t@er3-,er1" \
+       "xor.l @er3-,er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er1\\),er1" \
+       "xor.l @(0x1234:16,er1),er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er1\\),er1" \
+       "xor.l @(0x12345678:32,er1),er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r2l.b\\),er1" \
+       "xor.l @(0x1234:16,r2l.b),er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r2.w\\),er1" \
+       "xor.l @(0x1234:16,r2.w),er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er2.l\\),er1" \
+       "xor.l @(0x1234:16,er2.l),er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r2l.b\\),er1" \
+       "xor.l @(0x12345678:32,r2l.b),er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r2.w\\),er1" \
+       "xor.l @(0x12345678:32,r2.w),er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er2.l\\),er1" \
+       "xor.l @(0x12345678:32,er2.l),er1"
+gdb_test "x" "xor.l\t@0x1234(:16|),er1" \
+       "xor.l @0x1234:16,er1"
+gdb_test "x" "xor.l\t@0x12345678(:32|),er1" \
+       "xor.l @0x12345678:32,er1"
+gdb_test "x" "xor.l\t@er3,@er1" \
+       "xor.l @er3,@er1"
+gdb_test "x" "xor.l\t@er3,@\\(0xc(:2|),er1\\)" \
+       "xor.l @er3,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@er3,@-er1" \
+       "xor.l @er3,@-er1"
+gdb_test "x" "xor.l\t@er3,@er1\\+" \
+       "xor.l @er3,@er1+"
+gdb_test "x" "xor.l\t@er3,@er1-" \
+       "xor.l @er3,@er1-"
+gdb_test "x" "xor.l\t@er3,@\\+er1" \
+       "xor.l @er3,@+er1"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@er3,@0x9abc(:16|)" \
+       "xor.l @er3,@0x9abc:16"
+gdb_test "x" "xor.l\t@er3,@0x9abcdef0(:32|)" \
+       "xor.l @er3,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@er1" \
+       "xor.l @(0xc:2,er3),@er1"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0xc:2,er3),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@-er1" \
+       "xor.l @(0xc:2,er3),@-er1"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@er1\\+" \
+       "xor.l @(0xc:2,er3),@er1+"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@er1-" \
+       "xor.l @(0xc:2,er3),@er1-"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\+er1" \
+       "xor.l @(0xc:2,er3),@+er1"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@0x9abc(:16|)" \
+       "xor.l @(0xc:2,er3),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0xc(:2|),er3\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0xc:2,er3),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@-er3,@er1" \
+       "xor.l @-er3,@er1"
+gdb_test "x" "xor.l\t@-er3,@\\(0xc(:2|),er1\\)" \
+       "xor.l @-er3,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@-er3,@-er1" \
+       "xor.l @-er3,@-er1"
+gdb_test "x" "xor.l\t@-er3,@er1\\+" \
+       "xor.l @-er3,@er1+"
+gdb_test "x" "xor.l\t@-er3,@er1-" \
+       "xor.l @-er3,@er1-"
+gdb_test "x" "xor.l\t@-er3,@\\+er1" \
+       "xor.l @-er3,@+er1"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@-er3,@0x9abc(:16|)" \
+       "xor.l @-er3,@0x9abc:16"
+gdb_test "x" "xor.l\t@-er3,@0x9abcdef0(:32|)" \
+       "xor.l @-er3,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@er3\\+,@er1" \
+       "xor.l @er3+,@er1"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0xc(:2|),er1\\)" \
+       "xor.l @er3+,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@er3\\+,@-er1" \
+       "xor.l @er3+,@-er1"
+gdb_test "x" "xor.l\t@er3\\+,@er1\\+" \
+       "xor.l @er3+,@er1+"
+gdb_test "x" "xor.l\t@er3\\+,@er1-" \
+       "xor.l @er3+,@er1-"
+gdb_test "x" "xor.l\t@er3\\+,@\\+er1" \
+       "xor.l @er3+,@+er1"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@er3\\+,@0x9abc(:16|)" \
+       "xor.l @er3+,@0x9abc:16"
+gdb_test "x" "xor.l\t@er3\\+,@0x9abcdef0(:32|)" \
+       "xor.l @er3+,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@er3-,@er1" \
+       "xor.l @er3-,@er1"
+gdb_test "x" "xor.l\t@er3-,@\\(0xc(:2|),er1\\)" \
+       "xor.l @er3-,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@er3-,@-er1" \
+       "xor.l @er3-,@-er1"
+gdb_test "x" "xor.l\t@er3-,@er1\\+" \
+       "xor.l @er3-,@er1+"
+gdb_test "x" "xor.l\t@er3-,@er1-" \
+       "xor.l @er3-,@er1-"
+gdb_test "x" "xor.l\t@er3-,@\\+er1" \
+       "xor.l @er3-,@+er1"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@er3-,@0x9abc(:16|)" \
+       "xor.l @er3-,@0x9abc:16"
+gdb_test "x" "xor.l\t@er3-,@0x9abcdef0(:32|)" \
+       "xor.l @er3-,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\+er3,@er1" \
+       "xor.l @+er3,@er1"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0xc(:2|),er1\\)" \
+       "xor.l @+er3,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\+er3,@-er1" \
+       "xor.l @+er3,@-er1"
+gdb_test "x" "xor.l\t@\\+er3,@er1\\+" \
+       "xor.l @+er3,@er1+"
+gdb_test "x" "xor.l\t@\\+er3,@er1-" \
+       "xor.l @+er3,@er1-"
+gdb_test "x" "xor.l\t@\\+er3,@\\+er1" \
+       "xor.l @+er3,@+er1"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\+er3,@0x9abc(:16|)" \
+       "xor.l @+er3,@0x9abc:16"
+gdb_test "x" "xor.l\t@\\+er3,@0x9abcdef0(:32|)" \
+       "xor.l @+er3,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@er1" \
+       "xor.l @(0x1234:16,er3),@er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x1234:16,er3),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "xor.l @(0x1234:16,er3),@-er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "xor.l @(0x1234:16,er3),@er1+"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "xor.l @(0x1234:16,er3),@er1-"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "xor.l @(0x1234:16,er3),@+er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "xor.l @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "xor.l @(0x12345678:32,er3),@er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x12345678:32,er3),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "xor.l @(0x12345678:32,er3),@-er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "xor.l @(0x12345678:32,er3),@er1+"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "xor.l @(0x12345678:32,er3),@er1-"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "xor.l @(0x12345678:32,er3),@+er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "xor.l @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "xor.l @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "xor.l @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "xor.l @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "xor.l @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "xor.l @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "xor.l @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "xor.l @(0x1234:16,r3.w),@er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "xor.l @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "xor.l @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "xor.l @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "xor.l @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "xor.l @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "xor.l @(0x1234:16,er3.l),@er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "xor.l @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "xor.l @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "xor.l @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "xor.l @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "xor.l @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "xor.l @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "xor.l @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "xor.l @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "xor.l @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "xor.l @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "xor.l @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "xor.l @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "xor.l @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "xor.l @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "xor.l @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "xor.l @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "xor.l @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "xor.l @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "xor.l @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "xor.l @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "xor.l @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "xor.l @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "xor.l @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "xor.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "xor.l @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@0x1234(:16|),@er1" \
+       "xor.l @0x1234:16,@er1"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "xor.l @0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@-er1" \
+       "xor.l @0x1234:16,@-er1"
+gdb_test "x" "xor.l\t@0x1234(:16|),@er1\\+" \
+       "xor.l @0x1234:16,@er1+"
+gdb_test "x" "xor.l\t@0x1234(:16|),@er1-" \
+       "xor.l @0x1234:16,@er1-"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\+er1" \
+       "xor.l @0x1234:16,@+er1"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@0x1234(:16|),@0x9abc(:16|)" \
+       "xor.l @0x1234:16,@0x9abc:16"
+gdb_test "x" "xor.l\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "xor.l @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@er1" \
+       "xor.l @0x12345678:32,@er1"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "xor.l @0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@-er1" \
+       "xor.l @0x12345678:32,@-er1"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@er1\\+" \
+       "xor.l @0x12345678:32,@er1+"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@er1-" \
+       "xor.l @0x12345678:32,@er1-"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\+er1" \
+       "xor.l @0x12345678:32,@+er1"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "xor.l @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "xor.l @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "xor.l @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "xor.l @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "xor.l @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "xor.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "xor.l @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "xor.l @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "xor.l @0x12345678:32,@0x9abc:16"
+gdb_test "x" "xor.l\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "xor.l @0x12345678:32,@0x9abcdef0:32"
diff --git a/gdb/testsuite/gdb.disasm/t09_xor.s b/gdb/testsuite/gdb.disasm/t09_xor.s
new file mode 100644 (file)
index 0000000..7b9e8c4
--- /dev/null
@@ -0,0 +1,972 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;log_1\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    xor.b #0x12:8,r1h           ;d112\r
+    xor.b #0x12:8,@er1          ;7d10d012\r
+    xor.b #0x12:8,@(0x3:2,er1)    ;01776818d012\r
+    xor.b #0x12:8,@er1+         ;01746c18d012\r
+    xor.b #0x12:8,@-er1         ;01776c18d012\r
+    xor.b #0x12:8,@+er1         ;01756c18d012\r
+    xor.b #0x12:8,@er1-         ;01766c18d012\r
+    xor.b #0x12:8,@(0x1234:16,er1)   ;01746e181234d012\r
+    xor.b #0x12:8,@(0x12345678:32,er1)   ;78146a2812345678d012\r
+    xor.b #0x12:8,@(0x1234:16,r2l.b) ;01756e281234d012\r
+    xor.b #0x12:8,@(0x1234:16,r2.w) ;01766e281234d012\r
+    xor.b #0x12:8,@(0x1234:16,er2.l) ;01776e281234d012\r
+    xor.b #0x12:8,@(0x12345678:32,r2l.b) ;78256a2812345678d012\r
+    xor.b #0x12:8,@(0x12345678:32,r2.w) ;78266a2812345678d012\r
+    xor.b #0x12:8,@(0x12345678:32,er2.l) ;78276a2812345678d012\r
+    xor.b #0x12:8,@0xffffff12:8         ;7f12d012\r
+    xor.b #0x12:8,@0x1234:16        ;6a181234d012\r
+    xor.b #0x12:8,@0x12345678:32        ;6a3812345678d012\r
+\r
+    xor.b r3h,r1h              ;1531\r
+\r
+    xor.b r3h,@er1            ;7d101530\r
+    xor.b r3h,@(0x3:2,er1)      ;01793153\r
+    xor.b r3h,@er1+           ;01798153\r
+    xor.b r3h,@-er1           ;0179b153\r
+    xor.b r3h,@+er1           ;01799153\r
+    xor.b r3h,@er1-           ;0179a153\r
+    xor.b r3h,@(0x1234:16,er1)     ;0179c1531234\r
+    xor.b r3h,@(0x12345678:32,er1)     ;0179c95312345678\r
+    xor.b r3h,@(0x1234:16,r2l.b)   ;0179d2531234\r
+    xor.b r3h,@(0x1234:16,r2.w)   ;0179e2531234\r
+    xor.b r3h,@(0x1234:16,er2.l)   ;0179f2531234\r
+    xor.b r3h,@(0x12345678:32,r2l.b)   ;0179da5312345678\r
+    xor.b r3h,@(0x12345678:32,r2.w)   ;0179ea5312345678\r
+    xor.b r3h,@(0x12345678:32,er2.l)   ;0179fa5312345678\r
+    xor.b r3h,@0xffffff12:8           ;7f121530\r
+    xor.b r3h,@0x1234:16          ;6a1812341530\r
+    xor.b r3h,@0x12345678:32           ;6a38123456781530\r
+\r
+    xor.b @er3,r1h            ;7c301501\r
+    xor.b @(0x3:2,er3),r1h     ;017a3351\r
+    xor.b @er3+,r1h          ;017a8351\r
+    xor.b @-er3,r1h          ;017ab351\r
+    xor.b @+er3,r1h          ;017a9351\r
+    xor.b @er3-,r1h          ;017aa351\r
+    xor.b @(0x1234:16,er1),r1h     ;017ac1511234\r
+    xor.b @(0x12345678:32,er1),r1h     ;017ac95112345678\r
+    xor.b @(0x1234:16,r2l.b),r1h   ;017ad2511234\r
+    xor.b @(0x1234:16,r2.w),r1h   ;017ae2511234\r
+    xor.b @(0x1234:16,er2.l),r1h   ;017af2511234\r
+    xor.b @(0x12345678:32,r2l.b),r1h   ;017ada5112345678\r
+    xor.b @(0x12345678:32,r2.w),r1h   ;017aea5112345678\r
+    xor.b @(0x12345678:32,er2.l),r1h   ;017afa5112345678\r
+    xor.b @0xffffff12:8,r1h           ;7e121501\r
+    xor.b @0x1234:16,r1h          ;6a1012341501\r
+    xor.b @0x12345678:32,r1h          ;6a30123456781501\r
+\r
+    xor.b @er3,@er1                                ;7c350150\r
+    xor.b @er3,@(3:2,er1)                          ;7c353150\r
+    xor.b @er3,@-er1                               ;7c35b150\r
+    xor.b @er3,@er1+                               ;7c358150\r
+    xor.b @er3,@er1-                               ;7c35a150\r
+    xor.b @er3,@+er1                               ;7c359150\r
+    xor.b @er3,@(0xffff9abc:16,er1)                ;7c35c1509abc\r
+    xor.b @er3,@(0x9abcdef0:32,er1)                ;7c35c9509abcdef0\r
+    xor.b @er3,@(0xffff9abc:16,r2l.b)              ;7c35d2509abc\r
+    xor.b @er3,@(0xffff9abc:16,r2.w)              ;7c35e2509abc\r
+    xor.b @er3,@(0xffff9abc:16,er2.l)              ;7c35f2509abc\r
+    xor.b @er3,@(0x9abcdef0:32,r2l.b)              ;7c35da509abcdef0\r
+    xor.b @er3,@(0x9abcdef0:32,r2.w)              ;7c35ea509abcdef0\r
+    xor.b @er3,@(0x9abcdef0:32,er2.l)              ;7c35fa509abcdef0\r
+    xor.b @er3,@0xffff9abc:16                      ;7c3540509abc\r
+    xor.b @er3,@0x9abcdef0:32                      ;7c3548509abcdef0\r
+\r
+    xor.b @-er3,@er1                               ;01776c3c0150\r
+    xor.b @-er3,@(3:2,er1)                         ;01776c3c3150\r
+    xor.b @-er3,@-er1                              ;01776c3cb150\r
+    xor.b @-er3,@er1+                              ;01776c3c8150\r
+    xor.b @-er3,@er1-                              ;01776c3ca150\r
+    xor.b @-er3,@+er1                              ;01776c3c9150\r
+    xor.b @-er3,@(0xffff9abc:16,er1)               ;01776c3cc1509abc\r
+    xor.b @-er3,@(0x9abcdef0:32,er1)               ;01776c3cc9509abcdef0\r
+    xor.b @-er3,@(0xffff9abc:16,r2l.b)             ;01776c3cd2509abc\r
+    xor.b @-er3,@(0xffff9abc:16,r2.w)             ;01776c3ce2509abc\r
+    xor.b @-er3,@(0xffff9abc:16,er2.l)             ;01776c3cf2509abc\r
+    xor.b @-er3,@(0x9abcdef0:32,r2l.b)             ;01776c3cda509abcdef0\r
+    xor.b @-er3,@(0x9abcdef0:32,r2.w)             ;01776c3cea509abcdef0\r
+    xor.b @-er3,@(0x9abcdef0:32,er2.l)             ;01776c3cfa509abcdef0\r
+    xor.b @-er3,@0xffff9abc:16                     ;01776c3c40509abc\r
+    xor.b @-er3,@0x9abcdef0:32                     ;01776c3c48509abcdef0\r
+\r
+    xor.b @er3+,@er1                               ;01746c3c0150\r
+    xor.b @er3+,@(3:2,er1)                         ;01746c3c3150\r
+    xor.b @er3+,@-er1                              ;01746c3cb150\r
+    xor.b @er3+,@er1+                              ;01746c3c8150\r
+    xor.b @er3+,@er1-                              ;01746c3ca150\r
+    xor.b @er3+,@+er1                              ;01746c3c9150\r
+    xor.b @er3+,@(0xffff9abc:16,er1)               ;01746c3cc1509abc\r
+    xor.b @er3+,@(0x9abcdef0:32,er1)               ;01746c3cc9509abcdef0\r
+    xor.b @er3+,@(0xffff9abc:16,r2l.b)             ;01746c3cd2509abc\r
+    xor.b @er3+,@(0xffff9abc:16,r2.w)             ;01746c3ce2509abc\r
+    xor.b @er3+,@(0xffff9abc:16,er2.l)             ;01746c3cf2509abc\r
+    xor.b @er3+,@(0x9abcdef0:32,r2l.b)             ;01746c3cda509abcdef0\r
+    xor.b @er3+,@(0x9abcdef0:32,r2.w)             ;01746c3cea509abcdef0\r
+    xor.b @er3+,@(0x9abcdef0:32,er2.l)             ;01746c3cfa509abcdef0\r
+    xor.b @er3+,@0xffff9abc:16                     ;01746c3c40509abc\r
+    xor.b @er3+,@0x9abcdef0:32                     ;01746c3c48509abcdef0\r
+\r
+    xor.b @er3-,@er1                               ;01766c3c0150\r
+    xor.b @er3-,@(3:2,er1)                         ;01766c3c3150\r
+    xor.b @er3-,@-er1                              ;01766c3cb150\r
+    xor.b @er3-,@er1+                              ;01766c3c8150\r
+    xor.b @er3-,@er1-                              ;01766c3ca150\r
+    xor.b @er3-,@+er1                              ;01766c3c9150\r
+    xor.b @er3-,@(0xffff9abc:16,er1)               ;01766c3cc1509abc\r
+    xor.b @er3-,@(0x9abcdef0:32,er1)               ;01766c3cc9509abcdef0\r
+    xor.b @er3-,@(0xffff9abc:16,r2l.b)             ;01766c3cd2509abc\r
+    xor.b @er3-,@(0xffff9abc:16,r2.w)             ;01766c3ce2509abc\r
+    xor.b @er3-,@(0xffff9abc:16,er2.l)             ;01766c3cf2509abc\r
+    xor.b @er3-,@(0x9abcdef0:32,r2l.b)             ;01766c3cda509abcdef0\r
+    xor.b @er3-,@(0x9abcdef0:32,r2.w)             ;01766c3cea509abcdef0\r
+    xor.b @er3-,@(0x9abcdef0:32,er2.l)             ;01766c3cfa509abcdef0\r
+    xor.b @er3-,@0xffff9abc:16                     ;01766c3c40509abc\r
+    xor.b @er3-,@0x9abcdef0:32                     ;01766c3c48509abcdef0\r
+\r
+    xor.b @+er3,@er1                               ;01756c3c0150\r
+    xor.b @+er3,@(3:2,er1)                         ;01756c3c3150\r
+    xor.b @+er3,@-er1                              ;01756c3cb150\r
+    xor.b @+er3,@er1+                              ;01756c3c8150\r
+    xor.b @+er3,@er1-                              ;01756c3ca150\r
+    xor.b @+er3,@+er1                              ;01756c3c9150\r
+    xor.b @+er3,@(0xffff9abc:16,er1)               ;01756c3cc1509abc\r
+    xor.b @+er3,@(0x9abcdef0:32,er1)               ;01756c3cc9509abcdef0\r
+    xor.b @+er3,@(0xffff9abc:16,r2l.b)             ;01756c3cd2509abc\r
+    xor.b @+er3,@(0xffff9abc:16,r2.w)             ;01756c3ce2509abc\r
+    xor.b @+er3,@(0xffff9abc:16,er2.l)             ;01756c3cf2509abc\r
+    xor.b @+er3,@(0x9abcdef0:32,r2l.b)             ;01756c3cda509abcdef0\r
+    xor.b @+er3,@(0x9abcdef0:32,r2.w)             ;01756c3cea509abcdef0\r
+    xor.b @+er3,@(0x9abcdef0:32,er2.l)             ;01756c3cfa509abcdef0\r
+    xor.b @+er3,@0xffff9abc:16                     ;01756c3c40509abc\r
+    xor.b @+er3,@0x9abcdef0:32                     ;01756c3c48509abcdef0\r
+\r
+    xor.b @(0x1234:16,er3),@er1                         ;01746e3c12340150\r
+    xor.b @(0x1234:16,er3),@(3:2,er1)                   ;01746e3c12343150\r
+    xor.b @(0x1234:16,er3),@-er1                        ;01746e3c1234b150\r
+    xor.b @(0x1234:16,er3),@er1+                        ;01746e3c12348150\r
+    xor.b @(0x1234:16,er3),@er1-                        ;01746e3c1234a150\r
+    xor.b @(0x1234:16,er3),@+er1                        ;01746e3c12349150\r
+    xor.b @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01746e3c1234c1509abc\r
+    xor.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01746e3c1234c9509abcdef0\r
+    xor.b @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01746e3c1234d2509abc\r
+    xor.b @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01746e3c1234e2509abc\r
+    xor.b @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01746e3c1234f2509abc\r
+    xor.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01746e3c1234da509abcdef0\r
+    xor.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01746e3c1234ea509abcdef0\r
+    xor.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01746e3c1234fa509abcdef0\r
+    xor.b @(0x1234:16,er3),@0xffff9abc:16               ;01746e3c123440509abc\r
+    xor.b @(0x1234:16,er3),@0x9abcdef0:32               ;01746e3c123448509abcdef0\r
+\r
+    xor.b @(0x12345678:32,er3),@er1                         ;78346a2c123456780150\r
+    xor.b @(0x12345678:32,er3),@(3:2,er1)                   ;78346a2c123456783150\r
+    xor.b @(0x12345678:32,er3),@-er1                        ;78346a2c12345678b150\r
+    xor.b @(0x12345678:32,er3),@er1+                        ;78346a2c123456788150\r
+    xor.b @(0x12345678:32,er3),@er1-                        ;78346a2c12345678a150\r
+    xor.b @(0x12345678:32,er3),@+er1                        ;78346a2c123456789150\r
+    xor.b @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346a2c12345678c1509abc\r
+    xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346a2c12345678c9509abcdef0\r
+    xor.b @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346a2c12345678d2509abc\r
+    xor.b @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346a2c12345678e2509abc\r
+    xor.b @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346a2c12345678f2509abc\r
+    xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346a2c12345678da509abcdef0\r
+    xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346a2c12345678ea509abcdef0\r
+    xor.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346a2c12345678fa509abcdef0\r
+    xor.b @(0x12345678:32,er3),@0xffff9abc:16               ;78346a2c1234567840509abc\r
+    xor.b @(0x12345678:32,er3),@0x9abcdef0:32               ;78346a2c1234567848509abcdef0\r
+\r
+    xor.b @(0x1234:16,r3l.b),@er1                       ;01756e3c12340150\r
+    xor.b @(0x1234:16,r3l.b),@(3:2,er1)                 ;01756e3c12343150\r
+    xor.b @(0x1234:16,r3l.b),@-er1                      ;01756e3c1234b150\r
+    xor.b @(0x1234:16,r3l.b),@er1+                      ;01756e3c12348150\r
+    xor.b @(0x1234:16,r3l.b),@er1-                      ;01756e3c1234a150\r
+    xor.b @(0x1234:16,r3l.b),@+er1                      ;01756e3c12349150\r
+    xor.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01756e3c1234c1509abc\r
+    xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01756e3c1234c9509abcdef0\r
+    xor.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01756e3c1234d2509abc\r
+    xor.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01756e3c1234e2509abc\r
+    xor.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01756e3c1234f2509abc\r
+    xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01756e3c1234da509abcdef0\r
+    xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01756e3c1234ea509abcdef0\r
+    xor.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01756e3c1234fa509abcdef0\r
+    xor.b @(0x1234:16,r3l.b),@0xffff9abc:16             ;01756e3c123440509abc\r
+    xor.b @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01756e3c123448509abcdef0\r
+\r
+    xor.b @(0x1234:16,r3.w),@er1                       ;01766e3c12340150\r
+    xor.b @(0x1234:16,r3.w),@(3:2,er1)                 ;01766e3c12343150\r
+    xor.b @(0x1234:16,r3.w),@-er1                      ;01766e3c1234b150\r
+    xor.b @(0x1234:16,r3.w),@er1+                      ;01766e3c12348150\r
+    xor.b @(0x1234:16,r3.w),@er1-                      ;01766e3c1234a150\r
+    xor.b @(0x1234:16,r3.w),@+er1                      ;01766e3c12349150\r
+    xor.b @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01766e3c1234c1509abc\r
+    xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01766e3c1234c9509abcdef0\r
+    xor.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01766e3c1234d2509abc\r
+    xor.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01766e3c1234e2509abc\r
+    xor.b @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01766e3c1234f2509abc\r
+    xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01766e3c1234da509abcdef0\r
+    xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01766e3c1234ea509abcdef0\r
+    xor.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01766e3c1234fa509abcdef0\r
+    xor.b @(0x1234:16,r3.w),@0xffff9abc:16             ;01766e3c123440509abc\r
+    xor.b @(0x1234:16,r3.w),@0x9abcdef0:32             ;01766e3c123448509abcdef0\r
+\r
+    xor.b @(0x1234:16,er3.l),@er1                       ;01776e3c12340150\r
+    xor.b @(0x1234:16,er3.l),@(3:2,er1)                 ;01776e3c12343150\r
+    xor.b @(0x1234:16,er3.l),@-er1                      ;01776e3c1234b150\r
+    xor.b @(0x1234:16,er3.l),@er1+                      ;01776e3c12348150\r
+    xor.b @(0x1234:16,er3.l),@er1-                      ;01776e3c1234a150\r
+    xor.b @(0x1234:16,er3.l),@+er1                      ;01776e3c12349150\r
+    xor.b @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01776e3c1234c1509abc\r
+    xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01776e3c1234c9509abcdef0\r
+    xor.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01776e3c1234d2509abc\r
+    xor.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01776e3c1234e2509abc\r
+    xor.b @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01776e3c1234f2509abc\r
+    xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01776e3c1234da509abcdef0\r
+    xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01776e3c1234ea509abcdef0\r
+    xor.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01776e3c1234fa509abcdef0\r
+    xor.b @(0x1234:16,er3.l),@0xffff9abc:16             ;01776e3c123440509abc\r
+    xor.b @(0x1234:16,er3.l),@0x9abcdef0:32             ;01776e3c123448509abcdef0\r
+\r
+    xor.b @(0x12345678:32,r3l.b),@er1                       ;78356a2c123456780150\r
+    xor.b @(0x12345678:32,r3l.b),@(3:2,er1)                 ;78356a2c123456783150\r
+    xor.b @(0x12345678:32,r3l.b),@-er1                      ;78356a2c12345678b150\r
+    xor.b @(0x12345678:32,r3l.b),@er1+                      ;78356a2c123456788150\r
+    xor.b @(0x12345678:32,r3l.b),@er1-                      ;78356a2c12345678a150\r
+    xor.b @(0x12345678:32,r3l.b),@+er1                      ;78356a2c123456789150\r
+    xor.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356a2c12345678c1509abc\r
+    xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356a2c12345678c9509abcdef0\r
+    xor.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356a2c12345678d2509abc\r
+    xor.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356a2c12345678e2509abc\r
+    xor.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356a2c12345678f2509abc\r
+    xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356a2c12345678da509abcdef0\r
+    xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356a2c12345678ea509abcdef0\r
+    xor.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356a2c12345678fa509abcdef0\r
+    xor.b @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356a2c1234567840509abc\r
+    xor.b @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356a2c1234567848509abcdef0\r
+\r
+    xor.b @(0x12345678:32,r3.w),@er1                       ;78366a2c123456780150\r
+    xor.b @(0x12345678:32,r3.w),@(3:2,er1)                 ;78366a2c123456783150\r
+    xor.b @(0x12345678:32,r3.w),@-er1                      ;78366a2c12345678b150\r
+    xor.b @(0x12345678:32,r3.w),@er1+                      ;78366a2c123456788150\r
+    xor.b @(0x12345678:32,r3.w),@er1-                      ;78366a2c12345678a150\r
+    xor.b @(0x12345678:32,r3.w),@+er1                      ;78366a2c123456789150\r
+    xor.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366a2c12345678c1509abc\r
+    xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366a2c12345678c9509abcdef0\r
+    xor.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366a2c12345678d2509abc\r
+    xor.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366a2c12345678e2509abc\r
+    xor.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366a2c12345678f2509abc\r
+    xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366a2c12345678da509abcdef0\r
+    xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366a2c12345678ea509abcdef0\r
+    xor.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366a2c12345678fa509abcdef0\r
+    xor.b @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366a2c1234567840509abc\r
+    xor.b @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366a2c1234567848509abcdef0\r
+\r
+    xor.b @(0x12345678:32,er3.l),@er1                       ;78376a2c123456780150\r
+    xor.b @(0x12345678:32,er3.l),@(3:2,er1)                 ;78376a2c123456783150\r
+    xor.b @(0x12345678:32,er3.l),@-er1                      ;78376a2c12345678b150\r
+    xor.b @(0x12345678:32,er3.l),@er1+                      ;78376a2c123456788150\r
+    xor.b @(0x12345678:32,er3.l),@er1-                      ;78376a2c12345678a150\r
+    xor.b @(0x12345678:32,er3.l),@+er1                      ;78376a2c123456789150\r
+    xor.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376a2c12345678c1509abc\r
+    xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376a2c12345678c9509abcdef0\r
+    xor.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376a2c12345678d2509abc\r
+    xor.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376a2c12345678e2509abc\r
+    xor.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376a2c12345678f2509abc\r
+    xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376a2c12345678da509abcdef0\r
+    xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376a2c12345678ea509abcdef0\r
+    xor.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376a2c12345678fa509abcdef0\r
+    xor.b @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376a2c1234567840509abc\r
+    xor.b @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376a2c1234567848509abcdef0\r
+\r
+    xor.b @0x1234:16,@er1                              ;6a1512340150\r
+    xor.b @0x1234:16,@(3:2,er1)                        ;6a1512343150\r
+    xor.b @0x1234:16,@-er1                             ;6a151234b150\r
+    xor.b @0x1234:16,@er1+                             ;6a1512348150\r
+    xor.b @0x1234:16,@er1-                             ;6a151234a150\r
+    xor.b @0x1234:16,@+er1                             ;6a1512349150\r
+    xor.b @0x1234:16,@(0xffff9abc:16,er1)              ;6a151234c1509abc\r
+    xor.b @0x1234:16,@(0x9abcdef0:32,er1)              ;6a151234c9509abcdef0\r
+    xor.b @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6a151234d2509abc\r
+    xor.b @0x1234:16,@(0xffff9abc:16,r2.w)            ;6a151234e2509abc\r
+    xor.b @0x1234:16,@(0xffff9abc:16,er2.l)            ;6a151234f2509abc\r
+    xor.b @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6a151234da509abcdef0\r
+    xor.b @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6a151234ea509abcdef0\r
+    xor.b @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6a151234fa509abcdef0\r
+    xor.b @0x1234:16,@0xffff9abc:16                    ;6a15123440509abc\r
+    xor.b @0x1234:16,@0x9abcdef0:32                    ;6a15123448509abcdef0\r
+\r
+    xor.b @0x12345678:32,@er1                              ;6a35123456780150\r
+    xor.b @0x12345678:32,@(3:2,er1)                        ;6a35123456783150\r
+    xor.b @0x12345678:32,@-er1                             ;6a3512345678b150\r
+    xor.b @0x12345678:32,@er1+                             ;6a35123456788150\r
+    xor.b @0x12345678:32,@er1-                             ;6a3512345678a150\r
+    xor.b @0x12345678:32,@+er1                             ;6a35123456789150\r
+    xor.b @0x12345678:32,@(0xffff9abc:16,er1)              ;6a3512345678c1509abc\r
+    xor.b @0x12345678:32,@(0x9abcdef0:32,er1)              ;6a3512345678c9509abcdef0\r
+    xor.b @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6a3512345678d2509abc\r
+    xor.b @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6a3512345678e2509abc\r
+    xor.b @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6a3512345678f2509abc\r
+    xor.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6a3512345678da509abcdef0\r
+    xor.b @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6a3512345678ea509abcdef0\r
+    xor.b @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6a3512345678fa509abcdef0\r
+    xor.b @0x12345678:32,@0xffff9abc:16                    ;6a351234567840509abc\r
+    xor.b @0x12345678:32,@0x9abcdef0:32                    ;6a351234567848509abcdef0\r
+\r
+    xor.w #0x1234:16,r1           ;79511234\r
+    xor.w #0x1234:16,@er1          ;015e01501234\r
+    xor.w #0x1234:16,@(0x6:2,er1) ;015e31501234\r
+    xor.w #0x1234:16,@er1+         ;015e81501234\r
+    xor.w #0x1234:16,@-er1         ;015eb1501234\r
+    xor.w #0x1234:16,@+er1         ;015e91501234\r
+    xor.w #0x1234:16,@er1-         ;015ea1501234\r
+    xor.w #0x1234:16,@(0xffff9abc:16,er1)   ;015ec1509abc1234\r
+    xor.w #0x1234:16,@(0x9abcdef0:32,er1)   ;015ec9509abcdef01234\r
+    xor.w #0x1234:16,@(0xffff9abc:16,r2l.b) ;015ed2509abc1234\r
+    xor.w #0x1234:16,@(0xffff9abc:16,r2.w) ;015ee2509abc1234\r
+    xor.w #0x1234:16,@(0xffff9abc:16,er2.l) ;015ef2509abc1234\r
+    xor.w #0x1234:16,@(0x9abcdef0:32,r2l.b) ;015eda509abcdef01234\r
+    xor.w #0x1234:16,@(0x9abcdef0:32,r2.w) ;015eea509abcdef01234\r
+    xor.w #0x1234:16,@(0x9abcdef0:32,er2.l) ;015efa509abcdef01234\r
+    xor.w #0x1234:16,@0xffff9abc:16         ;015e40509abc1234\r
+    xor.w #0x1234:16,@0x9abcdef0:32         ;015e48509abcdef01234\r
+\r
+    xor.w r3,r1              ;6531\r
+\r
+    xor.w r3,@er1            ;7d906530\r
+    xor.w r3,@(0x6:2,er1)   ;01593153\r
+    xor.w r3,@-er1           ;0159b153\r
+    xor.w r3,@er1+           ;01598153\r
+    xor.w r3,@er1-           ;0159a153\r
+    xor.w r3,@+er1           ;01599153\r
+    xor.w r3,@(0x1234:16,er1)     ;0159c1531234\r
+    xor.w r3,@(0x12345678:32,er1)     ;0159c95312345678\r
+    xor.w r3,@(0x1234:16,r2l.b)   ;0159d2531234\r
+    xor.w r3,@(0x1234:16,r2.w)   ;0159e2531234\r
+    xor.w r3,@(0x1234:16,er2.l)   ;0159f2531234\r
+    xor.w r3,@(0x12345678:32,r2l.b)   ;0159da5312345678\r
+    xor.w r3,@(0x12345678:32,r2.w)   ;0159ea5312345678\r
+    xor.w r3,@(0x12345678:32,er2.l)   ;0159fa5312345678\r
+    xor.w r3,@0x1234:16          ;6b1812346530\r
+    xor.w r3,@0x12345678:32          ;6b38123456786530\r
+\r
+    xor.w @er3,r1            ;7cb06501\r
+    xor.w @(0x6:2,er3),r1  ;015a3351\r
+    xor.w @er3+,r1          ;015a8351\r
+    xor.w @-er3,r1          ;015ab351\r
+    xor.w @+er3,r1          ;015a9351\r
+    xor.w @er3-,r1          ;015aa351\r
+    xor.w @(0x1234:16,er1),r1     ;015ac1511234\r
+    xor.w @(0x12345678:32,er1),r1     ;015ac95112345678\r
+    xor.w @(0x1234:16,r2l.b),r1   ;015ad2511234\r
+    xor.w @(0x1234:16,r2.w),r1   ;015ae2511234\r
+    xor.w @(0x1234:16,er2.l),r1   ;015af2511234\r
+    xor.w @(0x12345678:32,r2l.b),r1   ;015ada5112345678\r
+    xor.w @(0x12345678:32,r2.w),r1   ;015aea5112345678\r
+    xor.w @(0x12345678:32,er2.l),r1   ;015afa5112345678\r
+    xor.w @0x1234:16,r1          ;6b1012346501\r
+    xor.w @0x12345678:32,r1          ;6b30123456786501\r
+\r
+    xor.w @er3,@er1                                ;7cb50150\r
+    xor.w @er3,@(6:2,er1)                          ;7cb53150\r
+    xor.w @er3,@-er1                               ;7cb5b150\r
+    xor.w @er3,@er1+                               ;7cb58150\r
+    xor.w @er3,@er1-                               ;7cb5a150\r
+    xor.w @er3,@+er1                               ;7cb59150\r
+    xor.w @er3,@(0xffff9abc:16,er1)                ;7cb5c1509abc\r
+    xor.w @er3,@(0x9abcdef0:32,er1)                ;7cb5c9509abcdef0\r
+    xor.w @er3,@(0xffff9abc:16,r2l.b)              ;7cb5d2509abc\r
+    xor.w @er3,@(0xffff9abc:16,r2.w)              ;7cb5e2509abc\r
+    xor.w @er3,@(0xffff9abc:16,er2.l)              ;7cb5f2509abc\r
+    xor.w @er3,@(0x9abcdef0:32,r2l.b)              ;7cb5da509abcdef0\r
+    xor.w @er3,@(0x9abcdef0:32,r2.w)              ;7cb5ea509abcdef0\r
+    xor.w @er3,@(0x9abcdef0:32,er2.l)              ;7cb5fa509abcdef0\r
+    xor.w @er3,@0xffff9abc:16                      ;7cb540509abc\r
+    xor.w @er3,@0x9abcdef0:32                      ;7cb548509abcdef0\r
+\r
+    xor.w @-er3,@er1                               ;01576d3c0150\r
+    xor.w @-er3,@(6:2,er1)                         ;01576d3c3150\r
+    xor.w @-er3,@-er1                              ;01576d3cb150\r
+    xor.w @-er3,@er1+                              ;01576d3c8150\r
+    xor.w @-er3,@er1-                              ;01576d3ca150\r
+    xor.w @-er3,@+er1                              ;01576d3c9150\r
+    xor.w @-er3,@(0xffff9abc:16,er1)               ;01576d3cc1509abc\r
+    xor.w @-er3,@(0x9abcdef0:32,er1)               ;01576d3cc9509abcdef0\r
+    xor.w @-er3,@(0xffff9abc:16,r2l.b)             ;01576d3cd2509abc\r
+    xor.w @-er3,@(0xffff9abc:16,r2.w)             ;01576d3ce2509abc\r
+    xor.w @-er3,@(0xffff9abc:16,er2.l)             ;01576d3cf2509abc\r
+    xor.w @-er3,@(0x9abcdef0:32,r2l.b)             ;01576d3cda509abcdef0\r
+    xor.w @-er3,@(0x9abcdef0:32,r2.w)             ;01576d3cea509abcdef0\r
+    xor.w @-er3,@(0x9abcdef0:32,er2.l)             ;01576d3cfa509abcdef0\r
+    xor.w @-er3,@0xffff9abc:16                     ;01576d3c40509abc\r
+    xor.w @-er3,@0x9abcdef0:32                     ;01576d3c48509abcdef0\r
+\r
+    xor.w @er3+,@er1                               ;01546d3c0150\r
+    xor.w @er3+,@(6:2,er1)                         ;01546d3c3150\r
+    xor.w @er3+,@-er1                              ;01546d3cb150\r
+    xor.w @er3+,@er1+                              ;01546d3c8150\r
+    xor.w @er3+,@er1-                              ;01546d3ca150\r
+    xor.w @er3+,@+er1                              ;01546d3c9150\r
+    xor.w @er3+,@(0xffff9abc:16,er1)               ;01546d3cc1509abc\r
+    xor.w @er3+,@(0x9abcdef0:32,er1)               ;01546d3cc9509abcdef0\r
+    xor.w @er3+,@(0xffff9abc:16,r2l.b)             ;01546d3cd2509abc\r
+    xor.w @er3+,@(0xffff9abc:16,r2.w)             ;01546d3ce2509abc\r
+    xor.w @er3+,@(0xffff9abc:16,er2.l)             ;01546d3cf2509abc\r
+    xor.w @er3+,@(0x9abcdef0:32,r2l.b)             ;01546d3cda509abcdef0\r
+    xor.w @er3+,@(0x9abcdef0:32,r2.w)             ;01546d3cea509abcdef0\r
+    xor.w @er3+,@(0x9abcdef0:32,er2.l)             ;01546d3cfa509abcdef0\r
+    xor.w @er3+,@0xffff9abc:16                     ;01546d3c40509abc\r
+    xor.w @er3+,@0x9abcdef0:32                     ;01546d3c48509abcdef0\r
+\r
+    xor.w @er3-,@er1                               ;01566d3c0150\r
+    xor.w @er3-,@(6:2,er1)                         ;01566d3c3150\r
+    xor.w @er3-,@-er1                              ;01566d3cb150\r
+    xor.w @er3-,@er1+                              ;01566d3c8150\r
+    xor.w @er3-,@er1-                              ;01566d3ca150\r
+    xor.w @er3-,@+er1                              ;01566d3c9150\r
+    xor.w @er3-,@(0xffff9abc:16,er1)               ;01566d3cc1509abc\r
+    xor.w @er3-,@(0x9abcdef0:32,er1)               ;01566d3cc9509abcdef0\r
+    xor.w @er3-,@(0xffff9abc:16,r2l.b)             ;01566d3cd2509abc\r
+    xor.w @er3-,@(0xffff9abc:16,r2.w)             ;01566d3ce2509abc\r
+    xor.w @er3-,@(0xffff9abc:16,er2.l)             ;01566d3cf2509abc\r
+    xor.w @er3-,@(0x9abcdef0:32,r2l.b)             ;01566d3cda509abcdef0\r
+    xor.w @er3-,@(0x9abcdef0:32,r2.w)             ;01566d3cea509abcdef0\r
+    xor.w @er3-,@(0x9abcdef0:32,er2.l)             ;01566d3cfa509abcdef0\r
+    xor.w @er3-,@0xffff9abc:16                     ;01566d3c40509abc\r
+    xor.w @er3-,@0x9abcdef0:32                     ;01566d3c48509abcdef0\r
+\r
+    xor.w @+er3,@er1                               ;01556d3c0150\r
+    xor.w @+er3,@(6:2,er1)                         ;01556d3c3150\r
+    xor.w @+er3,@-er1                              ;01556d3cb150\r
+    xor.w @+er3,@er1+                              ;01556d3c8150\r
+    xor.w @+er3,@er1-                              ;01556d3ca150\r
+    xor.w @+er3,@+er1                              ;01556d3c9150\r
+    xor.w @+er3,@(0xffff9abc:16,er1)               ;01556d3cc1509abc\r
+    xor.w @+er3,@(0x9abcdef0:32,er1)               ;01556d3cc9509abcdef0\r
+    xor.w @+er3,@(0xffff9abc:16,r2l.b)             ;01556d3cd2509abc\r
+    xor.w @+er3,@(0xffff9abc:16,r2.w)             ;01556d3ce2509abc\r
+    xor.w @+er3,@(0xffff9abc:16,er2.l)             ;01556d3cf2509abc\r
+    xor.w @+er3,@(0x9abcdef0:32,r2l.b)             ;01556d3cda509abcdef0\r
+    xor.w @+er3,@(0x9abcdef0:32,r2.w)             ;01556d3cea509abcdef0\r
+    xor.w @+er3,@(0x9abcdef0:32,er2.l)             ;01556d3cfa509abcdef0\r
+    xor.w @+er3,@0xffff9abc:16                     ;01556d3c40509abc\r
+    xor.w @+er3,@0x9abcdef0:32                     ;01556d3c48509abcdef0\r
+\r
+    xor.w @(0x1234:16,er3),@er1                         ;01546f3c12340150\r
+    xor.w @(0x1234:16,er3),@(6:2,er1)                   ;01546f3c12343150\r
+    xor.w @(0x1234:16,er3),@-er1                        ;01546f3c1234b150\r
+    xor.w @(0x1234:16,er3),@er1+                        ;01546f3c12348150\r
+    xor.w @(0x1234:16,er3),@er1-                        ;01546f3c1234a150\r
+    xor.w @(0x1234:16,er3),@+er1                        ;01546f3c12349150\r
+    xor.w @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01546f3c1234c1509abc\r
+    xor.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01546f3c1234c9509abcdef0\r
+    xor.w @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01546f3c1234d2509abc\r
+    xor.w @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01546f3c1234e2509abc\r
+    xor.w @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01546f3c1234f2509abc\r
+    xor.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01546f3c1234da509abcdef0\r
+    xor.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01546f3c1234ea509abcdef0\r
+    xor.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01546f3c1234fa509abcdef0\r
+    xor.w @(0x1234:16,er3),@0xffff9abc:16               ;01546f3c123440509abc\r
+    xor.w @(0x1234:16,er3),@0x9abcdef0:32               ;01546f3c123448509abcdef0\r
+\r
+    xor.w @(0x12345678:32,er3),@er1                         ;78346b2c123456780150\r
+    xor.w @(0x12345678:32,er3),@(6:2,er1)                   ;78346b2c123456783150\r
+    xor.w @(0x12345678:32,er3),@-er1                        ;78346b2c12345678b150\r
+    xor.w @(0x12345678:32,er3),@er1+                        ;78346b2c123456788150\r
+    xor.w @(0x12345678:32,er3),@er1-                        ;78346b2c12345678a150\r
+    xor.w @(0x12345678:32,er3),@+er1                        ;78346b2c123456789150\r
+    xor.w @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346b2c12345678c1509abc\r
+    xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346b2c12345678c9509abcdef0\r
+    xor.w @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346b2c12345678d2509abc\r
+    xor.w @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346b2c12345678e2509abc\r
+    xor.w @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346b2c12345678f2509abc\r
+    xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346b2c12345678da509abcdef0\r
+    xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346b2c12345678ea509abcdef0\r
+    xor.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346b2c12345678fa509abcdef0\r
+    xor.w @(0x12345678:32,er3),@0xffff9abc:16               ;78346b2c1234567840509abc\r
+    xor.w @(0x12345678:32,er3),@0x9abcdef0:32               ;78346b2c1234567848509abcdef0\r
+\r
+    xor.w @(0x1234:16,r3l.b),@er1                       ;01556f3c12340150\r
+    xor.w @(0x1234:16,r3l.b),@(6:2,er1)                 ;01556f3c12343150\r
+    xor.w @(0x1234:16,r3l.b),@-er1                      ;01556f3c1234b150\r
+    xor.w @(0x1234:16,r3l.b),@er1+                      ;01556f3c12348150\r
+    xor.w @(0x1234:16,r3l.b),@er1-                      ;01556f3c1234a150\r
+    xor.w @(0x1234:16,r3l.b),@+er1                      ;01556f3c12349150\r
+    xor.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01556f3c1234c1509abc\r
+    xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01556f3c1234c9509abcdef0\r
+    xor.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01556f3c1234d2509abc\r
+    xor.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01556f3c1234e2509abc\r
+    xor.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01556f3c1234f2509abc\r
+    xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01556f3c1234da509abcdef0\r
+    xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01556f3c1234ea509abcdef0\r
+    xor.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01556f3c1234fa509abcdef0\r
+    xor.w @(0x1234:16,r3l.b),@0xffff9abc:16             ;01556f3c123440509abc\r
+    xor.w @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01556f3c123448509abcdef0\r
+\r
+    xor.w @(0x1234:16,r3.w),@er1                       ;01566f3c12340150\r
+    xor.w @(0x1234:16,r3.w),@(6:2,er1)                 ;01566f3c12343150\r
+    xor.w @(0x1234:16,r3.w),@-er1                      ;01566f3c1234b150\r
+    xor.w @(0x1234:16,r3.w),@er1+                      ;01566f3c12348150\r
+    xor.w @(0x1234:16,r3.w),@er1-                      ;01566f3c1234a150\r
+    xor.w @(0x1234:16,r3.w),@+er1                      ;01566f3c12349150\r
+    xor.w @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01566f3c1234c1509abc\r
+    xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01566f3c1234c9509abcdef0\r
+    xor.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01566f3c1234d2509abc\r
+    xor.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01566f3c1234e2509abc\r
+    xor.w @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01566f3c1234f2509abc\r
+    xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01566f3c1234da509abcdef0\r
+    xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01566f3c1234ea509abcdef0\r
+    xor.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01566f3c1234fa509abcdef0\r
+    xor.w @(0x1234:16,r3.w),@0xffff9abc:16             ;01566f3c123440509abc\r
+    xor.w @(0x1234:16,r3.w),@0x9abcdef0:32             ;01566f3c123448509abcdef0\r
+\r
+    xor.w @(0x1234:16,er3.l),@er1                       ;01576f3c12340150\r
+    xor.w @(0x1234:16,er3.l),@(6:2,er1)                 ;01576f3c12343150\r
+    xor.w @(0x1234:16,er3.l),@-er1                      ;01576f3c1234b150\r
+    xor.w @(0x1234:16,er3.l),@er1+                      ;01576f3c12348150\r
+    xor.w @(0x1234:16,er3.l),@er1-                      ;01576f3c1234a150\r
+    xor.w @(0x1234:16,er3.l),@+er1                      ;01576f3c12349150\r
+    xor.w @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01576f3c1234c1509abc\r
+    xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01576f3c1234c9509abcdef0\r
+    xor.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01576f3c1234d2509abc\r
+    xor.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01576f3c1234e2509abc\r
+    xor.w @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01576f3c1234f2509abc\r
+    xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01576f3c1234da509abcdef0\r
+    xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01576f3c1234ea509abcdef0\r
+    xor.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01576f3c1234fa509abcdef0\r
+    xor.w @(0x1234:16,er3.l),@0xffff9abc:16             ;01576f3c123440509abc\r
+    xor.w @(0x1234:16,er3.l),@0x9abcdef0:32             ;01576f3c123448509abcdef0\r
+\r
+    xor.w @(0x12345678:32,r3l.b),@er1                       ;78356b2c123456780150\r
+    xor.w @(0x12345678:32,r3l.b),@(6:2,er1)                 ;78356b2c123456783150\r
+    xor.w @(0x12345678:32,r3l.b),@-er1                      ;78356b2c12345678b150\r
+    xor.w @(0x12345678:32,r3l.b),@er1+                      ;78356b2c123456788150\r
+    xor.w @(0x12345678:32,r3l.b),@er1-                      ;78356b2c12345678a150\r
+    xor.w @(0x12345678:32,r3l.b),@+er1                      ;78356b2c123456789150\r
+    xor.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356b2c12345678c1509abc\r
+    xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356b2c12345678c9509abcdef0\r
+    xor.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356b2c12345678d2509abc\r
+    xor.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356b2c12345678e2509abc\r
+    xor.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356b2c12345678f2509abc\r
+    xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356b2c12345678da509abcdef0\r
+    xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356b2c12345678ea509abcdef0\r
+    xor.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356b2c12345678fa509abcdef0\r
+    xor.w @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356b2c1234567840509abc\r
+    xor.w @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356b2c1234567848509abcdef0\r
+\r
+    xor.w @(0x12345678:32,r3.w),@er1                       ;78366b2c123456780150\r
+    xor.w @(0x12345678:32,r3.w),@(6:2,er1)                 ;78366b2c123456783150\r
+    xor.w @(0x12345678:32,r3.w),@-er1                      ;78366b2c12345678b150\r
+    xor.w @(0x12345678:32,r3.w),@er1+                      ;78366b2c123456788150\r
+    xor.w @(0x12345678:32,r3.w),@er1-                      ;78366b2c12345678a150\r
+    xor.w @(0x12345678:32,r3.w),@+er1                      ;78366b2c123456789150\r
+    xor.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366b2c12345678c1509abc\r
+    xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366b2c12345678c9509abcdef0\r
+    xor.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366b2c12345678d2509abc\r
+    xor.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366b2c12345678e2509abc\r
+    xor.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366b2c12345678f2509abc\r
+    xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366b2c12345678da509abcdef0\r
+    xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366b2c12345678ea509abcdef0\r
+    xor.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366b2c12345678fa509abcdef0\r
+    xor.w @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366b2c1234567840509abc\r
+    xor.w @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366b2c1234567848509abcdef0\r
+\r
+    xor.w @(0x12345678:32,er3.l),@er1                       ;78376b2c123456780150\r
+    xor.w @(0x12345678:32,er3.l),@(6:2,er1)                 ;78376b2c123456783150\r
+    xor.w @(0x12345678:32,er3.l),@-er1                      ;78376b2c12345678b150\r
+    xor.w @(0x12345678:32,er3.l),@er1+                      ;78376b2c123456788150\r
+    xor.w @(0x12345678:32,er3.l),@er1-                      ;78376b2c12345678a150\r
+    xor.w @(0x12345678:32,er3.l),@+er1                      ;78376b2c123456789150\r
+    xor.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376b2c12345678c1509abc\r
+    xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376b2c12345678c9509abcdef0\r
+    xor.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376b2c12345678d2509abc\r
+    xor.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376b2c12345678e2509abc\r
+    xor.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376b2c12345678f2509abc\r
+    xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376b2c12345678da509abcdef0\r
+    xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376b2c12345678ea509abcdef0\r
+    xor.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376b2c12345678fa509abcdef0\r
+    xor.w @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376b2c1234567840509abc\r
+    xor.w @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376b2c1234567848509abcdef0\r
+\r
+    xor.w @0x1234:16,@er1                              ;6b1512340150\r
+    xor.w @0x1234:16,@(6:2,er1)                        ;6b1512343150\r
+    xor.w @0x1234:16,@-er1                             ;6b151234b150\r
+    xor.w @0x1234:16,@er1+                             ;6b1512348150\r
+    xor.w @0x1234:16,@er1-                             ;6b151234a150\r
+    xor.w @0x1234:16,@+er1                             ;6b1512349150\r
+    xor.w @0x1234:16,@(0xffff9abc:16,er1)              ;6b151234c1509abc\r
+    xor.w @0x1234:16,@(0x9abcdef0:32,er1)              ;6b151234c9509abcdef0\r
+    xor.w @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6b151234d2509abc\r
+    xor.w @0x1234:16,@(0xffff9abc:16,r2.w)            ;6b151234e2509abc\r
+    xor.w @0x1234:16,@(0xffff9abc:16,er2.l)            ;6b151234f2509abc\r
+    xor.w @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6b151234da509abcdef0\r
+    xor.w @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6b151234ea509abcdef0\r
+    xor.w @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6b151234fa509abcdef0\r
+    xor.w @0x1234:16,@0xffff9abc:16                    ;6b15123440509abc\r
+    xor.w @0x1234:16,@0x9abcdef0:32                    ;6b15123448509abcdef0\r
+\r
+    xor.w @0x12345678:32,@er1                              ;6b35123456780150\r
+    xor.w @0x12345678:32,@(6:2,er1)                        ;6b35123456783150\r
+    xor.w @0x12345678:32,@-er1                             ;6b3512345678b150\r
+    xor.w @0x12345678:32,@er1+                             ;6b35123456788150\r
+    xor.w @0x12345678:32,@er1-                             ;6b3512345678a150\r
+    xor.w @0x12345678:32,@+er1                             ;6b35123456789150\r
+    xor.w @0x12345678:32,@(0xffff9abc:16,er1)              ;6b3512345678c1509abc\r
+    xor.w @0x12345678:32,@(0x9abcdef0:32,er1)              ;6b3512345678c9509abcdef0\r
+    xor.w @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6b3512345678d2509abc\r
+    xor.w @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6b3512345678e2509abc\r
+    xor.w @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6b3512345678f2509abc\r
+    xor.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6b3512345678da509abcdef0\r
+    xor.w @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6b3512345678ea509abcdef0\r
+    xor.w @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6b3512345678fa509abcdef0\r
+    xor.w @0x12345678:32,@0xffff9abc:16                    ;6b351234567840509abc\r
+    xor.w @0x12345678:32,@0x9abcdef0:32                    ;6b351234567848509abcdef0\r
+\r
+    xor.l #0x12345678:32,er1          ;7a5112345678\r
+    xor.l #0x1234:16,er1           ;7a591234\r
+    xor.l #0x12345678:32,@er1          ;010e015812345678\r
+    xor.l #0x12345678:32,@(0xc:2,er1) ;010e315812345678\r
+    xor.l #0x12345678:32,@er1+         ;010e815812345678\r
+    xor.l #0x12345678:32,@-er1         ;010eb15812345678\r
+    xor.l #0x12345678:32,@+er1         ;010e915812345678\r
+    xor.l #0x12345678:32,@er1-         ;010ea15812345678\r
+    xor.l #0x12345678:32,@(0xffff9abc:16,er1)   ;010ec1589abc12345678\r
+    xor.l #0x12345678:32,@(0x9abcdef0:32,er1)   ;010ec9589abcdef012345678\r
+    xor.l #0x12345678:32,@(0xffff9abc:16,r2l.b) ;010ed2589abc12345678\r
+    xor.l #0x12345678:32,@(0xffff9abc:16,r2.w) ;010ee2589abc12345678\r
+    xor.l #0x12345678:32,@(0xffff9abc:16,er2.l) ;010ef2589abc12345678\r
+    xor.l #0x12345678:32,@(0x9abcdef0:32,r2l.b) ;010eda589abcdef012345678\r
+    xor.l #0x12345678:32,@(0x9abcdef0:32,r2.w) ;010eea589abcdef012345678\r
+    xor.l #0x12345678:32,@(0x9abcdef0:32,er2.l) ;010efa589abcdef012345678\r
+    xor.l #0x12345678:32,@0xffff9abc:16        ;010e40589abc12345678\r
+    xor.l #0x12345678:32,@0x9abcdef0:32        ;010e48589abcdef012345678\r
+    xor.l #0x1234:16,@er1          ;010e01501234\r
+    xor.l #0x1234:16,@(0xc:2,er1) ;010e31501234\r
+    xor.l #0x1234:16,@er1+         ;010e81501234\r
+    xor.l #0x1234:16,@-er1         ;010eb1501234\r
+    xor.l #0x1234:16,@+er1         ;010e91501234\r
+    xor.l #0x1234:16,@er1-         ;010ea1501234\r
+    xor.l #0x1234:16,@(0xffff9abc:16,er1)   ;010ec1509abc1234\r
+    xor.l #0x1234:16,@(0x9abcdef0:32,er1)   ;010ec9509abcdef01234\r
+    xor.l #0x1234:16,@(0xffff9abc:16,r2l.b) ;010ed2509abc1234\r
+    xor.l #0x1234:16,@(0xffff9abc:16,r2.w) ;010ee2509abc1234\r
+    xor.l #0x1234:16,@(0xffff9abc:16,er2.l) ;010ef2509abc1234\r
+    xor.l #0x1234:16,@(0x9abcdef0:32,r2l.b) ;010eda509abcdef01234\r
+    xor.l #0x1234:16,@(0x9abcdef0:32,r2.w) ;010eea509abcdef01234\r
+    xor.l #0x1234:16,@(0x9abcdef0:32,er2.l) ;010efa509abcdef01234\r
+    xor.l #0x1234:16,@0xffff9abc:16        ;010e40509abc1234\r
+    xor.l #0x1234:16,@0x9abcdef0:32        ;010e48509abcdef01234\r
+\r
+    xor.l er3,er1            ;01f06531\r
+\r
+    xor.l er3,@er1            ;01090153\r
+    xor.l er3,@(0xc:2,er1)   ;01093153\r
+    xor.l er3,@er1+           ;01098153\r
+    xor.l er3,@-er1           ;0109b153\r
+    xor.l er3,@+er1           ;01099153\r
+    xor.l er3,@er1-           ;0109a153\r
+    xor.l er3,@(0x1234:16,er1)     ;0109c1531234\r
+    xor.l er3,@(0x12345678:32,er1)     ;0109c95312345678\r
+    xor.l er3,@(0x1234:16,r2l.b)   ;0109d2531234\r
+    xor.l er3,@(0x1234:16,r2.w)   ;0109e2531234\r
+    xor.l er3,@(0x1234:16,er2.l)   ;0109f2531234\r
+    xor.l er3,@(0x12345678:32,r2l.b)   ;0109da5312345678\r
+    xor.l er3,@(0x12345678:32,r2.w)   ;0109ea5312345678\r
+    xor.l er3,@(0x12345678:32,er2.l)   ;0109fa5312345678\r
+    xor.l er3,@0x1234:16          ;010940531234\r
+    xor.l er3,@0x12345678:32          ;0109485312345678\r
+\r
+    xor.l @er3,er1            ;010a0351\r
+    xor.l @(0xc:2,er3),er1  ;010a3351\r
+    xor.l @er3+,er1          ;010a8351\r
+    xor.l @-er3,er1          ;010ab351\r
+    xor.l @+er3,er1          ;010a9351\r
+    xor.l @er3-,er1          ;010aa351\r
+    xor.l @(0x1234:16,er1),er1     ;010ac1511234\r
+    xor.l @(0x12345678:32,er1),er1     ;010ac95112345678\r
+    xor.l @(0x1234:16,r2l.b),er1   ;010ad2511234\r
+    xor.l @(0x1234:16,r2.w),er1   ;010ae2511234\r
+    xor.l @(0x1234:16,er2.l),er1   ;010af2511234\r
+    xor.l @(0x12345678:32,r2l.b),er1   ;010ada5112345678\r
+    xor.l @(0x12345678:32,r2.w),er1   ;010aea5112345678\r
+    xor.l @(0x12345678:32,er2.l),er1   ;010afa5112345678\r
+    xor.l @0x1234:16,er1          ;010a40511234\r
+    xor.l @0x12345678:32,er1          ;010a485112345678\r
+\r
+    xor.l @er3,@er1                                ;0104693c0150\r
+    xor.l @er3,@(0xc:2,er1)                          ;0104693c3150\r
+    xor.l @er3,@-er1                               ;0104693cb150\r
+    xor.l @er3,@er1+                               ;0104693c8150\r
+    xor.l @er3,@er1-                               ;0104693ca150\r
+    xor.l @er3,@+er1                               ;0104693c9150\r
+    xor.l @er3,@(0xffff9abc:16,er1)                ;0104693cc1509abc\r
+    xor.l @er3,@(0x9abcdef0:32,er1)                ;0104693cc9509abcdef0\r
+    xor.l @er3,@(0xffff9abc:16,r2l.b)              ;0104693cd2509abc\r
+    xor.l @er3,@(0xffff9abc:16,r2.w)              ;0104693ce2509abc\r
+    xor.l @er3,@(0xffff9abc:16,er2.l)              ;0104693cf2509abc\r
+    xor.l @er3,@(0x9abcdef0:32,r2l.b)              ;0104693cda509abcdef0\r
+    xor.l @er3,@(0x9abcdef0:32,r2.w)              ;0104693cea509abcdef0\r
+    xor.l @er3,@(0x9abcdef0:32,er2.l)              ;0104693cfa509abcdef0\r
+    xor.l @er3,@0xffff9abc:16                      ;0104693c40509abc\r
+    xor.l @er3,@0x9abcdef0:32                      ;0104693c48509abcdef0\r
+\r
+    xor.l @(0xc:2,er3),@er1                       ;0107693c0150\r
+    xor.l @(0xc:2,er3),@(0xc:2,er1)                 ;0107693c3150\r
+    xor.l @(0xc:2,er3),@-er1                      ;0107693cb150\r
+    xor.l @(0xc:2,er3),@er1+                      ;0107693c8150\r
+    xor.l @(0xc:2,er3),@er1-                      ;0107693ca150\r
+    xor.l @(0xc:2,er3),@+er1                      ;0107693c9150\r
+    xor.l @(0xc:2,er3),@(0xffff9abc:16,er1)       ;0107693cc1509abc\r
+    xor.l @(0xc:2,er3),@(0x9abcdef0:32,er1)       ;0107693cc9509abcdef0\r
+    xor.l @(0xc:2,er3),@(0xffff9abc:16,r2l.b)     ;0107693cd2509abc\r
+    xor.l @(0xc:2,er3),@(0xffff9abc:16,r2.w)     ;0107693ce2509abc\r
+    xor.l @(0xc:2,er3),@(0xffff9abc:16,er2.l)     ;0107693cf2509abc\r
+    xor.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)     ;0107693cda509abcdef0\r
+    xor.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)     ;0107693cea509abcdef0\r
+    xor.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)     ;0107693cfa509abcdef0\r
+    xor.l @(0xc:2,er3),@0xffff9abc:16             ;0107693c40509abc\r
+    xor.l @(0xc:2,er3),@0x9abcdef0:32             ;0107693c48509abcdef0\r
+\r
+    xor.l @-er3,@er1                               ;01076d3c0150\r
+    xor.l @-er3,@(0xc:2,er1)                         ;01076d3c3150\r
+    xor.l @-er3,@-er1                              ;01076d3cb150\r
+    xor.l @-er3,@er1+                              ;01076d3c8150\r
+    xor.l @-er3,@er1-                              ;01076d3ca150\r
+    xor.l @-er3,@+er1                              ;01076d3c9150\r
+    xor.l @-er3,@(0xffff9abc:16,er1)               ;01076d3cc1509abc\r
+    xor.l @-er3,@(0x9abcdef0:32,er1)               ;01076d3cc9509abcdef0\r
+    xor.l @-er3,@(0xffff9abc:16,r2l.b)             ;01076d3cd2509abc\r
+    xor.l @-er3,@(0xffff9abc:16,r2.w)             ;01076d3ce2509abc\r
+    xor.l @-er3,@(0xffff9abc:16,er2.l)             ;01076d3cf2509abc\r
+    xor.l @-er3,@(0x9abcdef0:32,r2l.b)             ;01076d3cda509abcdef0\r
+    xor.l @-er3,@(0x9abcdef0:32,r2.w)             ;01076d3cea509abcdef0\r
+    xor.l @-er3,@(0x9abcdef0:32,er2.l)             ;01076d3cfa509abcdef0\r
+    xor.l @-er3,@0xffff9abc:16                     ;01076d3c40509abc\r
+    xor.l @-er3,@0x9abcdef0:32                     ;01076d3c48509abcdef0\r
+\r
+    xor.l @er3+,@er1                               ;01046d3c0150\r
+    xor.l @er3+,@(0xc:2,er1)                         ;01046d3c3150\r
+    xor.l @er3+,@-er1                              ;01046d3cb150\r
+    xor.l @er3+,@er1+                              ;01046d3c8150\r
+    xor.l @er3+,@er1-                              ;01046d3ca150\r
+    xor.l @er3+,@+er1                              ;01046d3c9150\r
+    xor.l @er3+,@(0xffff9abc:16,er1)               ;01046d3cc1509abc\r
+    xor.l @er3+,@(0x9abcdef0:32,er1)               ;01046d3cc9509abcdef0\r
+    xor.l @er3+,@(0xffff9abc:16,r2l.b)             ;01046d3cd2509abc\r
+    xor.l @er3+,@(0xffff9abc:16,r2.w)             ;01046d3ce2509abc\r
+    xor.l @er3+,@(0xffff9abc:16,er2.l)             ;01046d3cf2509abc\r
+    xor.l @er3+,@(0x9abcdef0:32,r2l.b)             ;01046d3cda509abcdef0\r
+    xor.l @er3+,@(0x9abcdef0:32,r2.w)             ;01046d3cea509abcdef0\r
+    xor.l @er3+,@(0x9abcdef0:32,er2.l)             ;01046d3cfa509abcdef0\r
+    xor.l @er3+,@0xffff9abc:16                     ;01046d3c40509abc\r
+    xor.l @er3+,@0x9abcdef0:32                     ;01046d3c48509abcdef0\r
+\r
+    xor.l @er3-,@er1                               ;01066d3c0150\r
+    xor.l @er3-,@(0xc:2,er1)                         ;01066d3c3150\r
+    xor.l @er3-,@-er1                              ;01066d3cb150\r
+    xor.l @er3-,@er1+                              ;01066d3c8150\r
+    xor.l @er3-,@er1-                              ;01066d3ca150\r
+    xor.l @er3-,@+er1                              ;01066d3c9150\r
+    xor.l @er3-,@(0xffff9abc:16,er1)               ;01066d3cc1509abc\r
+    xor.l @er3-,@(0x9abcdef0:32,er1)               ;01066d3cc9509abcdef0\r
+    xor.l @er3-,@(0xffff9abc:16,r2l.b)             ;01066d3cd2509abc\r
+    xor.l @er3-,@(0xffff9abc:16,r2.w)             ;01066d3ce2509abc\r
+    xor.l @er3-,@(0xffff9abc:16,er2.l)             ;01066d3cf2509abc\r
+    xor.l @er3-,@(0x9abcdef0:32,r2l.b)             ;01066d3cda509abcdef0\r
+    xor.l @er3-,@(0x9abcdef0:32,r2.w)             ;01066d3cea509abcdef0\r
+    xor.l @er3-,@(0x9abcdef0:32,er2.l)             ;01066d3cfa509abcdef0\r
+    xor.l @er3-,@0xffff9abc:16                     ;01066d3c40509abc\r
+    xor.l @er3-,@0x9abcdef0:32                     ;01066d3c48509abcdef0\r
+\r
+    xor.l @+er3,@er1                               ;01056d3c0150\r
+    xor.l @+er3,@(0xc:2,er1)                         ;01056d3c3150\r
+    xor.l @+er3,@-er1                              ;01056d3cb150\r
+    xor.l @+er3,@er1+                              ;01056d3c8150\r
+    xor.l @+er3,@er1-                              ;01056d3ca150\r
+    xor.l @+er3,@+er1                              ;01056d3c9150\r
+    xor.l @+er3,@(0xffff9abc:16,er1)               ;01056d3cc1509abc\r
+    xor.l @+er3,@(0x9abcdef0:32,er1)               ;01056d3cc9509abcdef0\r
+    xor.l @+er3,@(0xffff9abc:16,r2l.b)             ;01056d3cd2509abc\r
+    xor.l @+er3,@(0xffff9abc:16,r2.w)             ;01056d3ce2509abc\r
+    xor.l @+er3,@(0xffff9abc:16,er2.l)             ;01056d3cf2509abc\r
+    xor.l @+er3,@(0x9abcdef0:32,r2l.b)             ;01056d3cda509abcdef0\r
+    xor.l @+er3,@(0x9abcdef0:32,r2.w)             ;01056d3cea509abcdef0\r
+    xor.l @+er3,@(0x9abcdef0:32,er2.l)             ;01056d3cfa509abcdef0\r
+    xor.l @+er3,@0xffff9abc:16                     ;01056d3c40509abc\r
+    xor.l @+er3,@0x9abcdef0:32                     ;01056d3c48509abcdef0\r
+\r
+    xor.l @(0x1234:16,er3),@er1                         ;01046f3c12340150\r
+    xor.l @(0x1234:16,er3),@(0xc:2,er1)                   ;01046f3c12343150\r
+    xor.l @(0x1234:16,er3),@-er1                        ;01046f3c1234b150\r
+    xor.l @(0x1234:16,er3),@er1+                        ;01046f3c12348150\r
+    xor.l @(0x1234:16,er3),@er1-                        ;01046f3c1234a150\r
+    xor.l @(0x1234:16,er3),@+er1                        ;01046f3c12349150\r
+    xor.l @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01046f3c1234c1509abc\r
+    xor.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01046f3c1234c9509abcdef0\r
+    xor.l @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01046f3c1234d2509abc\r
+    xor.l @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01046f3c1234e2509abc\r
+    xor.l @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01046f3c1234f2509abc\r
+    xor.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01046f3c1234da509abcdef0\r
+    xor.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01046f3c1234ea509abcdef0\r
+    xor.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01046f3c1234fa509abcdef0\r
+    xor.l @(0x1234:16,er3),@0xffff9abc:16               ;01046f3c123440509abc\r
+    xor.l @(0x1234:16,er3),@0x9abcdef0:32               ;01046f3c123448509abcdef0\r
+\r
+    xor.l @(0x12345678:32,er3),@er1                         ;78b46b2c123456780150\r
+    xor.l @(0x12345678:32,er3),@(0xc:2,er1)                   ;78b46b2c123456783150\r
+    xor.l @(0x12345678:32,er3),@-er1                        ;78b46b2c12345678b150\r
+    xor.l @(0x12345678:32,er3),@er1+                        ;78b46b2c123456788150\r
+    xor.l @(0x12345678:32,er3),@er1-                        ;78b46b2c12345678a150\r
+    xor.l @(0x12345678:32,er3),@+er1                        ;78b46b2c123456789150\r
+    xor.l @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78b46b2c12345678c1509abc\r
+    xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78b46b2c12345678c9509abcdef0\r
+    xor.l @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78b46b2c12345678d2509abc\r
+    xor.l @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78b46b2c12345678e2509abc\r
+    xor.l @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78b46b2c12345678f2509abc\r
+    xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78b46b2c12345678da509abcdef0\r
+    xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78b46b2c12345678ea509abcdef0\r
+    xor.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78b46b2c12345678fa509abcdef0\r
+    xor.l @(0x12345678:32,er3),@0xffff9abc:16               ;78b46b2c1234567840509abc\r
+    xor.l @(0x12345678:32,er3),@0x9abcdef0:32               ;78b46b2c1234567848509abcdef0\r
+\r
+    xor.l @(0x1234:16,r3l.b),@er1                       ;01056f3c12340150\r
+    xor.l @(0x1234:16,r3l.b),@(0xc:2,er1)                 ;01056f3c12343150\r
+    xor.l @(0x1234:16,r3l.b),@-er1                      ;01056f3c1234b150\r
+    xor.l @(0x1234:16,r3l.b),@er1+                      ;01056f3c12348150\r
+    xor.l @(0x1234:16,r3l.b),@er1-                      ;01056f3c1234a150\r
+    xor.l @(0x1234:16,r3l.b),@+er1                      ;01056f3c12349150\r
+    xor.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01056f3c1234c1509abc\r
+    xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01056f3c1234c9509abcdef0\r
+    xor.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01056f3c1234d2509abc\r
+    xor.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01056f3c1234e2509abc\r
+    xor.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01056f3c1234f2509abc\r
+    xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01056f3c1234da509abcdef0\r
+    xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01056f3c1234ea509abcdef0\r
+    xor.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01056f3c1234fa509abcdef0\r
+    xor.l @(0x1234:16,r3l.b),@0xffff9abc:16             ;01056f3c123440509abc\r
+    xor.l @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01056f3c123448509abcdef0\r
+\r
+    xor.l @(0x1234:16,r3.w),@er1                       ;01066f3c12340150\r
+    xor.l @(0x1234:16,r3.w),@(0xc:2,er1)                 ;01066f3c12343150\r
+    xor.l @(0x1234:16,r3.w),@-er1                      ;01066f3c1234b150\r
+    xor.l @(0x1234:16,r3.w),@er1+                      ;01066f3c12348150\r
+    xor.l @(0x1234:16,r3.w),@er1-                      ;01066f3c1234a150\r
+    xor.l @(0x1234:16,r3.w),@+er1                      ;01066f3c12349150\r
+    xor.l @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01066f3c1234c1509abc\r
+    xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01066f3c1234c9509abcdef0\r
+    xor.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01066f3c1234d2509abc\r
+    xor.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01066f3c1234e2509abc\r
+    xor.l @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01066f3c1234f2509abc\r
+    xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01066f3c1234da509abcdef0\r
+    xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01066f3c1234ea509abcdef0\r
+    xor.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01066f3c1234fa509abcdef0\r
+    xor.l @(0x1234:16,r3.w),@0xffff9abc:16             ;01066f3c123440509abc\r
+    xor.l @(0x1234:16,r3.w),@0x9abcdef0:32             ;01066f3c123448509abcdef0\r
+\r
+    xor.l @(0x1234:16,er3.l),@er1                       ;01076f3c12340150\r
+    xor.l @(0x1234:16,er3.l),@(0xc:2,er1)                 ;01076f3c12343150\r
+    xor.l @(0x1234:16,er3.l),@-er1                      ;01076f3c1234b150\r
+    xor.l @(0x1234:16,er3.l),@er1+                      ;01076f3c12348150\r
+    xor.l @(0x1234:16,er3.l),@er1-                      ;01076f3c1234a150\r
+    xor.l @(0x1234:16,er3.l),@+er1                      ;01076f3c12349150\r
+    xor.l @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01076f3c1234c1509abc\r
+    xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01076f3c1234c9509abcdef0\r
+    xor.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01076f3c1234d2509abc\r
+    xor.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01076f3c1234e2509abc\r
+    xor.l @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01076f3c1234f2509abc\r
+    xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01076f3c1234da509abcdef0\r
+    xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01076f3c1234ea509abcdef0\r
+    xor.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01076f3c1234fa509abcdef0\r
+    xor.l @(0x1234:16,er3.l),@0xffff9abc:16             ;01076f3c123440509abc\r
+    xor.l @(0x1234:16,er3.l),@0x9abcdef0:32             ;01076f3c123448509abcdef0\r
+\r
+    xor.l @(0x12345678:32,r3l.b),@er1                       ;78b56b2c123456780150\r
+    xor.l @(0x12345678:32,r3l.b),@(0xc:2,er1)                 ;78b56b2c123456783150\r
+    xor.l @(0x12345678:32,r3l.b),@-er1                      ;78b56b2c12345678b150\r
+    xor.l @(0x12345678:32,r3l.b),@er1+                      ;78b56b2c123456788150\r
+    xor.l @(0x12345678:32,r3l.b),@er1-                      ;78b56b2c12345678a150\r
+    xor.l @(0x12345678:32,r3l.b),@+er1                      ;78b56b2c123456789150\r
+    xor.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78b56b2c12345678c1509abc\r
+    xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78b56b2c12345678c9509abcdef0\r
+    xor.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78b56b2c12345678d2509abc\r
+    xor.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78b56b2c12345678e2509abc\r
+    xor.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78b56b2c12345678f2509abc\r
+    xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78b56b2c12345678da509abcdef0\r
+    xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78b56b2c12345678ea509abcdef0\r
+    xor.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78b56b2c12345678fa509abcdef0\r
+    xor.l @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78b56b2c1234567840509abc\r
+    xor.l @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78b56b2c1234567848509abcdef0\r
+\r
+    xor.l @(0x12345678:32,r3.w),@er1                       ;78b66b2c123456780150\r
+    xor.l @(0x12345678:32,r3.w),@(0xc:2,er1)                 ;78b66b2c123456783150\r
+    xor.l @(0x12345678:32,r3.w),@-er1                      ;78b66b2c12345678b150\r
+    xor.l @(0x12345678:32,r3.w),@er1+                      ;78b66b2c123456788150\r
+    xor.l @(0x12345678:32,r3.w),@er1-                      ;78b66b2c12345678a150\r
+    xor.l @(0x12345678:32,r3.w),@+er1                      ;78b66b2c123456789150\r
+    xor.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78b66b2c12345678c1509abc\r
+    xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78b66b2c12345678c9509abcdef0\r
+    xor.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78b66b2c12345678d2509abc\r
+    xor.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78b66b2c12345678e2509abc\r
+    xor.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78b66b2c12345678f2509abc\r
+    xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78b66b2c12345678da509abcdef0\r
+    xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78b66b2c12345678ea509abcdef0\r
+    xor.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78b66b2c12345678fa509abcdef0\r
+    xor.l @(0x12345678:32,r3.w),@0xffff9abc:16             ;78b66b2c1234567840509abc\r
+    xor.l @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78b66b2c1234567848509abcdef0\r
+\r
+    xor.l @(0x12345678:32,er3.l),@er1                       ;78b76b2c123456780150\r
+    xor.l @(0x12345678:32,er3.l),@(0xc:2,er1)                 ;78b76b2c123456783150\r
+    xor.l @(0x12345678:32,er3.l),@-er1                      ;78b76b2c12345678b150\r
+    xor.l @(0x12345678:32,er3.l),@er1+                      ;78b76b2c123456788150\r
+    xor.l @(0x12345678:32,er3.l),@er1-                      ;78b76b2c12345678a150\r
+    xor.l @(0x12345678:32,er3.l),@+er1                      ;78b76b2c123456789150\r
+    xor.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78b76b2c12345678c1509abc\r
+    xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78b76b2c12345678c9509abcdef0\r
+    xor.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78b76b2c12345678d2509abc\r
+    xor.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78b76b2c12345678e2509abc\r
+    xor.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78b76b2c12345678f2509abc\r
+    xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78b76b2c12345678da509abcdef0\r
+    xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78b76b2c12345678ea509abcdef0\r
+    xor.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78b76b2c12345678fa509abcdef0\r
+    xor.l @(0x12345678:32,er3.l),@0xffff9abc:16             ;78b76b2c1234567840509abc\r
+    xor.l @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78b76b2c1234567848509abcdef0\r
+\r
+    xor.l @0x1234:16,@er1                              ;01046b0c12340150\r
+    xor.l @0x1234:16,@(0xc:2,er1)                        ;01046b0c12343150\r
+    xor.l @0x1234:16,@-er1                             ;01046b0c1234b150\r
+    xor.l @0x1234:16,@er1+                             ;01046b0c12348150\r
+    xor.l @0x1234:16,@er1-                             ;01046b0c1234a150\r
+    xor.l @0x1234:16,@+er1                             ;01046b0c12349150\r
+    xor.l @0x1234:16,@(0xffff9abc:16,er1)              ;01046b0c1234c1509abc\r
+    xor.l @0x1234:16,@(0x9abcdef0:32,er1)              ;01046b0c1234c9509abcdef0\r
+    xor.l @0x1234:16,@(0xffff9abc:16,r2l.b)            ;01046b0c1234d2509abc\r
+    xor.l @0x1234:16,@(0xffff9abc:16,r2.w)            ;01046b0c1234e2509abc\r
+    xor.l @0x1234:16,@(0xffff9abc:16,er2.l)            ;01046b0c1234f2509abc\r
+    xor.l @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;01046b0c1234da509abcdef0\r
+    xor.l @0x1234:16,@(0x9abcdef0:32,r2.w)            ;01046b0c1234ea509abcdef0\r
+    xor.l @0x1234:16,@(0x9abcdef0:32,er2.l)            ;01046b0c1234fa509abcdef0\r
+    xor.l @0x1234:16,@0xffff9abc:16                    ;01046b0c123440509abc\r
+    xor.l @0x1234:16,@0x9abcdef0:32                    ;01046b0c123448509abcdef0\r
+\r
+    xor.l @0x12345678:32,@er1                              ;01046b2c123456780150\r
+    xor.l @0x12345678:32,@(0xc:2,er1)                        ;01046b2c123456783150\r
+    xor.l @0x12345678:32,@-er1                             ;01046b2c12345678b150\r
+    xor.l @0x12345678:32,@er1+                             ;01046b2c123456788150\r
+    xor.l @0x12345678:32,@er1-                             ;01046b2c12345678a150\r
+    xor.l @0x12345678:32,@+er1                             ;01046b2c123456789150\r
+    xor.l @0x12345678:32,@(0xffff9abc:16,er1)              ;01046b2c12345678c1509abc\r
+    xor.l @0x12345678:32,@(0x9abcdef0:32,er1)              ;01046b2c12345678c9509abcdef0\r
+    xor.l @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;01046b2c12345678d2509abc\r
+    xor.l @0x12345678:32,@(0xffff9abc:16,r2.w)            ;01046b2c12345678e2509abc\r
+    xor.l @0x12345678:32,@(0xffff9abc:16,er2.l)            ;01046b2c12345678f2509abc\r
+    xor.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;01046b2c12345678da509abcdef0\r
+    xor.l @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;01046b2c12345678ea509abcdef0\r
+    xor.l @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;01046b2c12345678fa509abcdef0\r
+    xor.l @0x12345678:32,@0xffff9abc:16                    ;01046b2c1234567840509abc\r
+    xor.l @0x12345678:32,@0x9abcdef0:32                    ;01046b2c1234567848509abcdef0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t10_and.exp b/gdb/testsuite/gdb.disasm/t10_and.exp
new file mode 100644 (file)
index 0000000..63ae907
--- /dev/null
@@ -0,0 +1,1866 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t10_and"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "and.b\t#0x12(:8|),r1h" \
+       "and.b #0x12:8,r1h"
+gdb_test "x" "and.b\t#0x12(:8|),@er1" \
+       "and.b #0x12:8,@er1"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x3(:2|),er1\\)" \
+       "and.b #0x12:8,@(0x3:2,er1)"
+gdb_test "x" "and.b\t#0x12(:8|),@er1\\+" \
+       "and.b #0x12:8,@er1+"
+gdb_test "x" "and.b\t#0x12(:8|),@-er1" \
+       "and.b #0x12:8,@-er1"
+gdb_test "x" "and.b\t#0x12(:8|),@\\+er1" \
+       "and.b #0x12:8,@+er1"
+gdb_test "x" "and.b\t#0x12(:8|),@er1-" \
+       "and.b #0x12:8,@er1-"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x1234(:16|),er1\\)" \
+       "and.b #0x12:8,@(0x1234:16,er1)"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x12345678(:32|),er1\\)" \
+       "and.b #0x12:8,@(0x12345678:32,er1)"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x1234(:16|),r2l.b\\)" \
+       "and.b #0x12:8,@(0x1234:16,r2l.b)"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x1234(:16|),r2.w\\)" \
+       "and.b #0x12:8,@(0x1234:16,r2.w)"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x1234(:16|),er2.l\\)" \
+       "and.b #0x12:8,@(0x1234:16,er2.l)"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x12345678(:32|),r2l.b\\)" \
+       "and.b #0x12:8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x12345678(:32|),r2.w\\)" \
+       "and.b #0x12:8,@(0x12345678:32,r2.w)"
+gdb_test "x" "and.b\t#0x12(:8|),@\\(0x12345678(:32|),er2.l\\)" \
+       "and.b #0x12:8,@(0x12345678:32,er2.l)"
+gdb_test "x" "and.b\t#0x12(:8|),@0x12(:8|)" \
+       "and.b #0x12:8,@0x12:8"
+gdb_test "x" "and.b\t#0x12(:8|),@0x1234(:16|)" \
+       "and.b #0x12:8,@0x1234:16"
+gdb_test "x" "and.b\t#0x12(:8|),@0x12345678(:32|)" \
+       "and.b #0x12:8,@0x12345678:32"
+gdb_test "x" "and.b\tr3h,r1h" \
+       "and.b r3h,r1h"
+gdb_test "x" "and.b\tr3h,@er1" \
+       "and.b r3h,@er1"
+gdb_test "x" "and.b\tr3h,@\\(0x3(:2|),er1\\)" \
+       "and.b r3h,@(0x3:2,er1)"
+gdb_test "x" "and.b\tr3h,@er1\\+" \
+       "and.b r3h,@er1+"
+gdb_test "x" "and.b\tr3h,@-er1" \
+       "and.b r3h,@-er1"
+gdb_test "x" "and.b\tr3h,@\\+er1" \
+       "and.b r3h,@+er1"
+gdb_test "x" "and.b\tr3h,@er1-" \
+       "and.b r3h,@er1-"
+gdb_test "x" "and.b\tr3h,@\\(0x1234(:16|),er1\\)" \
+       "and.b r3h,@(0x1234:16,er1)"
+gdb_test "x" "and.b\tr3h,@\\(0x12345678(:32|),er1\\)" \
+       "and.b r3h,@(0x12345678:32,er1)"
+gdb_test "x" "and.b\tr3h,@\\(0x1234(:16|),r2l.b\\)" \
+       "and.b r3h,@(0x1234:16,r2l.b)"
+gdb_test "x" "and.b\tr3h,@\\(0x1234(:16|),r2.w\\)" \
+       "and.b r3h,@(0x1234:16,r2.w)"
+gdb_test "x" "and.b\tr3h,@\\(0x1234(:16|),er2.l\\)" \
+       "and.b r3h,@(0x1234:16,er2.l)"
+gdb_test "x" "and.b\tr3h,@\\(0x12345678(:32|),r2l.b\\)" \
+       "and.b r3h,@(0x12345678:32,r2l.b)"
+gdb_test "x" "and.b\tr3h,@\\(0x12345678(:32|),r2.w\\)" \
+       "and.b r3h,@(0x12345678:32,r2.w)"
+gdb_test "x" "and.b\tr3h,@\\(0x12345678(:32|),er2.l\\)" \
+       "and.b r3h,@(0x12345678:32,er2.l)"
+gdb_test "x" "and.b\tr3h,@0x12(:8|)" \
+       "and.b r3h,@0x12:8"
+gdb_test "x" "and.b\tr3h,@0x1234(:16|)" \
+       "and.b r3h,@0x1234:16"
+gdb_test "x" "and.b\tr3h,@0x12345678(:32|)" \
+       "and.b r3h,@0x12345678:32"
+gdb_test "x" "and.b\t@er3,r1h" \
+       "and.b @er3,r1h"
+gdb_test "x" "and.b\t@\\(0x3(:2|),er3\\),r1h" \
+       "and.b @(0x3:2,er3),r1h"
+gdb_test "x" "and.b\t@er3\\+,r1h" \
+       "and.b @er3+,r1h"
+gdb_test "x" "and.b\t@-er3,r1h" \
+       "and.b @-er3,r1h"
+gdb_test "x" "and.b\t@\\+er3,r1h" \
+       "and.b @+er3,r1h"
+gdb_test "x" "and.b\t@er3-,r1h" \
+       "and.b @er3-,r1h"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er1\\),r1h" \
+       "and.b @(0x1234:16,er1),r1h"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er1\\),r1h" \
+       "and.b @(0x12345678:32,er1),r1h"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r2l.b\\),r1h" \
+       "and.b @(0x1234:16,r2l.b),r1h"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r2.w\\),r1h" \
+       "and.b @(0x1234:16,r2.w),r1h"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er2.l\\),r1h" \
+       "and.b @(0x1234:16,er2.l),r1h"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r2l.b\\),r1h" \
+       "and.b @(0x12345678:32,r2l.b),r1h"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r2.w\\),r1h" \
+       "and.b @(0x12345678:32,r2.w),r1h"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er2.l\\),r1h" \
+       "and.b @(0x12345678:32,er2.l),r1h"
+gdb_test "x" "and.b\t@0x12(:8|),r1h" \
+       "and.b @0x12:8,r1h"
+gdb_test "x" "and.b\t@0x1234(:16|),r1h" \
+       "and.b @0x1234:16,r1h"
+gdb_test "x" "and.b\t@0x12345678(:32|),r1h" \
+       "and.b @0x12345678:32,r1h"
+gdb_test "x" "and.b\t@er3,@er1" \
+       "and.b @er3,@er1"
+gdb_test "x" "and.b\t@er3,@\\(0x3(:2|),er1\\)" \
+       "and.b @er3,@(0x3:2,er1)"
+gdb_test "x" "and.b\t@er3,@-er1" \
+       "and.b @er3,@-er1"
+gdb_test "x" "and.b\t@er3,@er1\\+" \
+       "and.b @er3,@er1+"
+gdb_test "x" "and.b\t@er3,@er1-" \
+       "and.b @er3,@er1-"
+gdb_test "x" "and.b\t@er3,@\\+er1" \
+       "and.b @er3,@+er1"
+gdb_test "x" "and.b\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.b @er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@er3,@0x9abc(:16|)" \
+       "and.b @er3,@0x9abc:16"
+gdb_test "x" "and.b\t@er3,@0x9abcdef0(:32|)" \
+       "and.b @er3,@0x9abcdef0:32"
+gdb_test "x" "and.b\t@-er3,@er1" \
+       "and.b @-er3,@er1"
+gdb_test "x" "and.b\t@-er3,@\\(0x3(:2|),er1\\)" \
+       "and.b @-er3,@(0x3:2,er1)"
+gdb_test "x" "and.b\t@-er3,@-er1" \
+       "and.b @-er3,@-er1"
+gdb_test "x" "and.b\t@-er3,@er1\\+" \
+       "and.b @-er3,@er1+"
+gdb_test "x" "and.b\t@-er3,@er1-" \
+       "and.b @-er3,@er1-"
+gdb_test "x" "and.b\t@-er3,@\\+er1" \
+       "and.b @-er3,@+er1"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.b @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@-er3,@0x9abc(:16|)" \
+       "and.b @-er3,@0x9abc:16"
+gdb_test "x" "and.b\t@-er3,@0x9abcdef0(:32|)" \
+       "and.b @-er3,@0x9abcdef0:32"
+gdb_test "x" "and.b\t@er3\\+,@er1" \
+       "and.b @er3+,@er1"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x3(:2|),er1\\)" \
+       "and.b @er3+,@(0x3:2,er1)"
+gdb_test "x" "and.b\t@er3\\+,@-er1" \
+       "and.b @er3+,@-er1"
+gdb_test "x" "and.b\t@er3\\+,@er1\\+" \
+       "and.b @er3+,@er1+"
+gdb_test "x" "and.b\t@er3\\+,@er1-" \
+       "and.b @er3+,@er1-"
+gdb_test "x" "and.b\t@er3\\+,@\\+er1" \
+       "and.b @er3+,@+er1"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "and.b @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@er3\\+,@0x9abc(:16|)" \
+       "and.b @er3+,@0x9abc:16"
+gdb_test "x" "and.b\t@er3\\+,@0x9abcdef0(:32|)" \
+       "and.b @er3+,@0x9abcdef0:32"
+gdb_test "x" "and.b\t@er3-,@er1" \
+       "and.b @er3-,@er1"
+gdb_test "x" "and.b\t@er3-,@\\(0x3(:2|),er1\\)" \
+       "and.b @er3-,@(0x3:2,er1)"
+gdb_test "x" "and.b\t@er3-,@-er1" \
+       "and.b @er3-,@-er1"
+gdb_test "x" "and.b\t@er3-,@er1\\+" \
+       "and.b @er3-,@er1+"
+gdb_test "x" "and.b\t@er3-,@er1-" \
+       "and.b @er3-,@er1-"
+gdb_test "x" "and.b\t@er3-,@\\+er1" \
+       "and.b @er3-,@+er1"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "and.b @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@er3-,@0x9abc(:16|)" \
+       "and.b @er3-,@0x9abc:16"
+gdb_test "x" "and.b\t@er3-,@0x9abcdef0(:32|)" \
+       "and.b @er3-,@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\+er3,@er1" \
+       "and.b @+er3,@er1"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x3(:2|),er1\\)" \
+       "and.b @+er3,@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\+er3,@-er1" \
+       "and.b @+er3,@-er1"
+gdb_test "x" "and.b\t@\\+er3,@er1\\+" \
+       "and.b @+er3,@er1+"
+gdb_test "x" "and.b\t@\\+er3,@er1-" \
+       "and.b @+er3,@er1-"
+gdb_test "x" "and.b\t@\\+er3,@\\+er1" \
+       "and.b @+er3,@+er1"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.b @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\+er3,@0x9abc(:16|)" \
+       "and.b @+er3,@0x9abc:16"
+gdb_test "x" "and.b\t@\\+er3,@0x9abcdef0(:32|)" \
+       "and.b @+er3,@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@er1" \
+       "and.b @(0x1234:16,er3),@er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x1234:16,er3),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "and.b @(0x1234:16,er3),@-er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "and.b @(0x1234:16,er3),@er1+"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "and.b @(0x1234:16,er3),@er1-"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "and.b @(0x1234:16,er3),@+er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "and.b @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "and.b @(0x12345678:32,er3),@er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x12345678:32,er3),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "and.b @(0x12345678:32,er3),@-er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "and.b @(0x12345678:32,er3),@er1+"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "and.b @(0x12345678:32,er3),@er1-"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "and.b @(0x12345678:32,er3),@+er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "and.b @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "and.b @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "and.b @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "and.b @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "and.b @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "and.b @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "and.b @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "and.b @(0x1234:16,r3.w),@er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "and.b @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "and.b @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "and.b @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "and.b @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "and.b @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "and.b @(0x1234:16,er3.l),@er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "and.b @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "and.b @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "and.b @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "and.b @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "and.b @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "and.b @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "and.b @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "and.b @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "and.b @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "and.b @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "and.b @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "and.b @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "and.b @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "and.b @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "and.b @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "and.b @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "and.b @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "and.b @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x3(:2|),er1\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x3:2,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "and.b @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "and.b @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "and.b @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "and.b @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "and.b @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "and.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "and.b @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "and.b\t@0x1234(:16|),@er1" \
+       "and.b @0x1234:16,@er1"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x3(:2|),er1\\)" \
+       "and.b @0x1234:16,@(0x3:2,er1)"
+gdb_test "x" "and.b\t@0x1234(:16|),@-er1" \
+       "and.b @0x1234:16,@-er1"
+gdb_test "x" "and.b\t@0x1234(:16|),@er1\\+" \
+       "and.b @0x1234:16,@er1+"
+gdb_test "x" "and.b\t@0x1234(:16|),@er1-" \
+       "and.b @0x1234:16,@er1-"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\+er1" \
+       "and.b @0x1234:16,@+er1"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@0x1234(:16|),@0x9abc(:16|)" \
+       "and.b @0x1234:16,@0x9abc:16"
+gdb_test "x" "and.b\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "and.b @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "and.b\t@0x12345678(:32|),@er1" \
+       "and.b @0x12345678:32,@er1"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x3(:2|),er1\\)" \
+       "and.b @0x12345678:32,@(0x3:2,er1)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@-er1" \
+       "and.b @0x12345678:32,@-er1"
+gdb_test "x" "and.b\t@0x12345678(:32|),@er1\\+" \
+       "and.b @0x12345678:32,@er1+"
+gdb_test "x" "and.b\t@0x12345678(:32|),@er1-" \
+       "and.b @0x12345678:32,@er1-"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\+er1" \
+       "and.b @0x12345678:32,@+er1"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "and.b @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.b @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.b @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.b @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.b @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.b @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.b @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.b\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "and.b @0x12345678:32,@0x9abc:16"
+gdb_test "x" "and.b\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "and.b @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "and.w\t#0x1234(:16|),r1" \
+       "and.w #0x1234:16,r1"
+gdb_test "x" "and.w\t#0x1234(:16|),@er1" \
+       "and.w #0x1234:16,@er1"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "and.w #0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "and.w\t#0x1234(:16|),@er1\\+" \
+       "and.w #0x1234:16,@er1+"
+gdb_test "x" "and.w\t#0x1234(:16|),@-er1" \
+       "and.w #0x1234:16,@-er1"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\+er1" \
+       "and.w #0x1234:16,@+er1"
+gdb_test "x" "and.w\t#0x1234(:16|),@er1-" \
+       "and.w #0x1234:16,@er1-"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "and.w #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t#0x1234(:16|),@0x9abc(:16|)" \
+       "and.w #0x1234:16,@0x9abc:16"
+gdb_test "x" "and.w\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "and.w #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "and.w\tr3,r1" \
+       "and.w r3,r1"
+gdb_test "x" "and.w\tr3,@er1" \
+       "and.w r3,@er1"
+gdb_test "x" "and.w\tr3,@\\(0x6(:2|),er1\\)" \
+       "and.w r3,@(0x6:2,er1)"
+gdb_test "x" "and.w\tr3,@er1\\+" \
+       "and.w r3,@er1+"
+gdb_test "x" "and.w\tr3,@-er1" \
+       "and.w r3,@-er1"
+gdb_test "x" "and.w\tr3,@\\+er1" \
+       "and.w r3,@+er1"
+gdb_test "x" "and.w\tr3,@er1-" \
+       "and.w r3,@er1-"
+gdb_test "x" "and.w\tr3,@\\(0x1234(:16|),er1\\)" \
+       "and.w r3,@(0x1234:16,er1)"
+gdb_test "x" "and.w\tr3,@\\(0x12345678(:32|),er1\\)" \
+       "and.w r3,@(0x12345678:32,er1)"
+gdb_test "x" "and.w\tr3,@\\(0x1234(:16|),r2l.b\\)" \
+       "and.w r3,@(0x1234:16,r2l.b)"
+gdb_test "x" "and.w\tr3,@\\(0x1234(:16|),r2.w\\)" \
+       "and.w r3,@(0x1234:16,r2.w)"
+gdb_test "x" "and.w\tr3,@\\(0x1234(:16|),er2.l\\)" \
+       "and.w r3,@(0x1234:16,er2.l)"
+gdb_test "x" "and.w\tr3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "and.w r3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "and.w\tr3,@\\(0x12345678(:32|),r2.w\\)" \
+       "and.w r3,@(0x12345678:32,r2.w)"
+gdb_test "x" "and.w\tr3,@\\(0x12345678(:32|),er2.l\\)" \
+       "and.w r3,@(0x12345678:32,er2.l)"
+gdb_test "x" "and.w\tr3,@0x1234(:16|)" \
+       "and.w r3,@0x1234:16"
+gdb_test "x" "and.w\tr3,@0x12345678(:32|)" \
+       "and.w r3,@0x12345678:32"
+gdb_test "x" "and.w\t@er3,r1" \
+       "and.w @er3,r1"
+gdb_test "x" "and.w\t@\\(0x6(:2|),er3\\),r1" \
+       "and.w @(0x6:2,er3),r1"
+gdb_test "x" "and.w\t@er3\\+,r1" \
+       "and.w @er3+,r1"
+gdb_test "x" "and.w\t@-er3,r1" \
+       "and.w @-er3,r1"
+gdb_test "x" "and.w\t@\\+er3,r1" \
+       "and.w @+er3,r1"
+gdb_test "x" "and.w\t@er3-,r1" \
+       "and.w @er3-,r1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er1\\),r1" \
+       "and.w @(0x1234:16,er1),r1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er1\\),r1" \
+       "and.w @(0x12345678:32,er1),r1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r2l.b\\),r1" \
+       "and.w @(0x1234:16,r2l.b),r1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r2.w\\),r1" \
+       "and.w @(0x1234:16,r2.w),r1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er2.l\\),r1" \
+       "and.w @(0x1234:16,er2.l),r1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r2l.b\\),r1" \
+       "and.w @(0x12345678:32,r2l.b),r1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r2.w\\),r1" \
+       "and.w @(0x12345678:32,r2.w),r1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er2.l\\),r1" \
+       "and.w @(0x12345678:32,er2.l),r1"
+gdb_test "x" "and.w\t@0x1234(:16|),r1" \
+       "and.w @0x1234:16,r1"
+gdb_test "x" "and.w\t@0x12345678(:32|),r1" \
+       "and.w @0x12345678:32,r1"
+gdb_test "x" "and.w\t@er3,@er1" \
+       "and.w @er3,@er1"
+gdb_test "x" "and.w\t@er3,@\\(0x6(:2|),er1\\)" \
+       "and.w @er3,@(0x6:2,er1)"
+gdb_test "x" "and.w\t@er3,@-er1" \
+       "and.w @er3,@-er1"
+gdb_test "x" "and.w\t@er3,@er1\\+" \
+       "and.w @er3,@er1+"
+gdb_test "x" "and.w\t@er3,@er1-" \
+       "and.w @er3,@er1-"
+gdb_test "x" "and.w\t@er3,@\\+er1" \
+       "and.w @er3,@+er1"
+gdb_test "x" "and.w\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.w @er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@er3,@0x9abc(:16|)" \
+       "and.w @er3,@0x9abc:16"
+gdb_test "x" "and.w\t@er3,@0x9abcdef0(:32|)" \
+       "and.w @er3,@0x9abcdef0:32"
+gdb_test "x" "and.w\t@-er3,@er1" \
+       "and.w @-er3,@er1"
+gdb_test "x" "and.w\t@-er3,@\\(0x6(:2|),er1\\)" \
+       "and.w @-er3,@(0x6:2,er1)"
+gdb_test "x" "and.w\t@-er3,@-er1" \
+       "and.w @-er3,@-er1"
+gdb_test "x" "and.w\t@-er3,@er1\\+" \
+       "and.w @-er3,@er1+"
+gdb_test "x" "and.w\t@-er3,@er1-" \
+       "and.w @-er3,@er1-"
+gdb_test "x" "and.w\t@-er3,@\\+er1" \
+       "and.w @-er3,@+er1"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.w @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@-er3,@0x9abc(:16|)" \
+       "and.w @-er3,@0x9abc:16"
+gdb_test "x" "and.w\t@-er3,@0x9abcdef0(:32|)" \
+       "and.w @-er3,@0x9abcdef0:32"
+gdb_test "x" "and.w\t@er3\\+,@er1" \
+       "and.w @er3+,@er1"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x6(:2|),er1\\)" \
+       "and.w @er3+,@(0x6:2,er1)"
+gdb_test "x" "and.w\t@er3\\+,@-er1" \
+       "and.w @er3+,@-er1"
+gdb_test "x" "and.w\t@er3\\+,@er1\\+" \
+       "and.w @er3+,@er1+"
+gdb_test "x" "and.w\t@er3\\+,@er1-" \
+       "and.w @er3+,@er1-"
+gdb_test "x" "and.w\t@er3\\+,@\\+er1" \
+       "and.w @er3+,@+er1"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "and.w @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@er3\\+,@0x9abc(:16|)" \
+       "and.w @er3+,@0x9abc:16"
+gdb_test "x" "and.w\t@er3\\+,@0x9abcdef0(:32|)" \
+       "and.w @er3+,@0x9abcdef0:32"
+gdb_test "x" "and.w\t@er3-,@er1" \
+       "and.w @er3-,@er1"
+gdb_test "x" "and.w\t@er3-,@\\(0x6(:2|),er1\\)" \
+       "and.w @er3-,@(0x6:2,er1)"
+gdb_test "x" "and.w\t@er3-,@-er1" \
+       "and.w @er3-,@-er1"
+gdb_test "x" "and.w\t@er3-,@er1\\+" \
+       "and.w @er3-,@er1+"
+gdb_test "x" "and.w\t@er3-,@er1-" \
+       "and.w @er3-,@er1-"
+gdb_test "x" "and.w\t@er3-,@\\+er1" \
+       "and.w @er3-,@+er1"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "and.w @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@er3-,@0x9abc(:16|)" \
+       "and.w @er3-,@0x9abc:16"
+gdb_test "x" "and.w\t@er3-,@0x9abcdef0(:32|)" \
+       "and.w @er3-,@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\+er3,@er1" \
+       "and.w @+er3,@er1"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x6(:2|),er1\\)" \
+       "and.w @+er3,@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\+er3,@-er1" \
+       "and.w @+er3,@-er1"
+gdb_test "x" "and.w\t@\\+er3,@er1\\+" \
+       "and.w @+er3,@er1+"
+gdb_test "x" "and.w\t@\\+er3,@er1-" \
+       "and.w @+er3,@er1-"
+gdb_test "x" "and.w\t@\\+er3,@\\+er1" \
+       "and.w @+er3,@+er1"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.w @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\+er3,@0x9abc(:16|)" \
+       "and.w @+er3,@0x9abc:16"
+gdb_test "x" "and.w\t@\\+er3,@0x9abcdef0(:32|)" \
+       "and.w @+er3,@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@er1" \
+       "and.w @(0x1234:16,er3),@er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x1234:16,er3),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "and.w @(0x1234:16,er3),@-er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "and.w @(0x1234:16,er3),@er1+"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "and.w @(0x1234:16,er3),@er1-"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "and.w @(0x1234:16,er3),@+er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "and.w @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "and.w @(0x12345678:32,er3),@er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x12345678:32,er3),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "and.w @(0x12345678:32,er3),@-er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "and.w @(0x12345678:32,er3),@er1+"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "and.w @(0x12345678:32,er3),@er1-"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "and.w @(0x12345678:32,er3),@+er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "and.w @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "and.w @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "and.w @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "and.w @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "and.w @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "and.w @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "and.w @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "and.w @(0x1234:16,r3.w),@er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "and.w @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "and.w @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "and.w @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "and.w @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "and.w @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "and.w @(0x1234:16,er3.l),@er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "and.w @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "and.w @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "and.w @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "and.w @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "and.w @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "and.w @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "and.w @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "and.w @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "and.w @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "and.w @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "and.w @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "and.w @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "and.w @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "and.w @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "and.w @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "and.w @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "and.w @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "and.w @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x6(:2|),er1\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x6:2,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "and.w @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "and.w @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "and.w @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "and.w @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "and.w @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "and.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "and.w @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "and.w\t@0x1234(:16|),@er1" \
+       "and.w @0x1234:16,@er1"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x6(:2|),er1\\)" \
+       "and.w @0x1234:16,@(0x6:2,er1)"
+gdb_test "x" "and.w\t@0x1234(:16|),@-er1" \
+       "and.w @0x1234:16,@-er1"
+gdb_test "x" "and.w\t@0x1234(:16|),@er1\\+" \
+       "and.w @0x1234:16,@er1+"
+gdb_test "x" "and.w\t@0x1234(:16|),@er1-" \
+       "and.w @0x1234:16,@er1-"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\+er1" \
+       "and.w @0x1234:16,@+er1"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@0x1234(:16|),@0x9abc(:16|)" \
+       "and.w @0x1234:16,@0x9abc:16"
+gdb_test "x" "and.w\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "and.w @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "and.w\t@0x12345678(:32|),@er1" \
+       "and.w @0x12345678:32,@er1"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x6(:2|),er1\\)" \
+       "and.w @0x12345678:32,@(0x6:2,er1)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@-er1" \
+       "and.w @0x12345678:32,@-er1"
+gdb_test "x" "and.w\t@0x12345678(:32|),@er1\\+" \
+       "and.w @0x12345678:32,@er1+"
+gdb_test "x" "and.w\t@0x12345678(:32|),@er1-" \
+       "and.w @0x12345678:32,@er1-"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\+er1" \
+       "and.w @0x12345678:32,@+er1"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "and.w @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.w @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.w @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.w @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.w @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.w @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.w @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.w\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "and.w @0x12345678:32,@0x9abc:16"
+gdb_test "x" "and.w\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "and.w @0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "and.l\t#0x12345678(:32|),er1" \
+       "and.l #0x12345678:32,er1"
+gdb_test "x" "and.l\t#0x1234(:16|),er1" \
+       "and.l #0x1234:16,er1"
+gdb_test "x" "and.l\t#0x12345678(:32|),@er1" \
+       "and.l #0x12345678:32,@er1"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "and.l #0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@er1\\+" \
+       "and.l #0x12345678:32,@er1+"
+gdb_test "x" "and.l\t#0x12345678(:32|),@-er1" \
+       "and.l #0x12345678:32,@-er1"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\+er1" \
+       "and.l #0x12345678:32,@+er1"
+gdb_test "x" "and.l\t#0x12345678(:32|),@er1-" \
+       "and.l #0x12345678:32,@er1-"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "and.l #0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l #0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l #0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l #0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l #0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l #0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l #0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t#0x12345678(:32|),@0x9abc(:16|)" \
+       "and.l #0x12345678:32,@0x9abc:16"
+gdb_test "x" "and.l\t#0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "and.l #0x12345678:32,@0x9abcdef0:32"
+gdb_test "x" "and.l\t#0x1234(:16|),@er1" \
+       "and.l #0x1234:16,@er1"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "and.l #0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "and.l\t#0x1234(:16|),@er1\\+" \
+       "and.l #0x1234:16,@er1+"
+gdb_test "x" "and.l\t#0x1234(:16|),@-er1" \
+       "and.l #0x1234:16,@-er1"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\+er1" \
+       "and.l #0x1234:16,@+er1"
+gdb_test "x" "and.l\t#0x1234(:16|),@er1-" \
+       "and.l #0x1234:16,@er1-"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "and.l #0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l #0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l #0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l #0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l #0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l #0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l #0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l #0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t#0x1234(:16|),@0x9abc(:16|)" \
+       "and.l #0x1234:16,@0x9abc:16"
+gdb_test "x" "and.l\t#0x1234(:16|),@0x9abcdef0(:32|)" \
+       "and.l #0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "and.l\ter3,er1" \
+       "and.l er3,er1"
+gdb_test "x" "and.l\ter3,@er1" \
+       "and.l er3,@er1"
+gdb_test "x" "and.l\ter3,@\\(0xc(:2|),er1\\)" \
+       "and.l er3,@(0xc:2,er1)"
+gdb_test "x" "and.l\ter3,@er1\\+" \
+       "and.l er3,@er1+"
+gdb_test "x" "and.l\ter3,@-er1" \
+       "and.l er3,@-er1"
+gdb_test "x" "and.l\ter3,@\\+er1" \
+       "and.l er3,@+er1"
+gdb_test "x" "and.l\ter3,@er1-" \
+       "and.l er3,@er1-"
+gdb_test "x" "and.l\ter3,@\\(0x1234(:16|),er1\\)" \
+       "and.l er3,@(0x1234:16,er1)"
+gdb_test "x" "and.l\ter3,@\\(0x12345678(:32|),er1\\)" \
+       "and.l er3,@(0x12345678:32,er1)"
+gdb_test "x" "and.l\ter3,@\\(0x1234(:16|),r2l.b\\)" \
+       "and.l er3,@(0x1234:16,r2l.b)"
+gdb_test "x" "and.l\ter3,@\\(0x1234(:16|),r2.w\\)" \
+       "and.l er3,@(0x1234:16,r2.w)"
+gdb_test "x" "and.l\ter3,@\\(0x1234(:16|),er2.l\\)" \
+       "and.l er3,@(0x1234:16,er2.l)"
+gdb_test "x" "and.l\ter3,@\\(0x12345678(:32|),r2l.b\\)" \
+       "and.l er3,@(0x12345678:32,r2l.b)"
+gdb_test "x" "and.l\ter3,@\\(0x12345678(:32|),r2.w\\)" \
+       "and.l er3,@(0x12345678:32,r2.w)"
+gdb_test "x" "and.l\ter3,@\\(0x12345678(:32|),er2.l\\)" \
+       "and.l er3,@(0x12345678:32,er2.l)"
+gdb_test "x" "and.l\ter3,@0x1234(:16|)" \
+       "and.l er3,@0x1234:16"
+gdb_test "x" "and.l\ter3,@0x12345678(:32|)" \
+       "and.l er3,@0x12345678:32"
+gdb_test "x" "and.l\t@er3,er1" \
+       "and.l @er3,er1"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),er1" \
+       "and.l @(0xc:2,er3),er1"
+gdb_test "x" "and.l\t@er3\\+,er1" \
+       "and.l @er3+,er1"
+gdb_test "x" "and.l\t@-er3,er1" \
+       "and.l @-er3,er1"
+gdb_test "x" "and.l\t@\\+er3,er1" \
+       "and.l @+er3,er1"
+gdb_test "x" "and.l\t@er3-,er1" \
+       "and.l @er3-,er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er1\\),er1" \
+       "and.l @(0x1234:16,er1),er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er1\\),er1" \
+       "and.l @(0x12345678:32,er1),er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r2l.b\\),er1" \
+       "and.l @(0x1234:16,r2l.b),er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r2.w\\),er1" \
+       "and.l @(0x1234:16,r2.w),er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er2.l\\),er1" \
+       "and.l @(0x1234:16,er2.l),er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r2l.b\\),er1" \
+       "and.l @(0x12345678:32,r2l.b),er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r2.w\\),er1" \
+       "and.l @(0x12345678:32,r2.w),er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er2.l\\),er1" \
+       "and.l @(0x12345678:32,er2.l),er1"
+gdb_test "x" "and.l\t@0x1234(:16|),er1" \
+       "and.l @0x1234:16,er1"
+gdb_test "x" "and.l\t@0x12345678(:32|),er1" \
+       "and.l @0x12345678:32,er1"
+gdb_test "x" "and.l\t@er3,@er1" \
+       "and.l @er3,@er1"
+gdb_test "x" "and.l\t@er3,@\\(0xc(:2|),er1\\)" \
+       "and.l @er3,@(0xc:2,er1)"
+gdb_test "x" "and.l\t@er3,@-er1" \
+       "and.l @er3,@-er1"
+gdb_test "x" "and.l\t@er3,@er1\\+" \
+       "and.l @er3,@er1+"
+gdb_test "x" "and.l\t@er3,@er1-" \
+       "and.l @er3,@er1-"
+gdb_test "x" "and.l\t@er3,@\\+er1" \
+       "and.l @er3,@+er1"
+gdb_test "x" "and.l\t@er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.l @er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@er3,@0x9abc(:16|)" \
+       "and.l @er3,@0x9abc:16"
+gdb_test "x" "and.l\t@er3,@0x9abcdef0(:32|)" \
+       "and.l @er3,@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@er1" \
+       "and.l @(0xc:2,er3),@er1"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0xc:2,er3),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@-er1" \
+       "and.l @(0xc:2,er3),@-er1"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@er1\\+" \
+       "and.l @(0xc:2,er3),@er1+"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@er1-" \
+       "and.l @(0xc:2,er3),@er1-"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\+er1" \
+       "and.l @(0xc:2,er3),@+er1"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0xc:2,er3),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0xc:2,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0xc:2,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0xc:2,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0xc:2,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@0x9abc(:16|)" \
+       "and.l @(0xc:2,er3),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0xc(:2|),er3\\),@0x9abcdef0(:32|)" \
+       "and.l @(0xc:2,er3),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@-er3,@er1" \
+       "and.l @-er3,@er1"
+gdb_test "x" "and.l\t@-er3,@\\(0xc(:2|),er1\\)" \
+       "and.l @-er3,@(0xc:2,er1)"
+gdb_test "x" "and.l\t@-er3,@-er1" \
+       "and.l @-er3,@-er1"
+gdb_test "x" "and.l\t@-er3,@er1\\+" \
+       "and.l @-er3,@er1+"
+gdb_test "x" "and.l\t@-er3,@er1-" \
+       "and.l @-er3,@er1-"
+gdb_test "x" "and.l\t@-er3,@\\+er1" \
+       "and.l @-er3,@+er1"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.l @-er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @-er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @-er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @-er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @-er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @-er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @-er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @-er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@-er3,@0x9abc(:16|)" \
+       "and.l @-er3,@0x9abc:16"
+gdb_test "x" "and.l\t@-er3,@0x9abcdef0(:32|)" \
+       "and.l @-er3,@0x9abcdef0:32"
+gdb_test "x" "and.l\t@er3\\+,@er1" \
+       "and.l @er3+,@er1"
+gdb_test "x" "and.l\t@er3\\+,@\\(0xc(:2|),er1\\)" \
+       "and.l @er3+,@(0xc:2,er1)"
+gdb_test "x" "and.l\t@er3\\+,@-er1" \
+       "and.l @er3+,@-er1"
+gdb_test "x" "and.l\t@er3\\+,@er1\\+" \
+       "and.l @er3+,@er1+"
+gdb_test "x" "and.l\t@er3\\+,@er1-" \
+       "and.l @er3+,@er1-"
+gdb_test "x" "and.l\t@er3\\+,@\\+er1" \
+       "and.l @er3+,@+er1"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
+       "and.l @er3+,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @er3+,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @er3+,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @er3+,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @er3+,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @er3+,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @er3+,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @er3+,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@er3\\+,@0x9abc(:16|)" \
+       "and.l @er3+,@0x9abc:16"
+gdb_test "x" "and.l\t@er3\\+,@0x9abcdef0(:32|)" \
+       "and.l @er3+,@0x9abcdef0:32"
+gdb_test "x" "and.l\t@er3-,@er1" \
+       "and.l @er3-,@er1"
+gdb_test "x" "and.l\t@er3-,@\\(0xc(:2|),er1\\)" \
+       "and.l @er3-,@(0xc:2,er1)"
+gdb_test "x" "and.l\t@er3-,@-er1" \
+       "and.l @er3-,@-er1"
+gdb_test "x" "and.l\t@er3-,@er1\\+" \
+       "and.l @er3-,@er1+"
+gdb_test "x" "and.l\t@er3-,@er1-" \
+       "and.l @er3-,@er1-"
+gdb_test "x" "and.l\t@er3-,@\\+er1" \
+       "and.l @er3-,@+er1"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abc(:16|),er1\\)" \
+       "and.l @er3-,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @er3-,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @er3-,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @er3-,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @er3-,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @er3-,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @er3-,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @er3-,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@er3-,@0x9abc(:16|)" \
+       "and.l @er3-,@0x9abc:16"
+gdb_test "x" "and.l\t@er3-,@0x9abcdef0(:32|)" \
+       "and.l @er3-,@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\+er3,@er1" \
+       "and.l @+er3,@er1"
+gdb_test "x" "and.l\t@\\+er3,@\\(0xc(:2|),er1\\)" \
+       "and.l @+er3,@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\+er3,@-er1" \
+       "and.l @+er3,@-er1"
+gdb_test "x" "and.l\t@\\+er3,@er1\\+" \
+       "and.l @+er3,@er1+"
+gdb_test "x" "and.l\t@\\+er3,@er1-" \
+       "and.l @+er3,@er1-"
+gdb_test "x" "and.l\t@\\+er3,@\\+er1" \
+       "and.l @+er3,@+er1"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
+       "and.l @+er3,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @+er3,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @+er3,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @+er3,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @+er3,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @+er3,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @+er3,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @+er3,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\+er3,@0x9abc(:16|)" \
+       "and.l @+er3,@0x9abc:16"
+gdb_test "x" "and.l\t@\\+er3,@0x9abcdef0(:32|)" \
+       "and.l @+er3,@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@er1" \
+       "and.l @(0x1234:16,er3),@er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x1234:16,er3),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@-er1" \
+       "and.l @(0x1234:16,er3),@-er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@er1\\+" \
+       "and.l @(0x1234:16,er3),@er1+"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@er1-" \
+       "and.l @(0x1234:16,er3),@er1-"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\+er1" \
+       "and.l @(0x1234:16,er3),@+er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
+       "and.l @(0x1234:16,er3),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x1234:16,er3),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@er1" \
+       "and.l @(0x12345678:32,er3),@er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x12345678:32,er3),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@-er1" \
+       "and.l @(0x12345678:32,er3),@-er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
+       "and.l @(0x12345678:32,er3),@er1+"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@er1-" \
+       "and.l @(0x12345678:32,er3),@er1-"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
+       "and.l @(0x12345678:32,er3),@+er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
+       "and.l @(0x12345678:32,er3),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x12345678:32,er3),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@er1" \
+       "and.l @(0x1234:16,r3l.b),@er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
+       "and.l @(0x1234:16,r3l.b),@-er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
+       "and.l @(0x1234:16,r3l.b),@er1+"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
+       "and.l @(0x1234:16,r3l.b),@er1-"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
+       "and.l @(0x1234:16,r3l.b),@+er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
+       "and.l @(0x1234:16,r3l.b),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x1234:16,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@er1" \
+       "and.l @(0x1234:16,r3.w),@er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x1234:16,r3.w),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@-er1" \
+       "and.l @(0x1234:16,r3.w),@-er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
+       "and.l @(0x1234:16,r3.w),@er1+"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@er1-" \
+       "and.l @(0x1234:16,r3.w),@er1-"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
+       "and.l @(0x1234:16,r3.w),@+er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
+       "and.l @(0x1234:16,r3.w),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x1234:16,r3.w),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@er1" \
+       "and.l @(0x1234:16,er3.l),@er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x1234:16,er3.l),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@-er1" \
+       "and.l @(0x1234:16,er3.l),@-er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
+       "and.l @(0x1234:16,er3.l),@er1+"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@er1-" \
+       "and.l @(0x1234:16,er3.l),@er1-"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
+       "and.l @(0x1234:16,er3.l),@+er1"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
+       "and.l @(0x1234:16,er3.l),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x1234:16,er3.l),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
+       "and.l @(0x12345678:32,r3l.b),@er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
+       "and.l @(0x12345678:32,r3l.b),@-er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
+       "and.l @(0x12345678:32,r3l.b),@er1+"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
+       "and.l @(0x12345678:32,r3l.b),@er1-"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
+       "and.l @(0x12345678:32,r3l.b),@+er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
+       "and.l @(0x12345678:32,r3l.b),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x12345678:32,r3l.b),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@er1" \
+       "and.l @(0x12345678:32,r3.w),@er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
+       "and.l @(0x12345678:32,r3.w),@-er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
+       "and.l @(0x12345678:32,r3.w),@er1+"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
+       "and.l @(0x12345678:32,r3.w),@er1-"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
+       "and.l @(0x12345678:32,r3.w),@+er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
+       "and.l @(0x12345678:32,r3.w),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x12345678:32,r3.w),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@er1" \
+       "and.l @(0x12345678:32,er3.l),@er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0xc(:2|),er1\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0xc:2,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
+       "and.l @(0x12345678:32,er3.l),@-er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
+       "and.l @(0x12345678:32,er3.l),@er1+"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
+       "and.l @(0x12345678:32,er3.l),@er1-"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
+       "and.l @(0x12345678:32,er3.l),@+er1"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
+       "and.l @(0x12345678:32,er3.l),@0x9abc:16"
+gdb_test "x" "and.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
+       "and.l @(0x12345678:32,er3.l),@0x9abcdef0:32"
+gdb_test "x" "and.l\t@0x1234(:16|),@er1" \
+       "and.l @0x1234:16,@er1"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0xc(:2|),er1\\)" \
+       "and.l @0x1234:16,@(0xc:2,er1)"
+gdb_test "x" "and.l\t@0x1234(:16|),@-er1" \
+       "and.l @0x1234:16,@-er1"
+gdb_test "x" "and.l\t@0x1234(:16|),@er1\\+" \
+       "and.l @0x1234:16,@er1+"
+gdb_test "x" "and.l\t@0x1234(:16|),@er1-" \
+       "and.l @0x1234:16,@er1-"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\+er1" \
+       "and.l @0x1234:16,@+er1"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @0x1234:16,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @0x1234:16,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @0x1234:16,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @0x1234:16,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @0x1234:16,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @0x1234:16,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @0x1234:16,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @0x1234:16,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@0x1234(:16|),@0x9abc(:16|)" \
+       "and.l @0x1234:16,@0x9abc:16"
+gdb_test "x" "and.l\t@0x1234(:16|),@0x9abcdef0(:32|)" \
+       "and.l @0x1234:16,@0x9abcdef0:32"
+gdb_test "x" "and.l\t@0x12345678(:32|),@er1" \
+       "and.l @0x12345678:32,@er1"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
+       "and.l @0x12345678:32,@(0xc:2,er1)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@-er1" \
+       "and.l @0x12345678:32,@-er1"
+gdb_test "x" "and.l\t@0x12345678(:32|),@er1\\+" \
+       "and.l @0x12345678:32,@er1+"
+gdb_test "x" "and.l\t@0x12345678(:32|),@er1-" \
+       "and.l @0x12345678:32,@er1-"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\+er1" \
+       "and.l @0x12345678:32,@+er1"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
+       "and.l @0x12345678:32,@(0x9abc:16,er1)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
+       "and.l @0x12345678:32,@(0x9abcdef0:32,er1)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
+       "and.l @0x12345678:32,@(0x9abc:16,r2l.b)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
+       "and.l @0x12345678:32,@(0x9abc:16,r2.w)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
+       "and.l @0x12345678:32,@(0x9abc:16,er2.l)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
+       "and.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
+       "and.l @0x12345678:32,@(0x9abcdef0:32,r2.w)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
+       "and.l @0x12345678:32,@(0x9abcdef0:32,er2.l)"
+gdb_test "x" "and.l\t@0x12345678(:32|),@0x9abc(:16|)" \
+       "and.l @0x12345678:32,@0x9abc:16"
+gdb_test "x" "and.l\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
+       "and.l @0x12345678:32,@0x9abcdef0:32"
diff --git a/gdb/testsuite/gdb.disasm/t10_and.s b/gdb/testsuite/gdb.disasm/t10_and.s
new file mode 100644 (file)
index 0000000..63ce383
--- /dev/null
@@ -0,0 +1,972 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;log_1\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    and.b #0x12:8,r1h            ;e112\r
+    and.b #0x12:8,@er1          ;7d10e012\r
+    and.b #0x12:8,@(0x3:2,er1)    ;01776818e012\r
+    and.b #0x12:8,@er1+         ;01746c18e012\r
+    and.b #0x12:8,@-er1         ;01776c18e012\r
+    and.b #0x12:8,@+er1         ;01756c18e012\r
+    and.b #0x12:8,@er1-         ;01766c18e012\r
+    and.b #0x12:8,@(0x1234:16,er1)   ;01746e181234e012\r
+    and.b #0x12:8,@(0x12345678:32,er1)   ;78146a2812345678e012\r
+    and.b #0x12:8,@(0x1234:16,r2l.b) ;01756e281234e012\r
+    and.b #0x12:8,@(0x1234:16,r2.w) ;01766e281234e012\r
+    and.b #0x12:8,@(0x1234:16,er2.l) ;01776e281234e012\r
+    and.b #0x12:8,@(0x12345678:32,r2l.b) ;78256a2812345678e012\r
+    and.b #0x12:8,@(0x12345678:32,r2.w) ;78266a2812345678e012\r
+    and.b #0x12:8,@(0x12345678:32,er2.l) ;78276a2812345678e012\r
+    and.b #0x12:8,@0xffffff12:8         ;7f12e012\r
+    and.b #0x12:8,@0x1234:16        ;6a181234e012\r
+    and.b #0x12:8,@0x12345678:32        ;6a3812345678e012\r
+\r
+    and.b r3h,r1h              ;1631\r
+\r
+    and.b r3h,@er1            ;7d101630\r
+    and.b r3h,@(0x3:2,er1)      ;01793163\r
+    and.b r3h,@er1+           ;01798163\r
+    and.b r3h,@-er1           ;0179b163\r
+    and.b r3h,@+er1           ;01799163\r
+    and.b r3h,@er1-           ;0179a163\r
+    and.b r3h,@(0x1234:16,er1)     ;0179c1631234\r
+    and.b r3h,@(0x12345678:32,er1)     ;0179c96312345678\r
+    and.b r3h,@(0x1234:16,r2l.b)   ;0179d2631234\r
+    and.b r3h,@(0x1234:16,r2.w)   ;0179e2631234\r
+    and.b r3h,@(0x1234:16,er2.l)   ;0179f2631234\r
+    and.b r3h,@(0x12345678:32,r2l.b)   ;0179da6312345678\r
+    and.b r3h,@(0x12345678:32,r2.w)   ;0179ea6312345678\r
+    and.b r3h,@(0x12345678:32,er2.l)   ;0179fa6312345678\r
+    and.b r3h,@0xffffff12:8           ;7f121630\r
+    and.b r3h,@0x1234:16          ;6a1812341630\r
+    and.b r3h,@0x12345678:32           ;6a38123456781630\r
+\r
+    and.b @er3,r1h            ;7c301601\r
+    and.b @(0x3:2,er3),r1h     ;017a3361\r
+    and.b @er3+,r1h          ;017a8361\r
+    and.b @-er3,r1h          ;017ab361\r
+    and.b @+er3,r1h          ;017a9361\r
+    and.b @er3-,r1h          ;017aa361\r
+    and.b @(0x1234:16,er1),r1h     ;017ac1611234\r
+    and.b @(0x12345678:32,er1),r1h     ;017ac96112345678\r
+    and.b @(0x1234:16,r2l.b),r1h   ;017ad2611234\r
+    and.b @(0x1234:16,r2.w),r1h   ;017ae2611234\r
+    and.b @(0x1234:16,er2.l),r1h   ;017af2611234\r
+    and.b @(0x12345678:32,r2l.b),r1h   ;017ada6112345678\r
+    and.b @(0x12345678:32,r2.w),r1h   ;017aea6112345678\r
+    and.b @(0x12345678:32,er2.l),r1h   ;017afa6112345678\r
+    and.b @0xffffff12:8,r1h           ;7e121601\r
+    and.b @0x1234:16,r1h          ;6a1012341601\r
+    and.b @0x12345678:32,r1h          ;6a30123456781601\r
+\r
+    and.b @er3,@er1                                ;7c350160\r
+    and.b @er3,@(3:2,er1)                          ;7c353160\r
+    and.b @er3,@-er1                               ;7c35b160\r
+    and.b @er3,@er1+                               ;7c358160\r
+    and.b @er3,@er1-                               ;7c35a160\r
+    and.b @er3,@+er1                               ;7c359160\r
+    and.b @er3,@(0xffff9abc:16,er1)                ;7c35c1609abc\r
+    and.b @er3,@(0x9abcdef0:32,er1)                ;7c35c9609abcdef0\r
+    and.b @er3,@(0xffff9abc:16,r2l.b)              ;7c35d2609abc\r
+    and.b @er3,@(0xffff9abc:16,r2.w)              ;7c35e2609abc\r
+    and.b @er3,@(0xffff9abc:16,er2.l)              ;7c35f2609abc\r
+    and.b @er3,@(0x9abcdef0:32,r2l.b)              ;7c35da609abcdef0\r
+    and.b @er3,@(0x9abcdef0:32,r2.w)              ;7c35ea609abcdef0\r
+    and.b @er3,@(0x9abcdef0:32,er2.l)              ;7c35fa609abcdef0\r
+    and.b @er3,@0xffff9abc:16                      ;7c3540609abc\r
+    and.b @er3,@0x9abcdef0:32                      ;7c3548609abcdef0\r
+\r
+    and.b @-er3,@er1                               ;01776c3c0160\r
+    and.b @-er3,@(3:2,er1)                         ;01776c3c3160\r
+    and.b @-er3,@-er1                              ;01776c3cb160\r
+    and.b @-er3,@er1+                              ;01776c3c8160\r
+    and.b @-er3,@er1-                              ;01776c3ca160\r
+    and.b @-er3,@+er1                              ;01776c3c9160\r
+    and.b @-er3,@(0xffff9abc:16,er1)               ;01776c3cc1609abc\r
+    and.b @-er3,@(0x9abcdef0:32,er1)               ;01776c3cc9609abcdef0\r
+    and.b @-er3,@(0xffff9abc:16,r2l.b)             ;01776c3cd2609abc\r
+    and.b @-er3,@(0xffff9abc:16,r2.w)             ;01776c3ce2609abc\r
+    and.b @-er3,@(0xffff9abc:16,er2.l)             ;01776c3cf2609abc\r
+    and.b @-er3,@(0x9abcdef0:32,r2l.b)             ;01776c3cda609abcdef0\r
+    and.b @-er3,@(0x9abcdef0:32,r2.w)             ;01776c3cea609abcdef0\r
+    and.b @-er3,@(0x9abcdef0:32,er2.l)             ;01776c3cfa609abcdef0\r
+    and.b @-er3,@0xffff9abc:16                     ;01776c3c40609abc\r
+    and.b @-er3,@0x9abcdef0:32                     ;01776c3c48609abcdef0\r
+\r
+    and.b @er3+,@er1                               ;01746c3c0160\r
+    and.b @er3+,@(3:2,er1)                         ;01746c3c3160\r
+    and.b @er3+,@-er1                              ;01746c3cb160\r
+    and.b @er3+,@er1+                              ;01746c3c8160\r
+    and.b @er3+,@er1-                              ;01746c3ca160\r
+    and.b @er3+,@+er1                              ;01746c3c9160\r
+    and.b @er3+,@(0xffff9abc:16,er1)               ;01746c3cc1609abc\r
+    and.b @er3+,@(0x9abcdef0:32,er1)               ;01746c3cc9609abcdef0\r
+    and.b @er3+,@(0xffff9abc:16,r2l.b)             ;01746c3cd2609abc\r
+    and.b @er3+,@(0xffff9abc:16,r2.w)             ;01746c3ce2609abc\r
+    and.b @er3+,@(0xffff9abc:16,er2.l)             ;01746c3cf2609abc\r
+    and.b @er3+,@(0x9abcdef0:32,r2l.b)             ;01746c3cda609abcdef0\r
+    and.b @er3+,@(0x9abcdef0:32,r2.w)             ;01746c3cea609abcdef0\r
+    and.b @er3+,@(0x9abcdef0:32,er2.l)             ;01746c3cfa609abcdef0\r
+    and.b @er3+,@0xffff9abc:16                     ;01746c3c40609abc\r
+    and.b @er3+,@0x9abcdef0:32                     ;01746c3c48609abcdef0\r
+\r
+    and.b @er3-,@er1                               ;01766c3c0160\r
+    and.b @er3-,@(3:2,er1)                         ;01766c3c3160\r
+    and.b @er3-,@-er1                              ;01766c3cb160\r
+    and.b @er3-,@er1+                              ;01766c3c8160\r
+    and.b @er3-,@er1-                              ;01766c3ca160\r
+    and.b @er3-,@+er1                              ;01766c3c9160\r
+    and.b @er3-,@(0xffff9abc:16,er1)               ;01766c3cc1609abc\r
+    and.b @er3-,@(0x9abcdef0:32,er1)               ;01766c3cc9609abcdef0\r
+    and.b @er3-,@(0xffff9abc:16,r2l.b)             ;01766c3cd2609abc\r
+    and.b @er3-,@(0xffff9abc:16,r2.w)             ;01766c3ce2609abc\r
+    and.b @er3-,@(0xffff9abc:16,er2.l)             ;01766c3cf2609abc\r
+    and.b @er3-,@(0x9abcdef0:32,r2l.b)             ;01766c3cda609abcdef0\r
+    and.b @er3-,@(0x9abcdef0:32,r2.w)             ;01766c3cea609abcdef0\r
+    and.b @er3-,@(0x9abcdef0:32,er2.l)             ;01766c3cfa609abcdef0\r
+    and.b @er3-,@0xffff9abc:16                     ;01766c3c40609abc\r
+    and.b @er3-,@0x9abcdef0:32                     ;01766c3c48609abcdef0\r
+\r
+    and.b @+er3,@er1                               ;01756c3c0160\r
+    and.b @+er3,@(3:2,er1)                         ;01756c3c3160\r
+    and.b @+er3,@-er1                              ;01756c3cb160\r
+    and.b @+er3,@er1+                              ;01756c3c8160\r
+    and.b @+er3,@er1-                              ;01756c3ca160\r
+    and.b @+er3,@+er1                              ;01756c3c9160\r
+    and.b @+er3,@(0xffff9abc:16,er1)               ;01756c3cc1609abc\r
+    and.b @+er3,@(0x9abcdef0:32,er1)               ;01756c3cc9609abcdef0\r
+    and.b @+er3,@(0xffff9abc:16,r2l.b)             ;01756c3cd2609abc\r
+    and.b @+er3,@(0xffff9abc:16,r2.w)             ;01756c3ce2609abc\r
+    and.b @+er3,@(0xffff9abc:16,er2.l)             ;01756c3cf2609abc\r
+    and.b @+er3,@(0x9abcdef0:32,r2l.b)             ;01756c3cda609abcdef0\r
+    and.b @+er3,@(0x9abcdef0:32,r2.w)             ;01756c3cea609abcdef0\r
+    and.b @+er3,@(0x9abcdef0:32,er2.l)             ;01756c3cfa609abcdef0\r
+    and.b @+er3,@0xffff9abc:16                     ;01756c3c40609abc\r
+    and.b @+er3,@0x9abcdef0:32                     ;01756c3c48609abcdef0\r
+\r
+    and.b @(0x1234:16,er3),@er1                         ;01746e3c12340160\r
+    and.b @(0x1234:16,er3),@(3:2,er1)                   ;01746e3c12343160\r
+    and.b @(0x1234:16,er3),@-er1                        ;01746e3c1234b160\r
+    and.b @(0x1234:16,er3),@er1+                        ;01746e3c12348160\r
+    and.b @(0x1234:16,er3),@er1-                        ;01746e3c1234a160\r
+    and.b @(0x1234:16,er3),@+er1                        ;01746e3c12349160\r
+    and.b @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01746e3c1234c1609abc\r
+    and.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01746e3c1234c9609abcdef0\r
+    and.b @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01746e3c1234d2609abc\r
+    and.b @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01746e3c1234e2609abc\r
+    and.b @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01746e3c1234f2609abc\r
+    and.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01746e3c1234da609abcdef0\r
+    and.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01746e3c1234ea609abcdef0\r
+    and.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01746e3c1234fa609abcdef0\r
+    and.b @(0x1234:16,er3),@0xffff9abc:16               ;01746e3c123440609abc\r
+    and.b @(0x1234:16,er3),@0x9abcdef0:32               ;01746e3c123448609abcdef0\r
+\r
+    and.b @(0x12345678:32,er3),@er1                         ;78346a2c123456780160\r
+    and.b @(0x12345678:32,er3),@(3:2,er1)                   ;78346a2c123456783160\r
+    and.b @(0x12345678:32,er3),@-er1                        ;78346a2c12345678b160\r
+    and.b @(0x12345678:32,er3),@er1+                        ;78346a2c123456788160\r
+    and.b @(0x12345678:32,er3),@er1-                        ;78346a2c12345678a160\r
+    and.b @(0x12345678:32,er3),@+er1                        ;78346a2c123456789160\r
+    and.b @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346a2c12345678c1609abc\r
+    and.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346a2c12345678c9609abcdef0\r
+    and.b @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346a2c12345678d2609abc\r
+    and.b @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346a2c12345678e2609abc\r
+    and.b @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346a2c12345678f2609abc\r
+    and.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346a2c12345678da609abcdef0\r
+    and.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346a2c12345678ea609abcdef0\r
+    and.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346a2c12345678fa609abcdef0\r
+    and.b @(0x12345678:32,er3),@0xffff9abc:16               ;78346a2c1234567840609abc\r
+    and.b @(0x12345678:32,er3),@0x9abcdef0:32               ;78346a2c1234567848609abcdef0\r
+\r
+    and.b @(0x1234:16,r3l.b),@er1                       ;01756e3c12340160\r
+    and.b @(0x1234:16,r3l.b),@(3:2,er1)                 ;01756e3c12343160\r
+    and.b @(0x1234:16,r3l.b),@-er1                      ;01756e3c1234b160\r
+    and.b @(0x1234:16,r3l.b),@er1+                      ;01756e3c12348160\r
+    and.b @(0x1234:16,r3l.b),@er1-                      ;01756e3c1234a160\r
+    and.b @(0x1234:16,r3l.b),@+er1                      ;01756e3c12349160\r
+    and.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01756e3c1234c1609abc\r
+    and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01756e3c1234c9609abcdef0\r
+    and.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01756e3c1234d2609abc\r
+    and.b @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01756e3c1234e2609abc\r
+    and.b @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01756e3c1234f2609abc\r
+    and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01756e3c1234da609abcdef0\r
+    and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01756e3c1234ea609abcdef0\r
+    and.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01756e3c1234fa609abcdef0\r
+    and.b @(0x1234:16,r3l.b),@0xffff9abc:16             ;01756e3c123440609abc\r
+    and.b @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01756e3c123448609abcdef0\r
+\r
+    and.b @(0x1234:16,r3.w),@er1                       ;01766e3c12340160\r
+    and.b @(0x1234:16,r3.w),@(3:2,er1)                 ;01766e3c12343160\r
+    and.b @(0x1234:16,r3.w),@-er1                      ;01766e3c1234b160\r
+    and.b @(0x1234:16,r3.w),@er1+                      ;01766e3c12348160\r
+    and.b @(0x1234:16,r3.w),@er1-                      ;01766e3c1234a160\r
+    and.b @(0x1234:16,r3.w),@+er1                      ;01766e3c12349160\r
+    and.b @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01766e3c1234c1609abc\r
+    and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01766e3c1234c9609abcdef0\r
+    and.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01766e3c1234d2609abc\r
+    and.b @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01766e3c1234e2609abc\r
+    and.b @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01766e3c1234f2609abc\r
+    and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01766e3c1234da609abcdef0\r
+    and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01766e3c1234ea609abcdef0\r
+    and.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01766e3c1234fa609abcdef0\r
+    and.b @(0x1234:16,r3.w),@0xffff9abc:16             ;01766e3c123440609abc\r
+    and.b @(0x1234:16,r3.w),@0x9abcdef0:32             ;01766e3c123448609abcdef0\r
+\r
+    and.b @(0x1234:16,er3.l),@er1                       ;01776e3c12340160\r
+    and.b @(0x1234:16,er3.l),@(3:2,er1)                 ;01776e3c12343160\r
+    and.b @(0x1234:16,er3.l),@-er1                      ;01776e3c1234b160\r
+    and.b @(0x1234:16,er3.l),@er1+                      ;01776e3c12348160\r
+    and.b @(0x1234:16,er3.l),@er1-                      ;01776e3c1234a160\r
+    and.b @(0x1234:16,er3.l),@+er1                      ;01776e3c12349160\r
+    and.b @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01776e3c1234c1609abc\r
+    and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01776e3c1234c9609abcdef0\r
+    and.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01776e3c1234d2609abc\r
+    and.b @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01776e3c1234e2609abc\r
+    and.b @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01776e3c1234f2609abc\r
+    and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01776e3c1234da609abcdef0\r
+    and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01776e3c1234ea609abcdef0\r
+    and.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01776e3c1234fa609abcdef0\r
+    and.b @(0x1234:16,er3.l),@0xffff9abc:16             ;01776e3c123440609abc\r
+    and.b @(0x1234:16,er3.l),@0x9abcdef0:32             ;01776e3c123448609abcdef0\r
+\r
+    and.b @(0x12345678:32,r3l.b),@er1                       ;78356a2c123456780160\r
+    and.b @(0x12345678:32,r3l.b),@(3:2,er1)                 ;78356a2c123456783160\r
+    and.b @(0x12345678:32,r3l.b),@-er1                      ;78356a2c12345678b160\r
+    and.b @(0x12345678:32,r3l.b),@er1+                      ;78356a2c123456788160\r
+    and.b @(0x12345678:32,r3l.b),@er1-                      ;78356a2c12345678a160\r
+    and.b @(0x12345678:32,r3l.b),@+er1                      ;78356a2c123456789160\r
+    and.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356a2c12345678c1609abc\r
+    and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356a2c12345678c9609abcdef0\r
+    and.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356a2c12345678d2609abc\r
+    and.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356a2c12345678e2609abc\r
+    and.b @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356a2c12345678f2609abc\r
+    and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356a2c12345678da609abcdef0\r
+    and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356a2c12345678ea609abcdef0\r
+    and.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356a2c12345678fa609abcdef0\r
+    and.b @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356a2c1234567840609abc\r
+    and.b @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356a2c1234567848609abcdef0\r
+\r
+    and.b @(0x12345678:32,r3.w),@er1                       ;78366a2c123456780160\r
+    and.b @(0x12345678:32,r3.w),@(3:2,er1)                 ;78366a2c123456783160\r
+    and.b @(0x12345678:32,r3.w),@-er1                      ;78366a2c12345678b160\r
+    and.b @(0x12345678:32,r3.w),@er1+                      ;78366a2c123456788160\r
+    and.b @(0x12345678:32,r3.w),@er1-                      ;78366a2c12345678a160\r
+    and.b @(0x12345678:32,r3.w),@+er1                      ;78366a2c123456789160\r
+    and.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366a2c12345678c1609abc\r
+    and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366a2c12345678c9609abcdef0\r
+    and.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366a2c12345678d2609abc\r
+    and.b @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366a2c12345678e2609abc\r
+    and.b @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366a2c12345678f2609abc\r
+    and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366a2c12345678da609abcdef0\r
+    and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366a2c12345678ea609abcdef0\r
+    and.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366a2c12345678fa609abcdef0\r
+    and.b @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366a2c1234567840609abc\r
+    and.b @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366a2c1234567848609abcdef0\r
+\r
+    and.b @(0x12345678:32,er3.l),@er1                       ;78376a2c123456780160\r
+    and.b @(0x12345678:32,er3.l),@(3:2,er1)                 ;78376a2c123456783160\r
+    and.b @(0x12345678:32,er3.l),@-er1                      ;78376a2c12345678b160\r
+    and.b @(0x12345678:32,er3.l),@er1+                      ;78376a2c123456788160\r
+    and.b @(0x12345678:32,er3.l),@er1-                      ;78376a2c12345678a160\r
+    and.b @(0x12345678:32,er3.l),@+er1                      ;78376a2c123456789160\r
+    and.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376a2c12345678c1609abc\r
+    and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376a2c12345678c9609abcdef0\r
+    and.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376a2c12345678d2609abc\r
+    and.b @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376a2c12345678e2609abc\r
+    and.b @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376a2c12345678f2609abc\r
+    and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376a2c12345678da609abcdef0\r
+    and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376a2c12345678ea609abcdef0\r
+    and.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376a2c12345678fa609abcdef0\r
+    and.b @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376a2c1234567840609abc\r
+    and.b @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376a2c1234567848609abcdef0\r
+\r
+    and.b @0x1234:16,@er1                              ;6a1512340160\r
+    and.b @0x1234:16,@(3:2,er1)                        ;6a1512343160\r
+    and.b @0x1234:16,@-er1                             ;6a151234b160\r
+    and.b @0x1234:16,@er1+                             ;6a1512348160\r
+    and.b @0x1234:16,@er1-                             ;6a151234a160\r
+    and.b @0x1234:16,@+er1                             ;6a1512349160\r
+    and.b @0x1234:16,@(0xffff9abc:16,er1)              ;6a151234c1609abc\r
+    and.b @0x1234:16,@(0x9abcdef0:32,er1)              ;6a151234c9609abcdef0\r
+    and.b @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6a151234d2609abc\r
+    and.b @0x1234:16,@(0xffff9abc:16,r2.w)            ;6a151234e2609abc\r
+    and.b @0x1234:16,@(0xffff9abc:16,er2.l)            ;6a151234f2609abc\r
+    and.b @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6a151234da609abcdef0\r
+    and.b @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6a151234ea609abcdef0\r
+    and.b @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6a151234fa609abcdef0\r
+    and.b @0x1234:16,@0xffff9abc:16                    ;6a15123440609abc\r
+    and.b @0x1234:16,@0x9abcdef0:32                    ;6a15123448609abcdef0\r
+\r
+    and.b @0x12345678:32,@er1                              ;6a35123456780160\r
+    and.b @0x12345678:32,@(3:2,er1)                        ;6a35123456783160\r
+    and.b @0x12345678:32,@-er1                             ;6a3512345678b160\r
+    and.b @0x12345678:32,@er1+                             ;6a35123456788160\r
+    and.b @0x12345678:32,@er1-                             ;6a3512345678a160\r
+    and.b @0x12345678:32,@+er1                             ;6a35123456789160\r
+    and.b @0x12345678:32,@(0xffff9abc:16,er1)              ;6a3512345678c1609abc\r
+    and.b @0x12345678:32,@(0x9abcdef0:32,er1)              ;6a3512345678c9609abcdef0\r
+    and.b @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6a3512345678d2609abc\r
+    and.b @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6a3512345678e2609abc\r
+    and.b @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6a3512345678f2609abc\r
+    and.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6a3512345678da609abcdef0\r
+    and.b @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6a3512345678ea609abcdef0\r
+    and.b @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6a3512345678fa609abcdef0\r
+    and.b @0x12345678:32,@0xffff9abc:16                    ;6a351234567840609abc\r
+    and.b @0x12345678:32,@0x9abcdef0:32                    ;6a351234567848609abcdef0\r
+\r
+    and.w #0x1234:16,r1           ;79611234\r
+    and.w #0x1234:16,@er1          ;015e01601234\r
+    and.w #0x1234:16,@(0x6:2,er1) ;015e31601234\r
+    and.w #0x1234:16,@er1+         ;015e81601234\r
+    and.w #0x1234:16,@-er1         ;015eb1601234\r
+    and.w #0x1234:16,@+er1         ;015e91601234\r
+    and.w #0x1234:16,@er1-         ;015ea1601234\r
+    and.w #0x1234:16,@(0xffff9abc:16,er1)   ;015ec1609abc1234\r
+    and.w #0x1234:16,@(0x9abcdef0:32,er1)   ;015ec9609abcdef01234\r
+    and.w #0x1234:16,@(0xffff9abc:16,r2l.b) ;015ed2609abc1234\r
+    and.w #0x1234:16,@(0xffff9abc:16,r2.w) ;015ee2609abc1234\r
+    and.w #0x1234:16,@(0xffff9abc:16,er2.l) ;015ef2609abc1234\r
+    and.w #0x1234:16,@(0x9abcdef0:32,r2l.b) ;015eda609abcdef01234\r
+    and.w #0x1234:16,@(0x9abcdef0:32,r2.w) ;015eea609abcdef01234\r
+    and.w #0x1234:16,@(0x9abcdef0:32,er2.l) ;015efa609abcdef01234\r
+    and.w #0x1234:16,@0xffff9abc:16         ;015e40609abc1234\r
+    and.w #0x1234:16,@0x9abcdef0:32         ;015e48609abcdef01234\r
+\r
+    and.w r3,r1              ;6631\r
+\r
+    and.w r3,@er1            ;7d906630\r
+    and.w r3,@(0x6:2,er1)   ;01593163\r
+    and.w r3,@er1+           ;01598163\r
+    and.w r3,@-er1           ;0159b163\r
+    and.w r3,@+er1           ;01599163\r
+    and.w r3,@er1-           ;0159a163\r
+    and.w r3,@(0x1234:16,er1)     ;0159c1631234\r
+    and.w r3,@(0x12345678:32,er1)     ;0159c96312345678\r
+    and.w r3,@(0x1234:16,r2l.b)   ;0159d2631234\r
+    and.w r3,@(0x1234:16,r2.w)   ;0159e2631234\r
+    and.w r3,@(0x1234:16,er2.l)   ;0159f2631234\r
+    and.w r3,@(0x12345678:32,r2l.b)   ;0159da6312345678\r
+    and.w r3,@(0x12345678:32,r2.w)   ;0159ea6312345678\r
+    and.w r3,@(0x12345678:32,er2.l)   ;0159fa6312345678\r
+    and.w r3,@0x1234:16          ;6b1812346630\r
+    and.w r3,@0x12345678:32          ;6b38123456786630\r
+\r
+    and.w @er3,r1            ;7cb06601\r
+    and.w @(0x6:2,er3),r1  ;015a3361\r
+    and.w @er3+,r1          ;015a8361\r
+    and.w @-er3,r1          ;015ab361\r
+    and.w @+er3,r1          ;015a9361\r
+    and.w @er3-,r1          ;015aa361\r
+    and.w @(0x1234:16,er1),r1     ;015ac1611234\r
+    and.w @(0x12345678:32,er1),r1     ;015ac96112345678\r
+    and.w @(0x1234:16,r2l.b),r1   ;015ad2611234\r
+    and.w @(0x1234:16,r2.w),r1   ;015ae2611234\r
+    and.w @(0x1234:16,er2.l),r1   ;015af2611234\r
+    and.w @(0x12345678:32,r2l.b),r1   ;015ada6112345678\r
+    and.w @(0x12345678:32,r2.w),r1   ;015aea6112345678\r
+    and.w @(0x12345678:32,er2.l),r1   ;015afa6112345678\r
+    and.w @0x1234:16,r1          ;6b1012346601\r
+    and.w @0x12345678:32,r1          ;6b30123456786601\r
+\r
+    and.w @er3,@er1                                ;7cb50160\r
+    and.w @er3,@(6:2,er1)                          ;7cb53160\r
+    and.w @er3,@-er1                               ;7cb5b160\r
+    and.w @er3,@er1+                               ;7cb58160\r
+    and.w @er3,@er1-                               ;7cb5a160\r
+    and.w @er3,@+er1                               ;7cb59160\r
+    and.w @er3,@(0xffff9abc:16,er1)                ;7cb5c1609abc\r
+    and.w @er3,@(0x9abcdef0:32,er1)                ;7cb5c9609abcdef0\r
+    and.w @er3,@(0xffff9abc:16,r2l.b)              ;7cb5d2609abc\r
+    and.w @er3,@(0xffff9abc:16,r2.w)              ;7cb5e2609abc\r
+    and.w @er3,@(0xffff9abc:16,er2.l)              ;7cb5f2609abc\r
+    and.w @er3,@(0x9abcdef0:32,r2l.b)              ;7cb5da609abcdef0\r
+    and.w @er3,@(0x9abcdef0:32,r2.w)              ;7cb5ea609abcdef0\r
+    and.w @er3,@(0x9abcdef0:32,er2.l)              ;7cb5fa609abcdef0\r
+    and.w @er3,@0xffff9abc:16                      ;7cb540609abc\r
+    and.w @er3,@0x9abcdef0:32                      ;7cb548609abcdef0\r
+\r
+    and.w @-er3,@er1                               ;01576d3c0160\r
+    and.w @-er3,@(6:2,er1)                         ;01576d3c3160\r
+    and.w @-er3,@-er1                              ;01576d3cb160\r
+    and.w @-er3,@er1+                              ;01576d3c8160\r
+    and.w @-er3,@er1-                              ;01576d3ca160\r
+    and.w @-er3,@+er1                              ;01576d3c9160\r
+    and.w @-er3,@(0xffff9abc:16,er1)               ;01576d3cc1609abc\r
+    and.w @-er3,@(0x9abcdef0:32,er1)               ;01576d3cc9609abcdef0\r
+    and.w @-er3,@(0xffff9abc:16,r2l.b)             ;01576d3cd2609abc\r
+    and.w @-er3,@(0xffff9abc:16,r2.w)             ;01576d3ce2609abc\r
+    and.w @-er3,@(0xffff9abc:16,er2.l)             ;01576d3cf2609abc\r
+    and.w @-er3,@(0x9abcdef0:32,r2l.b)             ;01576d3cda609abcdef0\r
+    and.w @-er3,@(0x9abcdef0:32,r2.w)             ;01576d3cea609abcdef0\r
+    and.w @-er3,@(0x9abcdef0:32,er2.l)             ;01576d3cfa609abcdef0\r
+    and.w @-er3,@0xffff9abc:16                     ;01576d3c40609abc\r
+    and.w @-er3,@0x9abcdef0:32                     ;01576d3c48609abcdef0\r
+\r
+    and.w @er3+,@er1                               ;01546d3c0160\r
+    and.w @er3+,@(6:2,er1)                         ;01546d3c3160\r
+    and.w @er3+,@-er1                              ;01546d3cb160\r
+    and.w @er3+,@er1+                              ;01546d3c8160\r
+    and.w @er3+,@er1-                              ;01546d3ca160\r
+    and.w @er3+,@+er1                              ;01546d3c9160\r
+    and.w @er3+,@(0xffff9abc:16,er1)               ;01546d3cc1609abc\r
+    and.w @er3+,@(0x9abcdef0:32,er1)               ;01546d3cc9609abcdef0\r
+    and.w @er3+,@(0xffff9abc:16,r2l.b)             ;01546d3cd2609abc\r
+    and.w @er3+,@(0xffff9abc:16,r2.w)             ;01546d3ce2609abc\r
+    and.w @er3+,@(0xffff9abc:16,er2.l)             ;01546d3cf2609abc\r
+    and.w @er3+,@(0x9abcdef0:32,r2l.b)             ;01546d3cda609abcdef0\r
+    and.w @er3+,@(0x9abcdef0:32,r2.w)             ;01546d3cea609abcdef0\r
+    and.w @er3+,@(0x9abcdef0:32,er2.l)             ;01546d3cfa609abcdef0\r
+    and.w @er3+,@0xffff9abc:16                     ;01546d3c40609abc\r
+    and.w @er3+,@0x9abcdef0:32                     ;01546d3c48609abcdef0\r
+\r
+    and.w @er3-,@er1                               ;01566d3c0160\r
+    and.w @er3-,@(6:2,er1)                         ;01566d3c3160\r
+    and.w @er3-,@-er1                              ;01566d3cb160\r
+    and.w @er3-,@er1+                              ;01566d3c8160\r
+    and.w @er3-,@er1-                              ;01566d3ca160\r
+    and.w @er3-,@+er1                              ;01566d3c9160\r
+    and.w @er3-,@(0xffff9abc:16,er1)               ;01566d3cc1609abc\r
+    and.w @er3-,@(0x9abcdef0:32,er1)               ;01566d3cc9609abcdef0\r
+    and.w @er3-,@(0xffff9abc:16,r2l.b)             ;01566d3cd2609abc\r
+    and.w @er3-,@(0xffff9abc:16,r2.w)             ;01566d3ce2609abc\r
+    and.w @er3-,@(0xffff9abc:16,er2.l)             ;01566d3cf2609abc\r
+    and.w @er3-,@(0x9abcdef0:32,r2l.b)             ;01566d3cda609abcdef0\r
+    and.w @er3-,@(0x9abcdef0:32,r2.w)             ;01566d3cea609abcdef0\r
+    and.w @er3-,@(0x9abcdef0:32,er2.l)             ;01566d3cfa609abcdef0\r
+    and.w @er3-,@0xffff9abc:16                     ;01566d3c40609abc\r
+    and.w @er3-,@0x9abcdef0:32                     ;01566d3c48609abcdef0\r
+\r
+    and.w @+er3,@er1                               ;01556d3c0160\r
+    and.w @+er3,@(6:2,er1)                         ;01556d3c3160\r
+    and.w @+er3,@-er1                              ;01556d3cb160\r
+    and.w @+er3,@er1+                              ;01556d3c8160\r
+    and.w @+er3,@er1-                              ;01556d3ca160\r
+    and.w @+er3,@+er1                              ;01556d3c9160\r
+    and.w @+er3,@(0xffff9abc:16,er1)               ;01556d3cc1609abc\r
+    and.w @+er3,@(0x9abcdef0:32,er1)               ;01556d3cc9609abcdef0\r
+    and.w @+er3,@(0xffff9abc:16,r2l.b)             ;01556d3cd2609abc\r
+    and.w @+er3,@(0xffff9abc:16,r2.w)             ;01556d3ce2609abc\r
+    and.w @+er3,@(0xffff9abc:16,er2.l)             ;01556d3cf2609abc\r
+    and.w @+er3,@(0x9abcdef0:32,r2l.b)             ;01556d3cda609abcdef0\r
+    and.w @+er3,@(0x9abcdef0:32,r2.w)             ;01556d3cea609abcdef0\r
+    and.w @+er3,@(0x9abcdef0:32,er2.l)             ;01556d3cfa609abcdef0\r
+    and.w @+er3,@0xffff9abc:16                     ;01556d3c40609abc\r
+    and.w @+er3,@0x9abcdef0:32                     ;01556d3c48609abcdef0\r
+\r
+    and.w @(0x1234:16,er3),@er1                         ;01546f3c12340160\r
+    and.w @(0x1234:16,er3),@(6:2,er1)                   ;01546f3c12343160\r
+    and.w @(0x1234:16,er3),@-er1                        ;01546f3c1234b160\r
+    and.w @(0x1234:16,er3),@er1+                        ;01546f3c12348160\r
+    and.w @(0x1234:16,er3),@er1-                        ;01546f3c1234a160\r
+    and.w @(0x1234:16,er3),@+er1                        ;01546f3c12349160\r
+    and.w @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01546f3c1234c1609abc\r
+    and.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01546f3c1234c9609abcdef0\r
+    and.w @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01546f3c1234d2609abc\r
+    and.w @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01546f3c1234e2609abc\r
+    and.w @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01546f3c1234f2609abc\r
+    and.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01546f3c1234da609abcdef0\r
+    and.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01546f3c1234ea609abcdef0\r
+    and.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01546f3c1234fa609abcdef0\r
+    and.w @(0x1234:16,er3),@0xffff9abc:16               ;01546f3c123440609abc\r
+    and.w @(0x1234:16,er3),@0x9abcdef0:32               ;01546f3c123448609abcdef0\r
+\r
+    and.w @(0x12345678:32,er3),@er1                         ;78346b2c123456780160\r
+    and.w @(0x12345678:32,er3),@(6:2,er1)                   ;78346b2c123456783160\r
+    and.w @(0x12345678:32,er3),@-er1                        ;78346b2c12345678b160\r
+    and.w @(0x12345678:32,er3),@er1+                        ;78346b2c123456788160\r
+    and.w @(0x12345678:32,er3),@er1-                        ;78346b2c12345678a160\r
+    and.w @(0x12345678:32,er3),@+er1                        ;78346b2c123456789160\r
+    and.w @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78346b2c12345678c1609abc\r
+    and.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78346b2c12345678c9609abcdef0\r
+    and.w @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78346b2c12345678d2609abc\r
+    and.w @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78346b2c12345678e2609abc\r
+    and.w @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78346b2c12345678f2609abc\r
+    and.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78346b2c12345678da609abcdef0\r
+    and.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78346b2c12345678ea609abcdef0\r
+    and.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78346b2c12345678fa609abcdef0\r
+    and.w @(0x12345678:32,er3),@0xffff9abc:16               ;78346b2c1234567840609abc\r
+    and.w @(0x12345678:32,er3),@0x9abcdef0:32               ;78346b2c1234567848609abcdef0\r
+\r
+    and.w @(0x1234:16,r3l.b),@er1                       ;01556f3c12340160\r
+    and.w @(0x1234:16,r3l.b),@(6:2,er1)                 ;01556f3c12343160\r
+    and.w @(0x1234:16,r3l.b),@-er1                      ;01556f3c1234b160\r
+    and.w @(0x1234:16,r3l.b),@er1+                      ;01556f3c12348160\r
+    and.w @(0x1234:16,r3l.b),@er1-                      ;01556f3c1234a160\r
+    and.w @(0x1234:16,r3l.b),@+er1                      ;01556f3c12349160\r
+    and.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01556f3c1234c1609abc\r
+    and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01556f3c1234c9609abcdef0\r
+    and.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01556f3c1234d2609abc\r
+    and.w @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01556f3c1234e2609abc\r
+    and.w @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01556f3c1234f2609abc\r
+    and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01556f3c1234da609abcdef0\r
+    and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01556f3c1234ea609abcdef0\r
+    and.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01556f3c1234fa609abcdef0\r
+    and.w @(0x1234:16,r3l.b),@0xffff9abc:16             ;01556f3c123440609abc\r
+    and.w @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01556f3c123448609abcdef0\r
+\r
+    and.w @(0x1234:16,r3.w),@er1                       ;01566f3c12340160\r
+    and.w @(0x1234:16,r3.w),@(6:2,er1)                 ;01566f3c12343160\r
+    and.w @(0x1234:16,r3.w),@-er1                      ;01566f3c1234b160\r
+    and.w @(0x1234:16,r3.w),@er1+                      ;01566f3c12348160\r
+    and.w @(0x1234:16,r3.w),@er1-                      ;01566f3c1234a160\r
+    and.w @(0x1234:16,r3.w),@+er1                      ;01566f3c12349160\r
+    and.w @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01566f3c1234c1609abc\r
+    and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01566f3c1234c9609abcdef0\r
+    and.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01566f3c1234d2609abc\r
+    and.w @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01566f3c1234e2609abc\r
+    and.w @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01566f3c1234f2609abc\r
+    and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01566f3c1234da609abcdef0\r
+    and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01566f3c1234ea609abcdef0\r
+    and.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01566f3c1234fa609abcdef0\r
+    and.w @(0x1234:16,r3.w),@0xffff9abc:16             ;01566f3c123440609abc\r
+    and.w @(0x1234:16,r3.w),@0x9abcdef0:32             ;01566f3c123448609abcdef0\r
+\r
+    and.w @(0x1234:16,er3.l),@er1                       ;01576f3c12340160\r
+    and.w @(0x1234:16,er3.l),@(6:2,er1)                 ;01576f3c12343160\r
+    and.w @(0x1234:16,er3.l),@-er1                      ;01576f3c1234b160\r
+    and.w @(0x1234:16,er3.l),@er1+                      ;01576f3c12348160\r
+    and.w @(0x1234:16,er3.l),@er1-                      ;01576f3c1234a160\r
+    and.w @(0x1234:16,er3.l),@+er1                      ;01576f3c12349160\r
+    and.w @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01576f3c1234c1609abc\r
+    and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01576f3c1234c9609abcdef0\r
+    and.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01576f3c1234d2609abc\r
+    and.w @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01576f3c1234e2609abc\r
+    and.w @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01576f3c1234f2609abc\r
+    and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01576f3c1234da609abcdef0\r
+    and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01576f3c1234ea609abcdef0\r
+    and.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01576f3c1234fa609abcdef0\r
+    and.w @(0x1234:16,er3.l),@0xffff9abc:16             ;01576f3c123440609abc\r
+    and.w @(0x1234:16,er3.l),@0x9abcdef0:32             ;01576f3c123448609abcdef0\r
+\r
+    and.w @(0x12345678:32,r3l.b),@er1                       ;78356b2c123456780160\r
+    and.w @(0x12345678:32,r3l.b),@(6:2,er1)                 ;78356b2c123456783160\r
+    and.w @(0x12345678:32,r3l.b),@-er1                      ;78356b2c12345678b160\r
+    and.w @(0x12345678:32,r3l.b),@er1+                      ;78356b2c123456788160\r
+    and.w @(0x12345678:32,r3l.b),@er1-                      ;78356b2c12345678a160\r
+    and.w @(0x12345678:32,r3l.b),@+er1                      ;78356b2c123456789160\r
+    and.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78356b2c12345678c1609abc\r
+    and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78356b2c12345678c9609abcdef0\r
+    and.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78356b2c12345678d2609abc\r
+    and.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78356b2c12345678e2609abc\r
+    and.w @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78356b2c12345678f2609abc\r
+    and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78356b2c12345678da609abcdef0\r
+    and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78356b2c12345678ea609abcdef0\r
+    and.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78356b2c12345678fa609abcdef0\r
+    and.w @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78356b2c1234567840609abc\r
+    and.w @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78356b2c1234567848609abcdef0\r
+\r
+    and.w @(0x12345678:32,r3.w),@er1                       ;78366b2c123456780160\r
+    and.w @(0x12345678:32,r3.w),@(6:2,er1)                 ;78366b2c123456783160\r
+    and.w @(0x12345678:32,r3.w),@-er1                      ;78366b2c12345678b160\r
+    and.w @(0x12345678:32,r3.w),@er1+                      ;78366b2c123456788160\r
+    and.w @(0x12345678:32,r3.w),@er1-                      ;78366b2c12345678a160\r
+    and.w @(0x12345678:32,r3.w),@+er1                      ;78366b2c123456789160\r
+    and.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78366b2c12345678c1609abc\r
+    and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78366b2c12345678c9609abcdef0\r
+    and.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78366b2c12345678d2609abc\r
+    and.w @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78366b2c12345678e2609abc\r
+    and.w @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78366b2c12345678f2609abc\r
+    and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78366b2c12345678da609abcdef0\r
+    and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78366b2c12345678ea609abcdef0\r
+    and.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78366b2c12345678fa609abcdef0\r
+    and.w @(0x12345678:32,r3.w),@0xffff9abc:16             ;78366b2c1234567840609abc\r
+    and.w @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78366b2c1234567848609abcdef0\r
+\r
+    and.w @(0x12345678:32,er3.l),@er1                       ;78376b2c123456780160\r
+    and.w @(0x12345678:32,er3.l),@(6:2,er1)                 ;78376b2c123456783160\r
+    and.w @(0x12345678:32,er3.l),@-er1                      ;78376b2c12345678b160\r
+    and.w @(0x12345678:32,er3.l),@er1+                      ;78376b2c123456788160\r
+    and.w @(0x12345678:32,er3.l),@er1-                      ;78376b2c12345678a160\r
+    and.w @(0x12345678:32,er3.l),@+er1                      ;78376b2c123456789160\r
+    and.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78376b2c12345678c1609abc\r
+    and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78376b2c12345678c9609abcdef0\r
+    and.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78376b2c12345678d2609abc\r
+    and.w @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78376b2c12345678e2609abc\r
+    and.w @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78376b2c12345678f2609abc\r
+    and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78376b2c12345678da609abcdef0\r
+    and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78376b2c12345678ea609abcdef0\r
+    and.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78376b2c12345678fa609abcdef0\r
+    and.w @(0x12345678:32,er3.l),@0xffff9abc:16             ;78376b2c1234567840609abc\r
+    and.w @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78376b2c1234567848609abcdef0\r
+\r
+    and.w @0x1234:16,@er1                              ;6b1512340160\r
+    and.w @0x1234:16,@(6:2,er1)                        ;6b1512343160\r
+    and.w @0x1234:16,@-er1                             ;6b151234b160\r
+    and.w @0x1234:16,@er1+                             ;6b1512348160\r
+    and.w @0x1234:16,@er1-                             ;6b151234a160\r
+    and.w @0x1234:16,@+er1                             ;6b1512349160\r
+    and.w @0x1234:16,@(0xffff9abc:16,er1)              ;6b151234c1609abc\r
+    and.w @0x1234:16,@(0x9abcdef0:32,er1)              ;6b151234c9609abcdef0\r
+    and.w @0x1234:16,@(0xffff9abc:16,r2l.b)            ;6b151234d2609abc\r
+    and.w @0x1234:16,@(0xffff9abc:16,r2.w)            ;6b151234e2609abc\r
+    and.w @0x1234:16,@(0xffff9abc:16,er2.l)            ;6b151234f2609abc\r
+    and.w @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;6b151234da609abcdef0\r
+    and.w @0x1234:16,@(0x9abcdef0:32,r2.w)            ;6b151234ea609abcdef0\r
+    and.w @0x1234:16,@(0x9abcdef0:32,er2.l)            ;6b151234fa609abcdef0\r
+    and.w @0x1234:16,@0xffff9abc:16                    ;6b15123440609abc\r
+    and.w @0x1234:16,@0x9abcdef0:32                    ;6b15123448609abcdef0\r
+\r
+    and.w @0x12345678:32,@er1                              ;6b35123456780160\r
+    and.w @0x12345678:32,@(6:2,er1)                        ;6b35123456783160\r
+    and.w @0x12345678:32,@-er1                             ;6b3512345678b160\r
+    and.w @0x12345678:32,@er1+                             ;6b35123456788160\r
+    and.w @0x12345678:32,@er1-                             ;6b3512345678a160\r
+    and.w @0x12345678:32,@+er1                             ;6b35123456789160\r
+    and.w @0x12345678:32,@(0xffff9abc:16,er1)              ;6b3512345678c1609abc\r
+    and.w @0x12345678:32,@(0x9abcdef0:32,er1)              ;6b3512345678c9609abcdef0\r
+    and.w @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;6b3512345678d2609abc\r
+    and.w @0x12345678:32,@(0xffff9abc:16,r2.w)            ;6b3512345678e2609abc\r
+    and.w @0x12345678:32,@(0xffff9abc:16,er2.l)            ;6b3512345678f2609abc\r
+    and.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;6b3512345678da609abcdef0\r
+    and.w @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;6b3512345678ea609abcdef0\r
+    and.w @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;6b3512345678fa609abcdef0\r
+    and.w @0x12345678:32,@0xffff9abc:16                    ;6b351234567840609abc\r
+    and.w @0x12345678:32,@0x9abcdef0:32                    ;6b351234567848609abcdef0\r
+\r
+    and.l #0x12345678:32,er1          ;7a6112345678\r
+    and.l #0x1234:16,er1           ;7a691234\r
+    and.l #0x12345678:32,@er1          ;010e016812345678\r
+    and.l #0x12345678:32,@(0xc:2,er1) ;010e316812345678\r
+    and.l #0x12345678:32,@er1+         ;010e816812345678\r
+    and.l #0x12345678:32,@-er1         ;010eb16812345678\r
+    and.l #0x12345678:32,@+er1         ;010e916812345678\r
+    and.l #0x12345678:32,@er1-         ;010ea16812345678\r
+    and.l #0x12345678:32,@(0xffff9abc:16,er1)   ;010ec1689abc12345678\r
+    and.l #0x12345678:32,@(0x9abcdef0:32,er1)   ;010ec9689abcdef012345678\r
+    and.l #0x12345678:32,@(0xffff9abc:16,r2l.b) ;010ed2689abc12345678\r
+    and.l #0x12345678:32,@(0xffff9abc:16,r2.w) ;010ee2689abc12345678\r
+    and.l #0x12345678:32,@(0xffff9abc:16,er2.l) ;010ef2689abc12345678\r
+    and.l #0x12345678:32,@(0x9abcdef0:32,r2l.b) ;010eda689abcdef012345678\r
+    and.l #0x12345678:32,@(0x9abcdef0:32,r2.w) ;010eea689abcdef012345678\r
+    and.l #0x12345678:32,@(0x9abcdef0:32,er2.l) ;010efa689abcdef012345678\r
+    and.l #0x12345678:32,@0xffff9abc:16         ;010e40689abc12345678\r
+    and.l #0x12345678:32,@0x9abcdef0:32         ;010e48689abcdef012345678\r
+    and.l #0x1234:16,@er1          ;010e01601234\r
+    and.l #0x1234:16,@(0xc:2,er1) ;010e31601234\r
+    and.l #0x1234:16,@er1+         ;010e81601234\r
+    and.l #0x1234:16,@-er1         ;010eb1601234\r
+    and.l #0x1234:16,@+er1         ;010e91601234\r
+    and.l #0x1234:16,@er1-         ;010ea1601234\r
+    and.l #0x1234:16,@(0xffff9abc:16,er1)   ;010ec1609abc1234\r
+    and.l #0x1234:16,@(0x9abcdef0:32,er1)   ;010ec9609abcdef01234\r
+    and.l #0x1234:16,@(0xffff9abc:16,r2l.b) ;010ed2609abc1234\r
+    and.l #0x1234:16,@(0xffff9abc:16,r2.w) ;010ee2609abc1234\r
+    and.l #0x1234:16,@(0xffff9abc:16,er2.l) ;010ef2609abc1234\r
+    and.l #0x1234:16,@(0x9abcdef0:32,r2l.b) ;010eda609abcdef01234\r
+    and.l #0x1234:16,@(0x9abcdef0:32,r2.w) ;010eea609abcdef01234\r
+    and.l #0x1234:16,@(0x9abcdef0:32,er2.l) ;010efa609abcdef01234\r
+    and.l #0x1234:16,@0xffff9abc:16         ;010e40609abc1234\r
+    and.l #0x1234:16,@0x9abcdef0:32         ;010e48609abcdef01234\r
+\r
+    and.l er3,er1            ;01f06631\r
+\r
+    and.l er3,@er1            ;01090163\r
+    and.l er3,@(0xc:2,er1)   ;01093163\r
+    and.l er3,@er1+           ;01098163\r
+    and.l er3,@-er1           ;0109b163\r
+    and.l er3,@+er1           ;01099163\r
+    and.l er3,@er1-           ;0109a163\r
+    and.l er3,@(0x1234:16,er1)     ;0109c1631234\r
+    and.l er3,@(0x12345678:32,er1)     ;0109c96312345678\r
+    and.l er3,@(0x1234:16,r2l.b)   ;0109d2631234\r
+    and.l er3,@(0x1234:16,r2.w)   ;0109e2631234\r
+    and.l er3,@(0x1234:16,er2.l)   ;0109f2631234\r
+    and.l er3,@(0x12345678:32,r2l.b)   ;0109da6312345678\r
+    and.l er3,@(0x12345678:32,r2.w)   ;0109ea6312345678\r
+    and.l er3,@(0x12345678:32,er2.l)   ;0109fa6312345678\r
+    and.l er3,@0x1234:16          ;010940631234\r
+    and.l er3,@0x12345678:32          ;0109486312345678\r
+\r
+    and.l @er3,er1            ;010a0361\r
+    and.l @(0xc:2,er3),er1  ;010a3361\r
+    and.l @er3+,er1          ;010a8361\r
+    and.l @-er3,er1          ;010ab361\r
+    and.l @+er3,er1          ;010a9361\r
+    and.l @er3-,er1          ;010aa361\r
+    and.l @(0x1234:16,er1),er1     ;010ac1611234\r
+    and.l @(0x12345678:32,er1),er1     ;010ac96112345678\r
+    and.l @(0x1234:16,r2l.b),er1   ;010ad2611234\r
+    and.l @(0x1234:16,r2.w),er1   ;010ae2611234\r
+    and.l @(0x1234:16,er2.l),er1   ;010af2611234\r
+    and.l @(0x12345678:32,r2l.b),er1   ;010ada6112345678\r
+    and.l @(0x12345678:32,r2.w),er1   ;010aea6112345678\r
+    and.l @(0x12345678:32,er2.l),er1   ;010afa6112345678\r
+    and.l @0x1234:16,er1          ;010a40611234\r
+    and.l @0x12345678:32,er1          ;010a486112345678\r
+\r
+    and.l @er3,@er1                                ;0104693c0160\r
+    and.l @er3,@(0xc:2,er1)                          ;0104693c3160\r
+    and.l @er3,@-er1                               ;0104693cb160\r
+    and.l @er3,@er1+                               ;0104693c8160\r
+    and.l @er3,@er1-                               ;0104693ca160\r
+    and.l @er3,@+er1                               ;0104693c9160\r
+    and.l @er3,@(0xffff9abc:16,er1)                ;0104693cc1609abc\r
+    and.l @er3,@(0x9abcdef0:32,er1)                ;0104693cc9609abcdef0\r
+    and.l @er3,@(0xffff9abc:16,r2l.b)              ;0104693cd2609abc\r
+    and.l @er3,@(0xffff9abc:16,r2.w)              ;0104693ce2609abc\r
+    and.l @er3,@(0xffff9abc:16,er2.l)              ;0104693cf2609abc\r
+    and.l @er3,@(0x9abcdef0:32,r2l.b)              ;0104693cda609abcdef0\r
+    and.l @er3,@(0x9abcdef0:32,r2.w)              ;0104693cea609abcdef0\r
+    and.l @er3,@(0x9abcdef0:32,er2.l)              ;0104693cfa609abcdef0\r
+    and.l @er3,@0xffff9abc:16                      ;0104693c40609abc\r
+    and.l @er3,@0x9abcdef0:32                      ;0104693c48609abcdef0\r
+\r
+    and.l @(0xc:2,er3),@er1                       ;0107693c0160\r
+    and.l @(0xc:2,er3),@(0xc:2,er1)                 ;0107693c3160\r
+    and.l @(0xc:2,er3),@-er1                      ;0107693cb160\r
+    and.l @(0xc:2,er3),@er1+                      ;0107693c8160\r
+    and.l @(0xc:2,er3),@er1-                      ;0107693ca160\r
+    and.l @(0xc:2,er3),@+er1                      ;0107693c9160\r
+    and.l @(0xc:2,er3),@(0xffff9abc:16,er1)       ;0107693cc1609abc\r
+    and.l @(0xc:2,er3),@(0x9abcdef0:32,er1)       ;0107693cc9609abcdef0\r
+    and.l @(0xc:2,er3),@(0xffff9abc:16,r2l.b)     ;0107693cd2609abc\r
+    and.l @(0xc:2,er3),@(0xffff9abc:16,r2.w)     ;0107693ce2609abc\r
+    and.l @(0xc:2,er3),@(0xffff9abc:16,er2.l)     ;0107693cf2609abc\r
+    and.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)     ;0107693cda609abcdef0\r
+    and.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)     ;0107693cea609abcdef0\r
+    and.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)     ;0107693cfa609abcdef0\r
+    and.l @(0xc:2,er3),@0xffff9abc:16             ;0107693c40609abc\r
+    and.l @(0xc:2,er3),@0x9abcdef0:32             ;0107693c48609abcdef0\r
+\r
+    and.l @-er3,@er1                               ;01076d3c0160\r
+    and.l @-er3,@(0xc:2,er1)                         ;01076d3c3160\r
+    and.l @-er3,@-er1                              ;01076d3cb160\r
+    and.l @-er3,@er1+                              ;01076d3c8160\r
+    and.l @-er3,@er1-                              ;01076d3ca160\r
+    and.l @-er3,@+er1                              ;01076d3c9160\r
+    and.l @-er3,@(0xffff9abc:16,er1)               ;01076d3cc1609abc\r
+    and.l @-er3,@(0x9abcdef0:32,er1)               ;01076d3cc9609abcdef0\r
+    and.l @-er3,@(0xffff9abc:16,r2l.b)             ;01076d3cd2609abc\r
+    and.l @-er3,@(0xffff9abc:16,r2.w)             ;01076d3ce2609abc\r
+    and.l @-er3,@(0xffff9abc:16,er2.l)             ;01076d3cf2609abc\r
+    and.l @-er3,@(0x9abcdef0:32,r2l.b)             ;01076d3cda609abcdef0\r
+    and.l @-er3,@(0x9abcdef0:32,r2.w)             ;01076d3cea609abcdef0\r
+    and.l @-er3,@(0x9abcdef0:32,er2.l)             ;01076d3cfa609abcdef0\r
+    and.l @-er3,@0xffff9abc:16                     ;01076d3c40609abc\r
+    and.l @-er3,@0x9abcdef0:32                     ;01076d3c48609abcdef0\r
+\r
+    and.l @er3+,@er1                               ;01046d3c0160\r
+    and.l @er3+,@(0xc:2,er1)                         ;01046d3c3160\r
+    and.l @er3+,@-er1                              ;01046d3cb160\r
+    and.l @er3+,@er1+                              ;01046d3c8160\r
+    and.l @er3+,@er1-                              ;01046d3ca160\r
+    and.l @er3+,@+er1                              ;01046d3c9160\r
+    and.l @er3+,@(0xffff9abc:16,er1)               ;01046d3cc1609abc\r
+    and.l @er3+,@(0x9abcdef0:32,er1)               ;01046d3cc9609abcdef0\r
+    and.l @er3+,@(0xffff9abc:16,r2l.b)             ;01046d3cd2609abc\r
+    and.l @er3+,@(0xffff9abc:16,r2.w)             ;01046d3ce2609abc\r
+    and.l @er3+,@(0xffff9abc:16,er2.l)             ;01046d3cf2609abc\r
+    and.l @er3+,@(0x9abcdef0:32,r2l.b)             ;01046d3cda609abcdef0\r
+    and.l @er3+,@(0x9abcdef0:32,r2.w)             ;01046d3cea609abcdef0\r
+    and.l @er3+,@(0x9abcdef0:32,er2.l)             ;01046d3cfa609abcdef0\r
+    and.l @er3+,@0xffff9abc:16                     ;01046d3c40609abc\r
+    and.l @er3+,@0x9abcdef0:32                     ;01046d3c48609abcdef0\r
+\r
+    and.l @er3-,@er1                               ;01066d3c0160\r
+    and.l @er3-,@(0xc:2,er1)                         ;01066d3c3160\r
+    and.l @er3-,@-er1                              ;01066d3cb160\r
+    and.l @er3-,@er1+                              ;01066d3c8160\r
+    and.l @er3-,@er1-                              ;01066d3ca160\r
+    and.l @er3-,@+er1                              ;01066d3c9160\r
+    and.l @er3-,@(0xffff9abc:16,er1)               ;01066d3cc1609abc\r
+    and.l @er3-,@(0x9abcdef0:32,er1)               ;01066d3cc9609abcdef0\r
+    and.l @er3-,@(0xffff9abc:16,r2l.b)             ;01066d3cd2609abc\r
+    and.l @er3-,@(0xffff9abc:16,r2.w)             ;01066d3ce2609abc\r
+    and.l @er3-,@(0xffff9abc:16,er2.l)             ;01066d3cf2609abc\r
+    and.l @er3-,@(0x9abcdef0:32,r2l.b)             ;01066d3cda609abcdef0\r
+    and.l @er3-,@(0x9abcdef0:32,r2.w)             ;01066d3cea609abcdef0\r
+    and.l @er3-,@(0x9abcdef0:32,er2.l)             ;01066d3cfa609abcdef0\r
+    and.l @er3-,@0xffff9abc:16                     ;01066d3c40609abc\r
+    and.l @er3-,@0x9abcdef0:32                     ;01066d3c48609abcdef0\r
+\r
+    and.l @+er3,@er1                               ;01056d3c0160\r
+    and.l @+er3,@(0xc:2,er1)                         ;01056d3c3160\r
+    and.l @+er3,@-er1                              ;01056d3cb160\r
+    and.l @+er3,@er1+                              ;01056d3c8160\r
+    and.l @+er3,@er1-                              ;01056d3ca160\r
+    and.l @+er3,@+er1                              ;01056d3c9160\r
+    and.l @+er3,@(0xffff9abc:16,er1)               ;01056d3cc1609abc\r
+    and.l @+er3,@(0x9abcdef0:32,er1)               ;01056d3cc9609abcdef0\r
+    and.l @+er3,@(0xffff9abc:16,r2l.b)             ;01056d3cd2609abc\r
+    and.l @+er3,@(0xffff9abc:16,r2.w)             ;01056d3ce2609abc\r
+    and.l @+er3,@(0xffff9abc:16,er2.l)             ;01056d3cf2609abc\r
+    and.l @+er3,@(0x9abcdef0:32,r2l.b)             ;01056d3cda609abcdef0\r
+    and.l @+er3,@(0x9abcdef0:32,r2.w)             ;01056d3cea609abcdef0\r
+    and.l @+er3,@(0x9abcdef0:32,er2.l)             ;01056d3cfa609abcdef0\r
+    and.l @+er3,@0xffff9abc:16                     ;01056d3c40609abc\r
+    and.l @+er3,@0x9abcdef0:32                     ;01056d3c48609abcdef0\r
+\r
+    and.l @(0x1234:16,er3),@er1                         ;01046f3c12340160\r
+    and.l @(0x1234:16,er3),@(0xc:2,er1)                   ;01046f3c12343160\r
+    and.l @(0x1234:16,er3),@-er1                        ;01046f3c1234b160\r
+    and.l @(0x1234:16,er3),@er1+                        ;01046f3c12348160\r
+    and.l @(0x1234:16,er3),@er1-                        ;01046f3c1234a160\r
+    and.l @(0x1234:16,er3),@+er1                        ;01046f3c12349160\r
+    and.l @(0x1234:16,er3),@(0xffff9abc:16,er1)         ;01046f3c1234c1609abc\r
+    and.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)         ;01046f3c1234c9609abcdef0\r
+    and.l @(0x1234:16,er3),@(0xffff9abc:16,r2l.b)       ;01046f3c1234d2609abc\r
+    and.l @(0x1234:16,er3),@(0xffff9abc:16,r2.w)       ;01046f3c1234e2609abc\r
+    and.l @(0x1234:16,er3),@(0xffff9abc:16,er2.l)       ;01046f3c1234f2609abc\r
+    and.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)       ;01046f3c1234da609abcdef0\r
+    and.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)       ;01046f3c1234ea609abcdef0\r
+    and.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)       ;01046f3c1234fa609abcdef0\r
+    and.l @(0x1234:16,er3),@0xffff9abc:16               ;01046f3c123440609abc\r
+    and.l @(0x1234:16,er3),@0x9abcdef0:32               ;01046f3c123448609abcdef0\r
+\r
+    and.l @(0x12345678:32,er3),@er1                         ;78b46b2c123456780160\r
+    and.l @(0x12345678:32,er3),@(0xc:2,er1)                   ;78b46b2c123456783160\r
+    and.l @(0x12345678:32,er3),@-er1                        ;78b46b2c12345678b160\r
+    and.l @(0x12345678:32,er3),@er1+                        ;78b46b2c123456788160\r
+    and.l @(0x12345678:32,er3),@er1-                        ;78b46b2c12345678a160\r
+    and.l @(0x12345678:32,er3),@+er1                        ;78b46b2c123456789160\r
+    and.l @(0x12345678:32,er3),@(0xffff9abc:16,er1)         ;78b46b2c12345678c1609abc\r
+    and.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)         ;78b46b2c12345678c9609abcdef0\r
+    and.l @(0x12345678:32,er3),@(0xffff9abc:16,r2l.b)       ;78b46b2c12345678d2609abc\r
+    and.l @(0x12345678:32,er3),@(0xffff9abc:16,r2.w)       ;78b46b2c12345678e2609abc\r
+    and.l @(0x12345678:32,er3),@(0xffff9abc:16,er2.l)       ;78b46b2c12345678f2609abc\r
+    and.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)       ;78b46b2c12345678da609abcdef0\r
+    and.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)       ;78b46b2c12345678ea609abcdef0\r
+    and.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)       ;78b46b2c12345678fa609abcdef0\r
+    and.l @(0x12345678:32,er3),@0xffff9abc:16               ;78b46b2c1234567840609abc\r
+    and.l @(0x12345678:32,er3),@0x9abcdef0:32               ;78b46b2c1234567848609abcdef0\r
+\r
+    and.l @(0x1234:16,r3l.b),@er1                       ;01056f3c12340160\r
+    and.l @(0x1234:16,r3l.b),@(0xc:2,er1)                 ;01056f3c12343160\r
+    and.l @(0x1234:16,r3l.b),@-er1                      ;01056f3c1234b160\r
+    and.l @(0x1234:16,r3l.b),@er1+                      ;01056f3c12348160\r
+    and.l @(0x1234:16,r3l.b),@er1-                      ;01056f3c1234a160\r
+    and.l @(0x1234:16,r3l.b),@+er1                      ;01056f3c12349160\r
+    and.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er1)       ;01056f3c1234c1609abc\r
+    and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)       ;01056f3c1234c9609abcdef0\r
+    and.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2l.b)     ;01056f3c1234d2609abc\r
+    and.l @(0x1234:16,r3l.b),@(0xffff9abc:16,r2.w)     ;01056f3c1234e2609abc\r
+    and.l @(0x1234:16,r3l.b),@(0xffff9abc:16,er2.l)     ;01056f3c1234f2609abc\r
+    and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)     ;01056f3c1234da609abcdef0\r
+    and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)     ;01056f3c1234ea609abcdef0\r
+    and.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)     ;01056f3c1234fa609abcdef0\r
+    and.l @(0x1234:16,r3l.b),@0xffff9abc:16             ;01056f3c123440609abc\r
+    and.l @(0x1234:16,r3l.b),@0x9abcdef0:32             ;01056f3c123448609abcdef0\r
+\r
+    and.l @(0x1234:16,r3.w),@er1                       ;01066f3c12340160\r
+    and.l @(0x1234:16,r3.w),@(0xc:2,er1)                 ;01066f3c12343160\r
+    and.l @(0x1234:16,r3.w),@-er1                      ;01066f3c1234b160\r
+    and.l @(0x1234:16,r3.w),@er1+                      ;01066f3c12348160\r
+    and.l @(0x1234:16,r3.w),@er1-                      ;01066f3c1234a160\r
+    and.l @(0x1234:16,r3.w),@+er1                      ;01066f3c12349160\r
+    and.l @(0x1234:16,r3.w),@(0xffff9abc:16,er1)       ;01066f3c1234c1609abc\r
+    and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)       ;01066f3c1234c9609abcdef0\r
+    and.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2l.b)     ;01066f3c1234d2609abc\r
+    and.l @(0x1234:16,r3.w),@(0xffff9abc:16,r2.w)     ;01066f3c1234e2609abc\r
+    and.l @(0x1234:16,r3.w),@(0xffff9abc:16,er2.l)     ;01066f3c1234f2609abc\r
+    and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)     ;01066f3c1234da609abcdef0\r
+    and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)     ;01066f3c1234ea609abcdef0\r
+    and.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)     ;01066f3c1234fa609abcdef0\r
+    and.l @(0x1234:16,r3.w),@0xffff9abc:16             ;01066f3c123440609abc\r
+    and.l @(0x1234:16,r3.w),@0x9abcdef0:32             ;01066f3c123448609abcdef0\r
+\r
+    and.l @(0x1234:16,er3.l),@er1                       ;01076f3c12340160\r
+    and.l @(0x1234:16,er3.l),@(0xc:2,er1)                 ;01076f3c12343160\r
+    and.l @(0x1234:16,er3.l),@-er1                      ;01076f3c1234b160\r
+    and.l @(0x1234:16,er3.l),@er1+                      ;01076f3c12348160\r
+    and.l @(0x1234:16,er3.l),@er1-                      ;01076f3c1234a160\r
+    and.l @(0x1234:16,er3.l),@+er1                      ;01076f3c12349160\r
+    and.l @(0x1234:16,er3.l),@(0xffff9abc:16,er1)       ;01076f3c1234c1609abc\r
+    and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)       ;01076f3c1234c9609abcdef0\r
+    and.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2l.b)     ;01076f3c1234d2609abc\r
+    and.l @(0x1234:16,er3.l),@(0xffff9abc:16,r2.w)     ;01076f3c1234e2609abc\r
+    and.l @(0x1234:16,er3.l),@(0xffff9abc:16,er2.l)     ;01076f3c1234f2609abc\r
+    and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)     ;01076f3c1234da609abcdef0\r
+    and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)     ;01076f3c1234ea609abcdef0\r
+    and.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)     ;01076f3c1234fa609abcdef0\r
+    and.l @(0x1234:16,er3.l),@0xffff9abc:16             ;01076f3c123440609abc\r
+    and.l @(0x1234:16,er3.l),@0x9abcdef0:32             ;01076f3c123448609abcdef0\r
+\r
+    and.l @(0x12345678:32,r3l.b),@er1                       ;78b56b2c123456780160\r
+    and.l @(0x12345678:32,r3l.b),@(0xc:2,er1)                 ;78b56b2c123456783160\r
+    and.l @(0x12345678:32,r3l.b),@-er1                      ;78b56b2c12345678b160\r
+    and.l @(0x12345678:32,r3l.b),@er1+                      ;78b56b2c123456788160\r
+    and.l @(0x12345678:32,r3l.b),@er1-                      ;78b56b2c12345678a160\r
+    and.l @(0x12345678:32,r3l.b),@+er1                      ;78b56b2c123456789160\r
+    and.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er1)       ;78b56b2c12345678c1609abc\r
+    and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)       ;78b56b2c12345678c9609abcdef0\r
+    and.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2l.b)     ;78b56b2c12345678d2609abc\r
+    and.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,r2.w)     ;78b56b2c12345678e2609abc\r
+    and.l @(0x12345678:32,r3l.b),@(0xffff9abc:16,er2.l)     ;78b56b2c12345678f2609abc\r
+    and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)     ;78b56b2c12345678da609abcdef0\r
+    and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)     ;78b56b2c12345678ea609abcdef0\r
+    and.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)     ;78b56b2c12345678fa609abcdef0\r
+    and.l @(0x12345678:32,r3l.b),@0xffff9abc:16             ;78b56b2c1234567840609abc\r
+    and.l @(0x12345678:32,r3l.b),@0x9abcdef0:32             ;78b56b2c1234567848609abcdef0\r
+\r
+    and.l @(0x12345678:32,r3.w),@er1                       ;78b66b2c123456780160\r
+    and.l @(0x12345678:32,r3.w),@(0xc:2,er1)                 ;78b66b2c123456783160\r
+    and.l @(0x12345678:32,r3.w),@-er1                      ;78b66b2c12345678b160\r
+    and.l @(0x12345678:32,r3.w),@er1+                      ;78b66b2c123456788160\r
+    and.l @(0x12345678:32,r3.w),@er1-                      ;78b66b2c12345678a160\r
+    and.l @(0x12345678:32,r3.w),@+er1                      ;78b66b2c123456789160\r
+    and.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er1)       ;78b66b2c12345678c1609abc\r
+    and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)       ;78b66b2c12345678c9609abcdef0\r
+    and.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2l.b)     ;78b66b2c12345678d2609abc\r
+    and.l @(0x12345678:32,r3.w),@(0xffff9abc:16,r2.w)     ;78b66b2c12345678e2609abc\r
+    and.l @(0x12345678:32,r3.w),@(0xffff9abc:16,er2.l)     ;78b66b2c12345678f2609abc\r
+    and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)     ;78b66b2c12345678da609abcdef0\r
+    and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)     ;78b66b2c12345678ea609abcdef0\r
+    and.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)     ;78b66b2c12345678fa609abcdef0\r
+    and.l @(0x12345678:32,r3.w),@0xffff9abc:16             ;78b66b2c1234567840609abc\r
+    and.l @(0x12345678:32,r3.w),@0x9abcdef0:32             ;78b66b2c1234567848609abcdef0\r
+\r
+    and.l @(0x12345678:32,er3.l),@er1                       ;78b76b2c123456780160\r
+    and.l @(0x12345678:32,er3.l),@(0xc:2,er1)                 ;78b76b2c123456783160\r
+    and.l @(0x12345678:32,er3.l),@-er1                      ;78b76b2c12345678b160\r
+    and.l @(0x12345678:32,er3.l),@er1+                      ;78b76b2c123456788160\r
+    and.l @(0x12345678:32,er3.l),@er1-                      ;78b76b2c12345678a160\r
+    and.l @(0x12345678:32,er3.l),@+er1                      ;78b76b2c123456789160\r
+    and.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er1)       ;78b76b2c12345678c1609abc\r
+    and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)       ;78b76b2c12345678c9609abcdef0\r
+    and.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2l.b)     ;78b76b2c12345678d2609abc\r
+    and.l @(0x12345678:32,er3.l),@(0xffff9abc:16,r2.w)     ;78b76b2c12345678e2609abc\r
+    and.l @(0x12345678:32,er3.l),@(0xffff9abc:16,er2.l)     ;78b76b2c12345678f2609abc\r
+    and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)     ;78b76b2c12345678da609abcdef0\r
+    and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)     ;78b76b2c12345678ea609abcdef0\r
+    and.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)     ;78b76b2c12345678fa609abcdef0\r
+    and.l @(0x12345678:32,er3.l),@0xffff9abc:16             ;78b76b2c1234567840609abc\r
+    and.l @(0x12345678:32,er3.l),@0x9abcdef0:32             ;78b76b2c1234567848609abcdef0\r
+\r
+    and.l @0x1234:16,@er1                              ;01046b0c12340160\r
+    and.l @0x1234:16,@(0xc:2,er1)                        ;01046b0c12343160\r
+    and.l @0x1234:16,@-er1                             ;01046b0c1234b160\r
+    and.l @0x1234:16,@er1+                             ;01046b0c12348160\r
+    and.l @0x1234:16,@er1-                             ;01046b0c1234a160\r
+    and.l @0x1234:16,@+er1                             ;01046b0c12349160\r
+    and.l @0x1234:16,@(0xffff9abc:16,er1)              ;01046b0c1234c1609abc\r
+    and.l @0x1234:16,@(0x9abcdef0:32,er1)              ;01046b0c1234c9609abcdef0\r
+    and.l @0x1234:16,@(0xffff9abc:16,r2l.b)            ;01046b0c1234d2609abc\r
+    and.l @0x1234:16,@(0xffff9abc:16,r2.w)            ;01046b0c1234e2609abc\r
+    and.l @0x1234:16,@(0xffff9abc:16,er2.l)            ;01046b0c1234f2609abc\r
+    and.l @0x1234:16,@(0x9abcdef0:32,r2l.b)            ;01046b0c1234da609abcdef0\r
+    and.l @0x1234:16,@(0x9abcdef0:32,r2.w)            ;01046b0c1234ea609abcdef0\r
+    and.l @0x1234:16,@(0x9abcdef0:32,er2.l)            ;01046b0c1234fa609abcdef0\r
+    and.l @0x1234:16,@0xffff9abc:16                    ;01046b0c123440609abc\r
+    and.l @0x1234:16,@0x9abcdef0:32                    ;01046b0c123448609abcdef0\r
+\r
+    and.l @0x12345678:32,@er1                              ;01046b2c123456780160\r
+    and.l @0x12345678:32,@(0xc:2,er1)                        ;01046b2c123456783160\r
+    and.l @0x12345678:32,@-er1                             ;01046b2c12345678b160\r
+    and.l @0x12345678:32,@er1+                             ;01046b2c123456788160\r
+    and.l @0x12345678:32,@er1-                             ;01046b2c12345678a160\r
+    and.l @0x12345678:32,@+er1                             ;01046b2c123456789160\r
+    and.l @0x12345678:32,@(0xffff9abc:16,er1)              ;01046b2c12345678c1609abc\r
+    and.l @0x12345678:32,@(0x9abcdef0:32,er1)              ;01046b2c12345678c9609abcdef0\r
+    and.l @0x12345678:32,@(0xffff9abc:16,r2l.b)            ;01046b2c12345678d2609abc\r
+    and.l @0x12345678:32,@(0xffff9abc:16,r2.w)            ;01046b2c12345678e2609abc\r
+    and.l @0x12345678:32,@(0xffff9abc:16,er2.l)            ;01046b2c12345678f2609abc\r
+    and.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)            ;01046b2c12345678da609abcdef0\r
+    and.l @0x12345678:32,@(0x9abcdef0:32,r2.w)            ;01046b2c12345678ea609abcdef0\r
+    and.l @0x12345678:32,@(0x9abcdef0:32,er2.l)            ;01046b2c12345678fa609abcdef0\r
+    and.l @0x12345678:32,@0xffff9abc:16                    ;01046b2c1234567840609abc\r
+    and.l @0x12345678:32,@0x9abcdef0:32                    ;01046b2c1234567848609abcdef0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t11_logs.exp b/gdb/testsuite/gdb.disasm/t11_logs.exp
new file mode 100644 (file)
index 0000000..85b2a9e
--- /dev/null
@@ -0,0 +1,2258 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t11_logs"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "not.b\tr1h" \
+       "not.b r1h"
+gdb_test "x" "not.b\t@er1" \
+       "not.b @er1"
+gdb_test "x" "not.b\t@\\(0x3(:2|),er1\\)" \
+       "not.b @(0x3:2,er1)"
+gdb_test "x" "not.b\t@er1\\+" \
+       "not.b @er1+"
+gdb_test "x" "not.b\t@-er1" \
+       "not.b @-er1"
+gdb_test "x" "not.b\t@\\+er1" \
+       "not.b @+er1"
+gdb_test "x" "not.b\t@er1-" \
+       "not.b @er1-"
+gdb_test "x" "not.b\t@\\(0x1234(:16|),er1\\)" \
+       "not.b @(0x1234:16,er1)"
+gdb_test "x" "not.b\t@\\(0x12345678(:32|),er1\\)" \
+       "not.b @(0x12345678:32,er1)"
+gdb_test "x" "not.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "not.b @(0x1234:16,r2l.b)"
+gdb_test "x" "not.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "not.b @(0x1234:16,r2.w)"
+gdb_test "x" "not.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "not.b @(0x1234:16,er2.l)"
+gdb_test "x" "not.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "not.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "not.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "not.b @(0x12345678:32,r2.w)"
+gdb_test "x" "not.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "not.b @(0x12345678:32,er2.l)"
+gdb_test "x" "not.b\t@0x12(:8|)" \
+       "not.b @0x12:8"
+gdb_test "x" "not.b\t@0x1234(:16|)" \
+       "not.b @0x1234:16"
+gdb_test "x" "not.b\t@0x12345678(:32|)" \
+       "not.b @0x12345678:32"
+gdb_test "x" "not.w\tr1" \
+       "not.w r1"
+gdb_test "x" "not.w\t@er1" \
+       "not.w @er1"
+gdb_test "x" "not.w\t@\\(0x6(:2|),er1\\)" \
+       "not.w @(0x6:2,er1)"
+gdb_test "x" "not.w\t@er1\\+" \
+       "not.w @er1+"
+gdb_test "x" "not.w\t@-er1" \
+       "not.w @-er1"
+gdb_test "x" "not.w\t@\\+er1" \
+       "not.w @+er1"
+gdb_test "x" "not.w\t@er1-" \
+       "not.w @er1-"
+gdb_test "x" "not.w\t@\\(0x1234(:16|),er1\\)" \
+       "not.w @(0x1234:16,er1)"
+gdb_test "x" "not.w\t@\\(0x12345678(:32|),er1\\)" \
+       "not.w @(0x12345678:32,er1)"
+gdb_test "x" "not.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "not.w @(0x1234:16,r2l.b)"
+gdb_test "x" "not.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "not.w @(0x1234:16,r2.w)"
+gdb_test "x" "not.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "not.w @(0x1234:16,er2.l)"
+gdb_test "x" "not.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "not.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "not.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "not.w @(0x12345678:32,r2.w)"
+gdb_test "x" "not.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "not.w @(0x12345678:32,er2.l)"
+gdb_test "x" "not.w\t@0x1234(:16|)" \
+       "not.w @0x1234:16"
+gdb_test "x" "not.w\t@0x12345678(:32|)" \
+       "not.w @0x12345678:32"
+gdb_test "x" "not.l\ter1" \
+       "not.l er1"
+gdb_test "x" "not.l\t@er1" \
+       "not.l @er1"
+gdb_test "x" "not.l\t@\\(0xc(:2|),er1\\)" \
+       "not.l @(0xc:2,er1)"
+gdb_test "x" "not.l\t@er1\\+" \
+       "not.l @er1+"
+gdb_test "x" "not.l\t@-er1" \
+       "not.l @-er1"
+gdb_test "x" "not.l\t@\\+er1" \
+       "not.l @+er1"
+gdb_test "x" "not.l\t@er1-" \
+       "not.l @er1-"
+gdb_test "x" "not.l\t@\\(0x1234(:16|),er1\\)" \
+       "not.l @(0x1234:16,er1)"
+gdb_test "x" "not.l\t@\\(0x12345678(:32|),er1\\)" \
+       "not.l @(0x12345678:32,er1)"
+gdb_test "x" "not.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "not.l @(0x1234:16,r2l.b)"
+gdb_test "x" "not.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "not.l @(0x1234:16,r2.w)"
+gdb_test "x" "not.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "not.l @(0x1234:16,er2.l)"
+gdb_test "x" "not.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "not.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "not.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "not.l @(0x12345678:32,r2.w)"
+gdb_test "x" "not.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "not.l @(0x12345678:32,er2.l)"
+gdb_test "x" "not.l\t@0x1234(:16|)" \
+       "not.l @0x1234:16"
+gdb_test "x" "not.l\t@0x12345678(:32|)" \
+       "not.l @0x12345678:32"
+gdb_test "x" "shll.b\tr1h" \
+       "shll.b r1h"
+gdb_test "x" "shll.b\t@er1" \
+       "shll.b @er1"
+gdb_test "x" "shll.b\t@\\(0x3(:2|),er1\\)" \
+       "shll.b @(0x3:2,er1)"
+gdb_test "x" "shll.b\t@er1\\+" \
+       "shll.b @er1+"
+gdb_test "x" "shll.b\t@-er1" \
+       "shll.b @-er1"
+gdb_test "x" "shll.b\t@\\+er1" \
+       "shll.b @+er1"
+gdb_test "x" "shll.b\t@er1-" \
+       "shll.b @er1-"
+gdb_test "x" "shll.b\t@\\(0x1234(:16|),er1\\)" \
+       "shll.b @(0x1234:16,er1)"
+gdb_test "x" "shll.b\t@\\(0x12345678(:32|),er1\\)" \
+       "shll.b @(0x12345678:32,er1)"
+gdb_test "x" "shll.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.b @(0x1234:16,r2l.b)"
+gdb_test "x" "shll.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "shll.b @(0x1234:16,r2.w)"
+gdb_test "x" "shll.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "shll.b @(0x1234:16,er2.l)"
+gdb_test "x" "shll.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.b @(0x12345678:32,r2.w)"
+gdb_test "x" "shll.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.b @(0x12345678:32,er2.l)"
+gdb_test "x" "shll.b\t@0x12(:8|)" \
+       "shll.b @0x12:8"
+gdb_test "x" "shll.b\t@0x1234(:16|)" \
+       "shll.b @0x1234:16"
+gdb_test "x" "shll.b\t@0x12345678(:32|)" \
+       "shll.b @0x12345678:32"
+gdb_test "x" "shll.w\tr1" \
+       "shll.w r1"
+gdb_test "x" "shll.w\t@er1" \
+       "shll.w @er1"
+gdb_test "x" "shll.w\t@\\(0x6(:2|),er1\\)" \
+       "shll.w @(0x6:2,er1)"
+gdb_test "x" "shll.w\t@er1\\+" \
+       "shll.w @er1+"
+gdb_test "x" "shll.w\t@-er1" \
+       "shll.w @-er1"
+gdb_test "x" "shll.w\t@\\+er1" \
+       "shll.w @+er1"
+gdb_test "x" "shll.w\t@er1-" \
+       "shll.w @er1-"
+gdb_test "x" "shll.w\t@\\(0x1234(:16|),er1\\)" \
+       "shll.w @(0x1234:16,er1)"
+gdb_test "x" "shll.w\t@\\(0x12345678(:32|),er1\\)" \
+       "shll.w @(0x12345678:32,er1)"
+gdb_test "x" "shll.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.w @(0x1234:16,r2l.b)"
+gdb_test "x" "shll.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "shll.w @(0x1234:16,r2.w)"
+gdb_test "x" "shll.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "shll.w @(0x1234:16,er2.l)"
+gdb_test "x" "shll.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.w @(0x12345678:32,r2.w)"
+gdb_test "x" "shll.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.w @(0x12345678:32,er2.l)"
+gdb_test "x" "shll.w\t@0x1234(:16|)" \
+       "shll.w @0x1234:16"
+gdb_test "x" "shll.w\t@0x12345678(:32|)" \
+       "shll.w @0x12345678:32"
+gdb_test "x" "shll.l\ter1" \
+       "shll.l er1"
+gdb_test "x" "shll.l\t@er1" \
+       "shll.l @er1"
+gdb_test "x" "shll.l\t@\\(0xc(:2|),er1\\)" \
+       "shll.l @(0xc:2,er1)"
+gdb_test "x" "shll.l\t@er1\\+" \
+       "shll.l @er1+"
+gdb_test "x" "shll.l\t@-er1" \
+       "shll.l @-er1"
+gdb_test "x" "shll.l\t@\\+er1" \
+       "shll.l @+er1"
+gdb_test "x" "shll.l\t@er1-" \
+       "shll.l @er1-"
+gdb_test "x" "shll.l\t@\\(0x1234(:16|),er1\\)" \
+       "shll.l @(0x1234:16,er1)"
+gdb_test "x" "shll.l\t@\\(0x12345678(:32|),er1\\)" \
+       "shll.l @(0x12345678:32,er1)"
+gdb_test "x" "shll.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.l @(0x1234:16,r2l.b)"
+gdb_test "x" "shll.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "shll.l @(0x1234:16,r2.w)"
+gdb_test "x" "shll.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "shll.l @(0x1234:16,er2.l)"
+gdb_test "x" "shll.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.l @(0x12345678:32,r2.w)"
+gdb_test "x" "shll.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.l @(0x12345678:32,er2.l)"
+gdb_test "x" "shll.l\t@0x1234(:16|)" \
+       "shll.l @0x1234:16"
+gdb_test "x" "shll.l\t@0x12345678(:32|)" \
+       "shll.l @0x12345678:32"
+gdb_test "x" "shll.b\t#2,r1h" \
+       "shll.b #2,r1h"
+gdb_test "x" "shll.b\t#2,@er1" \
+       "shll.b #2,@er1"
+gdb_test "x" "shll.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "shll.b #2,@(0x3:2,er1)"
+gdb_test "x" "shll.b\t#2,@er1\\+" \
+       "shll.b #2,@er1+"
+gdb_test "x" "shll.b\t#2,@-er1" \
+       "shll.b #2,@-er1"
+gdb_test "x" "shll.b\t#2,@\\+er1" \
+       "shll.b #2,@+er1"
+gdb_test "x" "shll.b\t#2,@er1-" \
+       "shll.b #2,@er1-"
+gdb_test "x" "shll.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shll.b #2,@(0x1234:16,er1)"
+gdb_test "x" "shll.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shll.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "shll.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.b\t#2,@0x12(:8|)" \
+       "shll.b #2,@0x12:8"
+gdb_test "x" "shll.b\t#2,@0x1234(:16|)" \
+       "shll.b #2,@0x1234:16"
+gdb_test "x" "shll.b\t#2,@0x12345678(:32|)" \
+       "shll.b #2,@0x12345678:32"
+gdb_test "x" "shll.w\t#2,r1" \
+       "shll.w #2,r1"
+gdb_test "x" "shll.w\t#2,@er1" \
+       "shll.w #2,@er1"
+gdb_test "x" "shll.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "shll.w #2,@(0x6:2,er1)"
+gdb_test "x" "shll.w\t#2,@er1\\+" \
+       "shll.w #2,@er1+"
+gdb_test "x" "shll.w\t#2,@-er1" \
+       "shll.w #2,@-er1"
+gdb_test "x" "shll.w\t#2,@\\+er1" \
+       "shll.w #2,@+er1"
+gdb_test "x" "shll.w\t#2,@er1-" \
+       "shll.w #2,@er1-"
+gdb_test "x" "shll.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shll.w #2,@(0x1234:16,er1)"
+gdb_test "x" "shll.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shll.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "shll.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.w\t#2,@0x1234(:16|)" \
+       "shll.w #2,@0x1234:16"
+gdb_test "x" "shll.w\t#2,@0x12345678(:32|)" \
+       "shll.w #2,@0x12345678:32"
+gdb_test "x" "shll.l\t#2,er1" \
+       "shll.l #2,er1"
+gdb_test "x" "shll.l\t#2,@er1" \
+       "shll.l #2,@er1"
+gdb_test "x" "shll.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "shll.l #2,@(0xc:2,er1)"
+gdb_test "x" "shll.l\t#2,@er1\\+" \
+       "shll.l #2,@er1+"
+gdb_test "x" "shll.l\t#2,@-er1" \
+       "shll.l #2,@-er1"
+gdb_test "x" "shll.l\t#2,@\\+er1" \
+       "shll.l #2,@+er1"
+gdb_test "x" "shll.l\t#2,@er1-" \
+       "shll.l #2,@er1-"
+gdb_test "x" "shll.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shll.l #2,@(0x1234:16,er1)"
+gdb_test "x" "shll.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shll.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "shll.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.l\t#2,@0x1234(:16|)" \
+       "shll.l #2,@0x1234:16"
+gdb_test "x" "shll.l\t#2,@0x12345678(:32|)" \
+       "shll.l #2,@0x12345678:32"
+gdb_test "x" "shll.b\t#4,r1h" \
+       "shll.b #4,r1h"
+gdb_test "x" "shll.b\t#4,@er1" \
+       "shll.b #4,@er1"
+gdb_test "x" "shll.b\t#4,@\\(0x3(:2|),er1\\)" \
+       "shll.b #4,@(0x3:2,er1)"
+gdb_test "x" "shll.b\t#4,@er1\\+" \
+       "shll.b #4,@er1+"
+gdb_test "x" "shll.b\t#4,@-er1" \
+       "shll.b #4,@-er1"
+gdb_test "x" "shll.b\t#4,@\\+er1" \
+       "shll.b #4,@+er1"
+gdb_test "x" "shll.b\t#4,@er1-" \
+       "shll.b #4,@er1-"
+gdb_test "x" "shll.b\t#4,@\\(0x1234(:16|),er1\\)" \
+       "shll.b #4,@(0x1234:16,er1)"
+gdb_test "x" "shll.b\t#4,@\\(0x12345678(:32|),er1\\)" \
+       "shll.b #4,@(0x12345678:32,er1)"
+gdb_test "x" "shll.b\t#4,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.b #4,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.b\t#4,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.b #4,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.b\t#4,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.b #4,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.b\t#4,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.b #4,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.b\t#4,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.b #4,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.b\t#4,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.b #4,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.b\t#4,@0x12(:8|)" \
+       "shll.b #4,@0x12:8"
+gdb_test "x" "shll.b\t#4,@0x1234(:16|)" \
+       "shll.b #4,@0x1234:16"
+gdb_test "x" "shll.b\t#4,@0x12345678(:32|)" \
+       "shll.b #4,@0x12345678:32"
+gdb_test "x" "shll.w\t#4,r1" \
+       "shll.w #4,r1"
+gdb_test "x" "shll.w\t#4,@er1" \
+       "shll.w #4,@er1"
+gdb_test "x" "shll.w\t#4,@\\(0x6(:2|),er1\\)" \
+       "shll.w #4,@(0x6:2,er1)"
+gdb_test "x" "shll.w\t#4,@er1\\+" \
+       "shll.w #4,@er1+"
+gdb_test "x" "shll.w\t#4,@-er1" \
+       "shll.w #4,@-er1"
+gdb_test "x" "shll.w\t#4,@\\+er1" \
+       "shll.w #4,@+er1"
+gdb_test "x" "shll.w\t#4,@er1-" \
+       "shll.w #4,@er1-"
+gdb_test "x" "shll.w\t#4,@\\(0x1234(:16|),er1\\)" \
+       "shll.w #4,@(0x1234:16,er1)"
+gdb_test "x" "shll.w\t#4,@\\(0x12345678(:32|),er1\\)" \
+       "shll.w #4,@(0x12345678:32,er1)"
+gdb_test "x" "shll.w\t#4,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.w #4,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.w\t#4,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.w #4,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.w\t#4,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.w #4,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.w\t#4,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.w #4,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.w\t#4,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.w #4,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.w\t#4,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.w #4,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.w\t#4,@0x1234(:16|)" \
+       "shll.w #4,@0x1234:16"
+gdb_test "x" "shll.w\t#4,@0x12345678(:32|)" \
+       "shll.w #4,@0x12345678:32"
+gdb_test "x" "shll.l\t#4,er1" \
+       "shll.l #4,er1"
+gdb_test "x" "shll.l\t#4,@er1" \
+       "shll.l #4,@er1"
+gdb_test "x" "shll.l\t#4,@\\(0xc(:2|),er1\\)" \
+       "shll.l #4,@(0xc:2,er1)"
+gdb_test "x" "shll.l\t#4,@er1\\+" \
+       "shll.l #4,@er1+"
+gdb_test "x" "shll.l\t#4,@-er1" \
+       "shll.l #4,@-er1"
+gdb_test "x" "shll.l\t#4,@\\+er1" \
+       "shll.l #4,@+er1"
+gdb_test "x" "shll.l\t#4,@er1-" \
+       "shll.l #4,@er1-"
+gdb_test "x" "shll.l\t#4,@\\(0x1234(:16|),er1\\)" \
+       "shll.l #4,@(0x1234:16,er1)"
+gdb_test "x" "shll.l\t#4,@\\(0x12345678(:32|),er1\\)" \
+       "shll.l #4,@(0x12345678:32,er1)"
+gdb_test "x" "shll.l\t#4,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.l #4,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.l\t#4,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.l #4,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.l\t#4,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.l #4,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.l\t#4,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.l #4,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.l\t#4,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.l #4,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.l\t#4,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.l #4,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.l\t#4,@0x1234(:16|)" \
+       "shll.l #4,@0x1234:16"
+gdb_test "x" "shll.l\t#4,@0x12345678(:32|)" \
+       "shll.l #4,@0x12345678:32"
+gdb_test "x" "shll.w\t#8,r1" \
+       "shll.w #8,r1"
+gdb_test "x" "shll.w\t#8,@er1" \
+       "shll.w #8,@er1"
+gdb_test "x" "shll.w\t#8,@\\(0x6(:2|),er1\\)" \
+       "shll.w #8,@(0x6:2,er1)"
+gdb_test "x" "shll.w\t#8,@er1\\+" \
+       "shll.w #8,@er1+"
+gdb_test "x" "shll.w\t#8,@-er1" \
+       "shll.w #8,@-er1"
+gdb_test "x" "shll.w\t#8,@\\+er1" \
+       "shll.w #8,@+er1"
+gdb_test "x" "shll.w\t#8,@er1-" \
+       "shll.w #8,@er1-"
+gdb_test "x" "shll.w\t#8,@\\(0x1234(:16|),er1\\)" \
+       "shll.w #8,@(0x1234:16,er1)"
+gdb_test "x" "shll.w\t#8,@\\(0x12345678(:32|),er1\\)" \
+       "shll.w #8,@(0x12345678:32,er1)"
+gdb_test "x" "shll.w\t#8,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.w #8,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.w\t#8,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.w #8,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.w\t#8,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.w #8,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.w\t#8,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.w #8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.w\t#8,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.w #8,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.w\t#8,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.w #8,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.w\t#8,@0x1234(:16|)" \
+       "shll.w #8,@0x1234:16"
+gdb_test "x" "shll.w\t#8,@0x12345678(:32|)" \
+       "shll.w #8,@0x12345678:32"
+gdb_test "x" "shll.l\t#8,er1" \
+       "shll.l #8,er1"
+gdb_test "x" "shll.l\t#8,@er1" \
+       "shll.l #8,@er1"
+gdb_test "x" "shll.l\t#8,@\\(0xc(:2|),er1\\)" \
+       "shll.l #8,@(0xc:2,er1)"
+gdb_test "x" "shll.l\t#8,@er1\\+" \
+       "shll.l #8,@er1+"
+gdb_test "x" "shll.l\t#8,@-er1" \
+       "shll.l #8,@-er1"
+gdb_test "x" "shll.l\t#8,@\\+er1" \
+       "shll.l #8,@+er1"
+gdb_test "x" "shll.l\t#8,@er1-" \
+       "shll.l #8,@er1-"
+gdb_test "x" "shll.l\t#8,@\\(0x1234(:16|),er1\\)" \
+       "shll.l #8,@(0x1234:16,er1)"
+gdb_test "x" "shll.l\t#8,@\\(0x12345678(:32|),er1\\)" \
+       "shll.l #8,@(0x12345678:32,er1)"
+gdb_test "x" "shll.l\t#8,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.l #8,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.l\t#8,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.l #8,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.l\t#8,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.l #8,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.l\t#8,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.l #8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.l\t#8,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.l #8,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.l\t#8,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.l #8,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.l\t#8,@0x1234(:16|)" \
+       "shll.l #8,@0x1234:16"
+gdb_test "x" "shll.l\t#8,@0x12345678(:32|)" \
+       "shll.l #8,@0x12345678:32"
+gdb_test "x" "shll.l\t#16,er1" \
+       "shll.l #16,er1"
+gdb_test "x" "shll.l\t#16,@er1" \
+       "shll.l #16,@er1"
+gdb_test "x" "shll.l\t#16,@\\(0xc(:2|),er1\\)" \
+       "shll.l #16,@(0xc:2,er1)"
+gdb_test "x" "shll.l\t#16,@er1\\+" \
+       "shll.l #16,@er1+"
+gdb_test "x" "shll.l\t#16,@-er1" \
+       "shll.l #16,@-er1"
+gdb_test "x" "shll.l\t#16,@\\+er1" \
+       "shll.l #16,@+er1"
+gdb_test "x" "shll.l\t#16,@er1-" \
+       "shll.l #16,@er1-"
+gdb_test "x" "shll.l\t#16,@\\(0x1234(:16|),er1\\)" \
+       "shll.l #16,@(0x1234:16,er1)"
+gdb_test "x" "shll.l\t#16,@\\(0x12345678(:32|),er1\\)" \
+       "shll.l #16,@(0x12345678:32,er1)"
+gdb_test "x" "shll.l\t#16,@\\(0x1234(:16|),r2l.b\\)" \
+       "shll.l #16,@(0x1234:16,r2l.b)"
+gdb_test "x" "shll.l\t#16,@\\(0x1234(:16|),r2.w\\)" \
+       "shll.l #16,@(0x1234:16,r2.w)"
+gdb_test "x" "shll.l\t#16,@\\(0x1234(:16|),er2.l\\)" \
+       "shll.l #16,@(0x1234:16,er2.l)"
+gdb_test "x" "shll.l\t#16,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shll.l #16,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shll.l\t#16,@\\(0x12345678(:32|),r2.w\\)" \
+       "shll.l #16,@(0x12345678:32,r2.w)"
+gdb_test "x" "shll.l\t#16,@\\(0x12345678(:32|),er2.l\\)" \
+       "shll.l #16,@(0x12345678:32,er2.l)"
+gdb_test "x" "shll.l\t#16,@0x1234(:16|)" \
+       "shll.l #16,@0x1234:16"
+gdb_test "x" "shll.l\t#16,@0x12345678(:32|)" \
+       "shll.l #16,@0x12345678:32"
+gdb_test "x" "shll.b\t#0x7(:5|),r1h" \
+       "shll.b #0x7:5,r1h"
+gdb_test "x" "shll.w\t#0xf(:5|),r1" \
+       "shll.w #0xf:5,r1"
+gdb_test "x" "shll.l\t#0x1f(:5|),er1" \
+       "shll.l #0x1f:5,er1"
+gdb_test "x" "shll.b\tr3h,r1h" \
+       "shll.b r3h,r1h"
+gdb_test "x" "shll.w\tr3h,r1" \
+       "shll.w r3h,r1"
+gdb_test "x" "shll.l\tr3h,er1" \
+       "shll.l r3h,er1"
+gdb_test "x" "shlr.b\tr1h" \
+       "shlr.b r1h"
+gdb_test "x" "shlr.b\t@er1" \
+       "shlr.b @er1"
+gdb_test "x" "shlr.b\t@\\(0x3(:2|),er1\\)" \
+       "shlr.b @(0x3:2,er1)"
+gdb_test "x" "shlr.b\t@er1\\+" \
+       "shlr.b @er1+"
+gdb_test "x" "shlr.b\t@-er1" \
+       "shlr.b @-er1"
+gdb_test "x" "shlr.b\t@\\+er1" \
+       "shlr.b @+er1"
+gdb_test "x" "shlr.b\t@er1-" \
+       "shlr.b @er1-"
+gdb_test "x" "shlr.b\t@\\(0x1234(:16|),er1\\)" \
+       "shlr.b @(0x1234:16,er1)"
+gdb_test "x" "shlr.b\t@\\(0x12345678(:32|),er1\\)" \
+       "shlr.b @(0x12345678:32,er1)"
+gdb_test "x" "shlr.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.b @(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.b @(0x1234:16,r2.w)"
+gdb_test "x" "shlr.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.b @(0x1234:16,er2.l)"
+gdb_test "x" "shlr.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.b @(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.b @(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.b\t@0x12(:8|)" \
+       "shlr.b @0x12:8"
+gdb_test "x" "shlr.b\t@0x1234(:16|)" \
+       "shlr.b @0x1234:16"
+gdb_test "x" "shlr.b\t@0x12345678(:32|)" \
+       "shlr.b @0x12345678:32"
+gdb_test "x" "shlr.w\tr1" \
+       "shlr.w r1"
+gdb_test "x" "shlr.w\t@er1" \
+       "shlr.w @er1"
+gdb_test "x" "shlr.w\t@\\(0x6(:2|),er1\\)" \
+       "shlr.w @(0x6:2,er1)"
+gdb_test "x" "shlr.w\t@er1\\+" \
+       "shlr.w @er1+"
+gdb_test "x" "shlr.w\t@-er1" \
+       "shlr.w @-er1"
+gdb_test "x" "shlr.w\t@\\+er1" \
+       "shlr.w @+er1"
+gdb_test "x" "shlr.w\t@er1-" \
+       "shlr.w @er1-"
+gdb_test "x" "shlr.w\t@\\(0x1234(:16|),er1\\)" \
+       "shlr.w @(0x1234:16,er1)"
+gdb_test "x" "shlr.w\t@\\(0x12345678(:32|),er1\\)" \
+       "shlr.w @(0x12345678:32,er1)"
+gdb_test "x" "shlr.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.w @(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.w @(0x1234:16,r2.w)"
+gdb_test "x" "shlr.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.w @(0x1234:16,er2.l)"
+gdb_test "x" "shlr.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.w @(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.w @(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.w\t@0x1234(:16|)" \
+       "shlr.w @0x1234:16"
+gdb_test "x" "shlr.w\t@0x12345678(:32|)" \
+       "shlr.w @0x12345678:32"
+gdb_test "x" "shlr.l\ter1" \
+       "shlr.l er1"
+gdb_test "x" "shlr.l\t@er1" \
+       "shlr.l @er1"
+gdb_test "x" "shlr.l\t@\\(0xc(:2|),er1\\)" \
+       "shlr.l @(0xc:2,er1)"
+gdb_test "x" "shlr.l\t@er1\\+" \
+       "shlr.l @er1+"
+gdb_test "x" "shlr.l\t@-er1" \
+       "shlr.l @-er1"
+gdb_test "x" "shlr.l\t@\\+er1" \
+       "shlr.l @+er1"
+gdb_test "x" "shlr.l\t@er1-" \
+       "shlr.l @er1-"
+gdb_test "x" "shlr.l\t@\\(0x1234(:16|),er1\\)" \
+       "shlr.l @(0x1234:16,er1)"
+gdb_test "x" "shlr.l\t@\\(0x12345678(:32|),er1\\)" \
+       "shlr.l @(0x12345678:32,er1)"
+gdb_test "x" "shlr.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.l @(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.l @(0x1234:16,r2.w)"
+gdb_test "x" "shlr.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.l @(0x1234:16,er2.l)"
+gdb_test "x" "shlr.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.l @(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.l @(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.l\t@0x1234(:16|)" \
+       "shlr.l @0x1234:16"
+gdb_test "x" "shlr.l\t@0x12345678(:32|)" \
+       "shlr.l @0x12345678:32"
+gdb_test "x" "shlr.b\t#2,r1h" \
+       "shlr.b #2,r1h"
+gdb_test "x" "shlr.b\t#2,@er1" \
+       "shlr.b #2,@er1"
+gdb_test "x" "shlr.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "shlr.b #2,@(0x3:2,er1)"
+gdb_test "x" "shlr.b\t#2,@er1\\+" \
+       "shlr.b #2,@er1+"
+gdb_test "x" "shlr.b\t#2,@-er1" \
+       "shlr.b #2,@-er1"
+gdb_test "x" "shlr.b\t#2,@\\+er1" \
+       "shlr.b #2,@+er1"
+gdb_test "x" "shlr.b\t#2,@er1-" \
+       "shlr.b #2,@er1-"
+gdb_test "x" "shlr.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shlr.b #2,@(0x1234:16,er1)"
+gdb_test "x" "shlr.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.b\t#2,@0x12(:8|)" \
+       "shlr.b #2,@0x12:8"
+gdb_test "x" "shlr.b\t#2,@0x1234(:16|)" \
+       "shlr.b #2,@0x1234:16"
+gdb_test "x" "shlr.b\t#2,@0x12345678(:32|)" \
+       "shlr.b #2,@0x12345678:32"
+gdb_test "x" "shlr.w\t#2,r1" \
+       "shlr.w #2,r1"
+gdb_test "x" "shlr.w\t#2,@er1" \
+       "shlr.w #2,@er1"
+gdb_test "x" "shlr.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "shlr.w #2,@(0x6:2,er1)"
+gdb_test "x" "shlr.w\t#2,@er1\\+" \
+       "shlr.w #2,@er1+"
+gdb_test "x" "shlr.w\t#2,@-er1" \
+       "shlr.w #2,@-er1"
+gdb_test "x" "shlr.w\t#2,@\\+er1" \
+       "shlr.w #2,@+er1"
+gdb_test "x" "shlr.w\t#2,@er1-" \
+       "shlr.w #2,@er1-"
+gdb_test "x" "shlr.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shlr.w #2,@(0x1234:16,er1)"
+gdb_test "x" "shlr.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.w\t#2,@0x1234(:16|)" \
+       "shlr.w #2,@0x1234:16"
+gdb_test "x" "shlr.w\t#2,@0x12345678(:32|)" \
+       "shlr.w #2,@0x12345678:32"
+gdb_test "x" "shlr.l\t#2,er1" \
+       "shlr.l #2,er1"
+gdb_test "x" "shlr.l\t#2,@er1" \
+       "shlr.l #2,@er1"
+gdb_test "x" "shlr.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "shlr.l #2,@(0xc:2,er1)"
+gdb_test "x" "shlr.l\t#2,@er1\\+" \
+       "shlr.l #2,@er1+"
+gdb_test "x" "shlr.l\t#2,@-er1" \
+       "shlr.l #2,@-er1"
+gdb_test "x" "shlr.l\t#2,@\\+er1" \
+       "shlr.l #2,@+er1"
+gdb_test "x" "shlr.l\t#2,@er1-" \
+       "shlr.l #2,@er1-"
+gdb_test "x" "shlr.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shlr.l #2,@(0x1234:16,er1)"
+gdb_test "x" "shlr.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.l\t#2,@0x1234(:16|)" \
+       "shlr.l #2,@0x1234:16"
+gdb_test "x" "shlr.l\t#2,@0x12345678(:32|)" \
+       "shlr.l #2,@0x12345678:32"
+gdb_test "x" "shlr.b\t#4,r1h" \
+       "shlr.b #4,r1h"
+gdb_test "x" "shlr.b\t#4,@er1" \
+       "shlr.b #4,@er1"
+gdb_test "x" "shlr.b\t#4,@\\(0x3(:2|),er1\\)" \
+       "shlr.b #4,@(0x3:2,er1)"
+gdb_test "x" "shlr.b\t#4,@er1\\+" \
+       "shlr.b #4,@er1+"
+gdb_test "x" "shlr.b\t#4,@-er1" \
+       "shlr.b #4,@-er1"
+gdb_test "x" "shlr.b\t#4,@\\+er1" \
+       "shlr.b #4,@+er1"
+gdb_test "x" "shlr.b\t#4,@er1-" \
+       "shlr.b #4,@er1-"
+gdb_test "x" "shlr.b\t#4,@\\(0x1234(:16|),er1\\)" \
+       "shlr.b #4,@(0x1234:16,er1)"
+gdb_test "x" "shlr.b\t#4,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.b #4,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.b\t#4,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.b #4,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.b\t#4,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.b #4,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.b\t#4,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.b #4,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.b\t#4,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.b #4,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.b\t#4,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.b #4,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.b\t#4,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.b #4,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.b\t#4,@0x12(:8|)" \
+       "shlr.b #4,@0x12:8"
+gdb_test "x" "shlr.b\t#4,@0x1234(:16|)" \
+       "shlr.b #4,@0x1234:16"
+gdb_test "x" "shlr.b\t#4,@0x12345678(:32|)" \
+       "shlr.b #4,@0x12345678:32"
+gdb_test "x" "shlr.w\t#4,r1" \
+       "shlr.w #4,r1"
+gdb_test "x" "shlr.w\t#4,@er1" \
+       "shlr.w #4,@er1"
+gdb_test "x" "shlr.w\t#4,@\\(0x6(:2|),er1\\)" \
+       "shlr.w #4,@(0x6:2,er1)"
+gdb_test "x" "shlr.w\t#4,@er1\\+" \
+       "shlr.w #4,@er1+"
+gdb_test "x" "shlr.w\t#4,@-er1" \
+       "shlr.w #4,@-er1"
+gdb_test "x" "shlr.w\t#4,@\\+er1" \
+       "shlr.w #4,@+er1"
+gdb_test "x" "shlr.w\t#4,@er1-" \
+       "shlr.w #4,@er1-"
+gdb_test "x" "shlr.w\t#4,@\\(0x1234(:16|),er1\\)" \
+       "shlr.w #4,@(0x1234:16,er1)"
+gdb_test "x" "shlr.w\t#4,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.w #4,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.w\t#4,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.w #4,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.w\t#4,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.w #4,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.w\t#4,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.w #4,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.w\t#4,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.w #4,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.w\t#4,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.w #4,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.w\t#4,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.w #4,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.w\t#4,@0x1234(:16|)" \
+       "shlr.w #4,@0x1234:16"
+gdb_test "x" "shlr.w\t#4,@0x12345678(:32|)" \
+       "shlr.w #4,@0x12345678:32"
+gdb_test "x" "shlr.l\t#4,er1" \
+       "shlr.l #4,er1"
+gdb_test "x" "shlr.l\t#4,@er1" \
+       "shlr.l #4,@er1"
+gdb_test "x" "shlr.l\t#4,@\\(0xc(:2|),er1\\)" \
+       "shlr.l #4,@(0xc:2,er1)"
+gdb_test "x" "shlr.l\t#4,@er1\\+" \
+       "shlr.l #4,@er1+"
+gdb_test "x" "shlr.l\t#4,@-er1" \
+       "shlr.l #4,@-er1"
+gdb_test "x" "shlr.l\t#4,@\\+er1" \
+       "shlr.l #4,@+er1"
+gdb_test "x" "shlr.l\t#4,@er1-" \
+       "shlr.l #4,@er1-"
+gdb_test "x" "shlr.l\t#4,@\\(0x1234(:16|),er1\\)" \
+       "shlr.l #4,@(0x1234:16,er1)"
+gdb_test "x" "shlr.l\t#4,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.l #4,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.l\t#4,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.l #4,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.l\t#4,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.l #4,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.l\t#4,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.l #4,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.l\t#4,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.l #4,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.l\t#4,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.l #4,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.l\t#4,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.l #4,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.l\t#4,@0x1234(:16|)" \
+       "shlr.l #4,@0x1234:16"
+gdb_test "x" "shlr.l\t#4,@0x12345678(:32|)" \
+       "shlr.l #4,@0x12345678:32"
+gdb_test "x" "shlr.w\t#8,r1" \
+       "shlr.w #8,r1"
+gdb_test "x" "shlr.w\t#8,@er1" \
+       "shlr.w #8,@er1"
+gdb_test "x" "shlr.w\t#8,@\\(0x6(:2|),er1\\)" \
+       "shlr.w #8,@(0x6:2,er1)"
+gdb_test "x" "shlr.w\t#8,@er1\\+" \
+       "shlr.w #8,@er1+"
+gdb_test "x" "shlr.w\t#8,@-er1" \
+       "shlr.w #8,@-er1"
+gdb_test "x" "shlr.w\t#8,@\\+er1" \
+       "shlr.w #8,@+er1"
+gdb_test "x" "shlr.w\t#8,@er1-" \
+       "shlr.w #8,@er1-"
+gdb_test "x" "shlr.w\t#8,@\\(0x1234(:16|),er1\\)" \
+       "shlr.w #8,@(0x1234:16,er1)"
+gdb_test "x" "shlr.w\t#8,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.w #8,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.w\t#8,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.w #8,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.w\t#8,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.w #8,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.w\t#8,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.w #8,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.w\t#8,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.w #8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.w\t#8,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.w #8,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.w\t#8,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.w #8,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.w\t#8,@0x1234(:16|)" \
+       "shlr.w #8,@0x1234:16"
+gdb_test "x" "shlr.w\t#8,@0x12345678(:32|)" \
+       "shlr.w #8,@0x12345678:32"
+gdb_test "x" "shlr.l\t#8,er1" \
+       "shlr.l #8,er1"
+gdb_test "x" "shlr.l\t#8,@er1" \
+       "shlr.l #8,@er1"
+gdb_test "x" "shlr.l\t#8,@\\(0xc(:2|),er1\\)" \
+       "shlr.l #8,@(0xc:2,er1)"
+gdb_test "x" "shlr.l\t#8,@er1\\+" \
+       "shlr.l #8,@er1+"
+gdb_test "x" "shlr.l\t#8,@-er1" \
+       "shlr.l #8,@-er1"
+gdb_test "x" "shlr.l\t#8,@\\+er1" \
+       "shlr.l #8,@+er1"
+gdb_test "x" "shlr.l\t#8,@er1-" \
+       "shlr.l #8,@er1-"
+gdb_test "x" "shlr.l\t#8,@\\(0x1234(:16|),er1\\)" \
+       "shlr.l #8,@(0x1234:16,er1)"
+gdb_test "x" "shlr.l\t#8,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.l #8,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.l\t#8,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.l #8,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.l\t#8,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.l #8,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.l\t#8,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.l #8,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.l\t#8,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.l #8,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.l\t#8,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.l #8,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.l\t#8,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.l #8,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.l\t#8,@0x1234(:16|)" \
+       "shlr.l #8,@0x1234:16"
+gdb_test "x" "shlr.l\t#8,@0x12345678(:32|)" \
+       "shlr.l #8,@0x12345678:32"
+gdb_test "x" "shlr.l\t#16,er1" \
+       "shlr.l #16,er1"
+gdb_test "x" "shlr.l\t#16,@er1" \
+       "shlr.l #16,@er1"
+gdb_test "x" "shlr.l\t#16,@\\(0xc(:2|),er1\\)" \
+       "shlr.l #16,@(0xc:2,er1)"
+gdb_test "x" "shlr.l\t#16,@er1\\+" \
+       "shlr.l #16,@er1+"
+gdb_test "x" "shlr.l\t#16,@-er1" \
+       "shlr.l #16,@-er1"
+gdb_test "x" "shlr.l\t#16,@\\+er1" \
+       "shlr.l #16,@+er1"
+gdb_test "x" "shlr.l\t#16,@er1-" \
+       "shlr.l #16,@er1-"
+gdb_test "x" "shlr.l\t#16,@\\(0x1234(:16|),er1\\)" \
+       "shlr.l #16,@(0x1234:16,er1)"
+gdb_test "x" "shlr.l\t#16,@\\(0x12345678(:32|),er1\\)" \
+       "shlr.l #16,@(0x12345678:32,er1)"
+gdb_test "x" "shlr.l\t#16,@\\(0x1234(:16|),r2l.b\\)" \
+       "shlr.l #16,@(0x1234:16,r2l.b)"
+gdb_test "x" "shlr.l\t#16,@\\(0x1234(:16|),r2.w\\)" \
+       "shlr.l #16,@(0x1234:16,r2.w)"
+gdb_test "x" "shlr.l\t#16,@\\(0x1234(:16|),er2.l\\)" \
+       "shlr.l #16,@(0x1234:16,er2.l)"
+gdb_test "x" "shlr.l\t#16,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shlr.l #16,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shlr.l\t#16,@\\(0x12345678(:32|),r2.w\\)" \
+       "shlr.l #16,@(0x12345678:32,r2.w)"
+gdb_test "x" "shlr.l\t#16,@\\(0x12345678(:32|),er2.l\\)" \
+       "shlr.l #16,@(0x12345678:32,er2.l)"
+gdb_test "x" "shlr.l\t#16,@0x1234(:16|)" \
+       "shlr.l #16,@0x1234:16"
+gdb_test "x" "shlr.l\t#16,@0x12345678(:32|)" \
+       "shlr.l #16,@0x12345678:32"
+gdb_test "x" "shlr.b\t#0x7(:5|),r1h" \
+       "shlr.b #0x7:5,r1h"
+gdb_test "x" "shlr.w\t#0xf(:5|),r1" \
+       "shlr.w #0xf:5,r1"
+gdb_test "x" "shlr.l\t#0x1f(:5|),er1" \
+       "shlr.l #0x1f:5,er1"
+gdb_test "x" "shlr.b\tr3h,r1h" \
+       "shlr.b r3h,r1h"
+gdb_test "x" "shlr.w\tr3h,r1" \
+       "shlr.w r3h,r1"
+gdb_test "x" "shlr.l\tr3h,er1" \
+       "shlr.l r3h,er1"
+gdb_test "x" "shal.b\tr1h" \
+       "shal.b r1h"
+gdb_test "x" "shal.b\t@er1" \
+       "shal.b @er1"
+gdb_test "x" "shal.b\t@\\(0x3(:2|),er1\\)" \
+       "shal.b @(0x3:2,er1)"
+gdb_test "x" "shal.b\t@er1\\+" \
+       "shal.b @er1+"
+gdb_test "x" "shal.b\t@-er1" \
+       "shal.b @-er1"
+gdb_test "x" "shal.b\t@\\+er1" \
+       "shal.b @+er1"
+gdb_test "x" "shal.b\t@er1-" \
+       "shal.b @er1-"
+gdb_test "x" "shal.b\t@\\(0x1234(:16|),er1\\)" \
+       "shal.b @(0x1234:16,er1)"
+gdb_test "x" "shal.b\t@\\(0x12345678(:32|),er1\\)" \
+       "shal.b @(0x12345678:32,er1)"
+gdb_test "x" "shal.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shal.b @(0x1234:16,r2l.b)"
+gdb_test "x" "shal.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "shal.b @(0x1234:16,r2.w)"
+gdb_test "x" "shal.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "shal.b @(0x1234:16,er2.l)"
+gdb_test "x" "shal.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shal.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "shal.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shal.b @(0x12345678:32,r2.w)"
+gdb_test "x" "shal.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shal.b @(0x12345678:32,er2.l)"
+gdb_test "x" "shal.b\t@0x12(:8|)" \
+       "shal.b @0x12:8"
+gdb_test "x" "shal.b\t@0x1234(:16|)" \
+       "shal.b @0x1234:16"
+gdb_test "x" "shal.b\t@0x12345678(:32|)" \
+       "shal.b @0x12345678:32"
+gdb_test "x" "shal.w\tr1" \
+       "shal.w r1"
+gdb_test "x" "shal.w\t@er1" \
+       "shal.w @er1"
+gdb_test "x" "shal.w\t@\\(0x6(:2|),er1\\)" \
+       "shal.w @(0x6:2,er1)"
+gdb_test "x" "shal.w\t@er1\\+" \
+       "shal.w @er1+"
+gdb_test "x" "shal.w\t@-er1" \
+       "shal.w @-er1"
+gdb_test "x" "shal.w\t@\\+er1" \
+       "shal.w @+er1"
+gdb_test "x" "shal.w\t@er1-" \
+       "shal.w @er1-"
+gdb_test "x" "shal.w\t@\\(0x1234(:16|),er1\\)" \
+       "shal.w @(0x1234:16,er1)"
+gdb_test "x" "shal.w\t@\\(0x12345678(:32|),er1\\)" \
+       "shal.w @(0x12345678:32,er1)"
+gdb_test "x" "shal.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shal.w @(0x1234:16,r2l.b)"
+gdb_test "x" "shal.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "shal.w @(0x1234:16,r2.w)"
+gdb_test "x" "shal.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "shal.w @(0x1234:16,er2.l)"
+gdb_test "x" "shal.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shal.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "shal.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shal.w @(0x12345678:32,r2.w)"
+gdb_test "x" "shal.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shal.w @(0x12345678:32,er2.l)"
+gdb_test "x" "shal.w\t@0x1234(:16|)" \
+       "shal.w @0x1234:16"
+gdb_test "x" "shal.w\t@0x12345678(:32|)" \
+       "shal.w @0x12345678:32"
+gdb_test "x" "shal.l\ter1" \
+       "shal.l er1"
+gdb_test "x" "shal.l\t@er1" \
+       "shal.l @er1"
+gdb_test "x" "shal.l\t@\\(0xc(:2|),er1\\)" \
+       "shal.l @(0xc:2,er1)"
+gdb_test "x" "shal.l\t@er1\\+" \
+       "shal.l @er1+"
+gdb_test "x" "shal.l\t@-er1" \
+       "shal.l @-er1"
+gdb_test "x" "shal.l\t@\\+er1" \
+       "shal.l @+er1"
+gdb_test "x" "shal.l\t@er1-" \
+       "shal.l @er1-"
+gdb_test "x" "shal.l\t@\\(0x1234(:16|),er1\\)" \
+       "shal.l @(0x1234:16,er1)"
+gdb_test "x" "shal.l\t@\\(0x12345678(:32|),er1\\)" \
+       "shal.l @(0x12345678:32,er1)"
+gdb_test "x" "shal.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shal.l @(0x1234:16,r2l.b)"
+gdb_test "x" "shal.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "shal.l @(0x1234:16,r2.w)"
+gdb_test "x" "shal.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "shal.l @(0x1234:16,er2.l)"
+gdb_test "x" "shal.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shal.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "shal.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shal.l @(0x12345678:32,r2.w)"
+gdb_test "x" "shal.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shal.l @(0x12345678:32,er2.l)"
+gdb_test "x" "shal.l\t@0x1234(:16|)" \
+       "shal.l @0x1234:16"
+gdb_test "x" "shal.l\t@0x12345678(:32|)" \
+       "shal.l @0x12345678:32"
+gdb_test "x" "shal.b\t#2,r1h" \
+       "shal.b #2,r1h"
+gdb_test "x" "shal.b\t#2,@er1" \
+       "shal.b #2,@er1"
+gdb_test "x" "shal.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "shal.b #2,@(0x3:2,er1)"
+gdb_test "x" "shal.b\t#2,@er1\\+" \
+       "shal.b #2,@er1+"
+gdb_test "x" "shal.b\t#2,@-er1" \
+       "shal.b #2,@-er1"
+gdb_test "x" "shal.b\t#2,@\\+er1" \
+       "shal.b #2,@+er1"
+gdb_test "x" "shal.b\t#2,@er1-" \
+       "shal.b #2,@er1-"
+gdb_test "x" "shal.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shal.b #2,@(0x1234:16,er1)"
+gdb_test "x" "shal.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shal.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "shal.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shal.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shal.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shal.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shal.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shal.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shal.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shal.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shal.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shal.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shal.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shal.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shal.b\t#2,@0x12(:8|)" \
+       "shal.b #2,@0x12:8"
+gdb_test "x" "shal.b\t#2,@0x1234(:16|)" \
+       "shal.b #2,@0x1234:16"
+gdb_test "x" "shal.b\t#2,@0x12345678(:32|)" \
+       "shal.b #2,@0x12345678:32"
+gdb_test "x" "shal.w\t#2,r1" \
+       "shal.w #2,r1"
+gdb_test "x" "shal.w\t#2,@er1" \
+       "shal.w #2,@er1"
+gdb_test "x" "shal.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "shal.w #2,@(0x6:2,er1)"
+gdb_test "x" "shal.w\t#2,@er1\\+" \
+       "shal.w #2,@er1+"
+gdb_test "x" "shal.w\t#2,@-er1" \
+       "shal.w #2,@-er1"
+gdb_test "x" "shal.w\t#2,@\\+er1" \
+       "shal.w #2,@+er1"
+gdb_test "x" "shal.w\t#2,@er1-" \
+       "shal.w #2,@er1-"
+gdb_test "x" "shal.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shal.w #2,@(0x1234:16,er1)"
+gdb_test "x" "shal.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shal.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "shal.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shal.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shal.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shal.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shal.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shal.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shal.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shal.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shal.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shal.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shal.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shal.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shal.w\t#2,@0x1234(:16|)" \
+       "shal.w #2,@0x1234:16"
+gdb_test "x" "shal.w\t#2,@0x12345678(:32|)" \
+       "shal.w #2,@0x12345678:32"
+gdb_test "x" "shal.l\t#2,er1" \
+       "shal.l #2,er1"
+gdb_test "x" "shal.l\t#2,@er1" \
+       "shal.l #2,@er1"
+gdb_test "x" "shal.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "shal.l #2,@(0xc:2,er1)"
+gdb_test "x" "shal.l\t#2,@er1\\+" \
+       "shal.l #2,@er1+"
+gdb_test "x" "shal.l\t#2,@-er1" \
+       "shal.l #2,@-er1"
+gdb_test "x" "shal.l\t#2,@\\+er1" \
+       "shal.l #2,@+er1"
+gdb_test "x" "shal.l\t#2,@er1-" \
+       "shal.l #2,@er1-"
+gdb_test "x" "shal.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shal.l #2,@(0x1234:16,er1)"
+gdb_test "x" "shal.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shal.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "shal.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shal.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shal.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shal.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shal.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shal.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shal.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shal.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shal.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shal.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shal.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shal.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shal.l\t#2,@0x1234(:16|)" \
+       "shal.l #2,@0x1234:16"
+gdb_test "x" "shal.l\t#2,@0x12345678(:32|)" \
+       "shal.l #2,@0x12345678:32"
+gdb_test "x" "shar.b\tr1h" \
+       "shar.b r1h"
+gdb_test "x" "shar.b\t@er1" \
+       "shar.b @er1"
+gdb_test "x" "shar.b\t@\\(0x3(:2|),er1\\)" \
+       "shar.b @(0x3:2,er1)"
+gdb_test "x" "shar.b\t@er1\\+" \
+       "shar.b @er1+"
+gdb_test "x" "shar.b\t@-er1" \
+       "shar.b @-er1"
+gdb_test "x" "shar.b\t@\\+er1" \
+       "shar.b @+er1"
+gdb_test "x" "shar.b\t@er1-" \
+       "shar.b @er1-"
+gdb_test "x" "shar.b\t@\\(0x1234(:16|),er1\\)" \
+       "shar.b @(0x1234:16,er1)"
+gdb_test "x" "shar.b\t@\\(0x12345678(:32|),er1\\)" \
+       "shar.b @(0x12345678:32,er1)"
+gdb_test "x" "shar.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shar.b @(0x1234:16,r2l.b)"
+gdb_test "x" "shar.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "shar.b @(0x1234:16,r2.w)"
+gdb_test "x" "shar.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "shar.b @(0x1234:16,er2.l)"
+gdb_test "x" "shar.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shar.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "shar.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shar.b @(0x12345678:32,r2.w)"
+gdb_test "x" "shar.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shar.b @(0x12345678:32,er2.l)"
+gdb_test "x" "shar.b\t@0x12(:8|)" \
+       "shar.b @0x12:8"
+gdb_test "x" "shar.b\t@0x1234(:16|)" \
+       "shar.b @0x1234:16"
+gdb_test "x" "shar.b\t@0x12345678(:32|)" \
+       "shar.b @0x12345678:32"
+gdb_test "x" "shar.w\tr1" \
+       "shar.w r1"
+gdb_test "x" "shar.w\t@er1" \
+       "shar.w @er1"
+gdb_test "x" "shar.w\t@\\(0x6(:2|),er1\\)" \
+       "shar.w @(0x6:2,er1)"
+gdb_test "x" "shar.w\t@er1\\+" \
+       "shar.w @er1+"
+gdb_test "x" "shar.w\t@-er1" \
+       "shar.w @-er1"
+gdb_test "x" "shar.w\t@\\+er1" \
+       "shar.w @+er1"
+gdb_test "x" "shar.w\t@er1-" \
+       "shar.w @er1-"
+gdb_test "x" "shar.w\t@\\(0x1234(:16|),er1\\)" \
+       "shar.w @(0x1234:16,er1)"
+gdb_test "x" "shar.w\t@\\(0x12345678(:32|),er1\\)" \
+       "shar.w @(0x12345678:32,er1)"
+gdb_test "x" "shar.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shar.w @(0x1234:16,r2l.b)"
+gdb_test "x" "shar.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "shar.w @(0x1234:16,r2.w)"
+gdb_test "x" "shar.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "shar.w @(0x1234:16,er2.l)"
+gdb_test "x" "shar.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shar.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "shar.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shar.w @(0x12345678:32,r2.w)"
+gdb_test "x" "shar.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shar.w @(0x12345678:32,er2.l)"
+gdb_test "x" "shar.w\t@0x1234(:16|)" \
+       "shar.w @0x1234:16"
+gdb_test "x" "shar.w\t@0x12345678(:32|)" \
+       "shar.w @0x12345678:32"
+gdb_test "x" "shar.l\ter1" \
+       "shar.l er1"
+gdb_test "x" "shar.l\t@er1" \
+       "shar.l @er1"
+gdb_test "x" "shar.l\t@\\(0xc(:2|),er1\\)" \
+       "shar.l @(0xc:2,er1)"
+gdb_test "x" "shar.l\t@er1\\+" \
+       "shar.l @er1+"
+gdb_test "x" "shar.l\t@-er1" \
+       "shar.l @-er1"
+gdb_test "x" "shar.l\t@\\+er1" \
+       "shar.l @+er1"
+gdb_test "x" "shar.l\t@er1-" \
+       "shar.l @er1-"
+gdb_test "x" "shar.l\t@\\(0x1234(:16|),er1\\)" \
+       "shar.l @(0x1234:16,er1)"
+gdb_test "x" "shar.l\t@\\(0x12345678(:32|),er1\\)" \
+       "shar.l @(0x12345678:32,er1)"
+gdb_test "x" "shar.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "shar.l @(0x1234:16,r2l.b)"
+gdb_test "x" "shar.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "shar.l @(0x1234:16,r2.w)"
+gdb_test "x" "shar.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "shar.l @(0x1234:16,er2.l)"
+gdb_test "x" "shar.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "shar.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "shar.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "shar.l @(0x12345678:32,r2.w)"
+gdb_test "x" "shar.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "shar.l @(0x12345678:32,er2.l)"
+gdb_test "x" "shar.l\t@0x1234(:16|)" \
+       "shar.l @0x1234:16"
+gdb_test "x" "shar.l\t@0x12345678(:32|)" \
+       "shar.l @0x12345678:32"
+gdb_test "x" "shar.b\t#2,r1h" \
+       "shar.b #2,r1h"
+gdb_test "x" "shar.b\t#2,@er1" \
+       "shar.b #2,@er1"
+gdb_test "x" "shar.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "shar.b #2,@(0x3:2,er1)"
+gdb_test "x" "shar.b\t#2,@er1\\+" \
+       "shar.b #2,@er1+"
+gdb_test "x" "shar.b\t#2,@-er1" \
+       "shar.b #2,@-er1"
+gdb_test "x" "shar.b\t#2,@\\+er1" \
+       "shar.b #2,@+er1"
+gdb_test "x" "shar.b\t#2,@er1-" \
+       "shar.b #2,@er1-"
+gdb_test "x" "shar.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shar.b #2,@(0x1234:16,er1)"
+gdb_test "x" "shar.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shar.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "shar.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shar.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shar.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shar.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shar.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shar.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shar.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shar.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shar.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shar.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shar.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shar.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shar.b\t#2,@0x12(:8|)" \
+       "shar.b #2,@0x12:8"
+gdb_test "x" "shar.b\t#2,@0x1234(:16|)" \
+       "shar.b #2,@0x1234:16"
+gdb_test "x" "shar.b\t#2,@0x12345678(:32|)" \
+       "shar.b #2,@0x12345678:32"
+gdb_test "x" "shar.w\t#2,r1" \
+       "shar.w #2,r1"
+gdb_test "x" "shar.w\t#2,@er1" \
+       "shar.w #2,@er1"
+gdb_test "x" "shar.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "shar.w #2,@(0x6:2,er1)"
+gdb_test "x" "shar.w\t#2,@er1\\+" \
+       "shar.w #2,@er1+"
+gdb_test "x" "shar.w\t#2,@-er1" \
+       "shar.w #2,@-er1"
+gdb_test "x" "shar.w\t#2,@\\+er1" \
+       "shar.w #2,@+er1"
+gdb_test "x" "shar.w\t#2,@er1-" \
+       "shar.w #2,@er1-"
+gdb_test "x" "shar.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shar.w #2,@(0x1234:16,er1)"
+gdb_test "x" "shar.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shar.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "shar.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shar.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shar.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shar.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shar.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shar.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shar.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shar.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shar.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shar.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shar.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shar.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shar.w\t#2,@0x1234(:16|)" \
+       "shar.w #2,@0x1234:16"
+gdb_test "x" "shar.w\t#2,@0x12345678(:32|)" \
+       "shar.w #2,@0x12345678:32"
+gdb_test "x" "shar.l\t#2,er1" \
+       "shar.l #2,er1"
+gdb_test "x" "shar.l\t#2,@er1" \
+       "shar.l #2,@er1"
+gdb_test "x" "shar.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "shar.l #2,@(0xc:2,er1)"
+gdb_test "x" "shar.l\t#2,@er1\\+" \
+       "shar.l #2,@er1+"
+gdb_test "x" "shar.l\t#2,@-er1" \
+       "shar.l #2,@-er1"
+gdb_test "x" "shar.l\t#2,@\\+er1" \
+       "shar.l #2,@+er1"
+gdb_test "x" "shar.l\t#2,@er1-" \
+       "shar.l #2,@er1-"
+gdb_test "x" "shar.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "shar.l #2,@(0x1234:16,er1)"
+gdb_test "x" "shar.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "shar.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "shar.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "shar.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "shar.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "shar.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "shar.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "shar.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "shar.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "shar.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "shar.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "shar.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "shar.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "shar.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "shar.l\t#2,@0x1234(:16|)" \
+       "shar.l #2,@0x1234:16"
+gdb_test "x" "shar.l\t#2,@0x12345678(:32|)" \
+       "shar.l #2,@0x12345678:32"
+gdb_test "x" "rotxl.b\tr1h" \
+       "rotxl.b r1h"
+gdb_test "x" "rotxl.b\t@er1" \
+       "rotxl.b @er1"
+gdb_test "x" "rotxl.b\t@\\(0x3(:2|),er1\\)" \
+       "rotxl.b @(0x3:2,er1)"
+gdb_test "x" "rotxl.b\t@er1\\+" \
+       "rotxl.b @er1+"
+gdb_test "x" "rotxl.b\t@-er1" \
+       "rotxl.b @-er1"
+gdb_test "x" "rotxl.b\t@\\+er1" \
+       "rotxl.b @+er1"
+gdb_test "x" "rotxl.b\t@er1-" \
+       "rotxl.b @er1-"
+gdb_test "x" "rotxl.b\t@\\(0x1234(:16|),er1\\)" \
+       "rotxl.b @(0x1234:16,er1)"
+gdb_test "x" "rotxl.b\t@\\(0x12345678(:32|),er1\\)" \
+       "rotxl.b @(0x12345678:32,er1)"
+gdb_test "x" "rotxl.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxl.b @(0x1234:16,r2l.b)"
+gdb_test "x" "rotxl.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotxl.b @(0x1234:16,r2.w)"
+gdb_test "x" "rotxl.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotxl.b @(0x1234:16,er2.l)"
+gdb_test "x" "rotxl.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxl.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxl.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxl.b @(0x12345678:32,r2.w)"
+gdb_test "x" "rotxl.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxl.b @(0x12345678:32,er2.l)"
+gdb_test "x" "rotxl.b\t@0x12(:8|)" \
+       "rotxl.b @0x12:8"
+gdb_test "x" "rotxl.b\t@0x1234(:16|)" \
+       "rotxl.b @0x1234:16"
+gdb_test "x" "rotxl.b\t@0x12345678(:32|)" \
+       "rotxl.b @0x12345678:32"
+gdb_test "x" "rotxl.w\tr1" \
+       "rotxl.w r1"
+gdb_test "x" "rotxl.w\t@er1" \
+       "rotxl.w @er1"
+gdb_test "x" "rotxl.w\t@\\(0x6(:2|),er1\\)" \
+       "rotxl.w @(0x6:2,er1)"
+gdb_test "x" "rotxl.w\t@er1\\+" \
+       "rotxl.w @er1+"
+gdb_test "x" "rotxl.w\t@-er1" \
+       "rotxl.w @-er1"
+gdb_test "x" "rotxl.w\t@\\+er1" \
+       "rotxl.w @+er1"
+gdb_test "x" "rotxl.w\t@er1-" \
+       "rotxl.w @er1-"
+gdb_test "x" "rotxl.w\t@\\(0x1234(:16|),er1\\)" \
+       "rotxl.w @(0x1234:16,er1)"
+gdb_test "x" "rotxl.w\t@\\(0x12345678(:32|),er1\\)" \
+       "rotxl.w @(0x12345678:32,er1)"
+gdb_test "x" "rotxl.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxl.w @(0x1234:16,r2l.b)"
+gdb_test "x" "rotxl.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotxl.w @(0x1234:16,r2.w)"
+gdb_test "x" "rotxl.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotxl.w @(0x1234:16,er2.l)"
+gdb_test "x" "rotxl.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxl.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxl.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxl.w @(0x12345678:32,r2.w)"
+gdb_test "x" "rotxl.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxl.w @(0x12345678:32,er2.l)"
+gdb_test "x" "rotxl.w\t@0x1234(:16|)" \
+       "rotxl.w @0x1234:16"
+gdb_test "x" "rotxl.w\t@0x12345678(:32|)" \
+       "rotxl.w @0x12345678:32"
+gdb_test "x" "rotxl.l\ter1" \
+       "rotxl.l er1"
+gdb_test "x" "rotxl.l\t@er1" \
+       "rotxl.l @er1"
+gdb_test "x" "rotxl.l\t@\\(0xc(:2|),er1\\)" \
+       "rotxl.l @(0xc:2,er1)"
+gdb_test "x" "rotxl.l\t@er1\\+" \
+       "rotxl.l @er1+"
+gdb_test "x" "rotxl.l\t@-er1" \
+       "rotxl.l @-er1"
+gdb_test "x" "rotxl.l\t@\\+er1" \
+       "rotxl.l @+er1"
+gdb_test "x" "rotxl.l\t@er1-" \
+       "rotxl.l @er1-"
+gdb_test "x" "rotxl.l\t@\\(0x1234(:16|),er1\\)" \
+       "rotxl.l @(0x1234:16,er1)"
+gdb_test "x" "rotxl.l\t@\\(0x12345678(:32|),er1\\)" \
+       "rotxl.l @(0x12345678:32,er1)"
+gdb_test "x" "rotxl.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxl.l @(0x1234:16,r2l.b)"
+gdb_test "x" "rotxl.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotxl.l @(0x1234:16,r2.w)"
+gdb_test "x" "rotxl.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotxl.l @(0x1234:16,er2.l)"
+gdb_test "x" "rotxl.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxl.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxl.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxl.l @(0x12345678:32,r2.w)"
+gdb_test "x" "rotxl.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxl.l @(0x12345678:32,er2.l)"
+gdb_test "x" "rotxl.l\t@0x1234(:16|)" \
+       "rotxl.l @0x1234:16"
+gdb_test "x" "rotxl.l\t@0x12345678(:32|)" \
+       "rotxl.l @0x12345678:32"
+gdb_test "x" "rotxl.b\t#2,r1h" \
+       "rotxl.b #2,r1h"
+gdb_test "x" "rotxl.b\t#2,@er1" \
+       "rotxl.b #2,@er1"
+gdb_test "x" "rotxl.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "rotxl.b #2,@(0x3:2,er1)"
+gdb_test "x" "rotxl.b\t#2,@er1\\+" \
+       "rotxl.b #2,@er1+"
+gdb_test "x" "rotxl.b\t#2,@-er1" \
+       "rotxl.b #2,@-er1"
+gdb_test "x" "rotxl.b\t#2,@\\+er1" \
+       "rotxl.b #2,@+er1"
+gdb_test "x" "rotxl.b\t#2,@er1-" \
+       "rotxl.b #2,@er1-"
+gdb_test "x" "rotxl.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotxl.b #2,@(0x1234:16,er1)"
+gdb_test "x" "rotxl.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotxl.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotxl.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxl.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotxl.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotxl.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotxl.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotxl.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotxl.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxl.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxl.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxl.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotxl.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxl.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotxl.b\t#2,@0x12(:8|)" \
+       "rotxl.b #2,@0x12:8"
+gdb_test "x" "rotxl.b\t#2,@0x1234(:16|)" \
+       "rotxl.b #2,@0x1234:16"
+gdb_test "x" "rotxl.b\t#2,@0x12345678(:32|)" \
+       "rotxl.b #2,@0x12345678:32"
+gdb_test "x" "rotxl.w\t#2,r1" \
+       "rotxl.w #2,r1"
+gdb_test "x" "rotxl.w\t#2,@er1" \
+       "rotxl.w #2,@er1"
+gdb_test "x" "rotxl.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "rotxl.w #2,@(0x6:2,er1)"
+gdb_test "x" "rotxl.w\t#2,@er1\\+" \
+       "rotxl.w #2,@er1+"
+gdb_test "x" "rotxl.w\t#2,@-er1" \
+       "rotxl.w #2,@-er1"
+gdb_test "x" "rotxl.w\t#2,@\\+er1" \
+       "rotxl.w #2,@+er1"
+gdb_test "x" "rotxl.w\t#2,@er1-" \
+       "rotxl.w #2,@er1-"
+gdb_test "x" "rotxl.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotxl.w #2,@(0x1234:16,er1)"
+gdb_test "x" "rotxl.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotxl.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotxl.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxl.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotxl.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotxl.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotxl.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotxl.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotxl.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxl.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxl.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxl.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotxl.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxl.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotxl.w\t#2,@0x1234(:16|)" \
+       "rotxl.w #2,@0x1234:16"
+gdb_test "x" "rotxl.w\t#2,@0x12345678(:32|)" \
+       "rotxl.w #2,@0x12345678:32"
+gdb_test "x" "rotxl.l\t#2,er1" \
+       "rotxl.l #2,er1"
+gdb_test "x" "rotxl.l\t#2,@er1" \
+       "rotxl.l #2,@er1"
+gdb_test "x" "rotxl.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "rotxl.l #2,@(0xc:2,er1)"
+gdb_test "x" "rotxl.l\t#2,@er1\\+" \
+       "rotxl.l #2,@er1+"
+gdb_test "x" "rotxl.l\t#2,@-er1" \
+       "rotxl.l #2,@-er1"
+gdb_test "x" "rotxl.l\t#2,@\\+er1" \
+       "rotxl.l #2,@+er1"
+gdb_test "x" "rotxl.l\t#2,@er1-" \
+       "rotxl.l #2,@er1-"
+gdb_test "x" "rotxl.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotxl.l #2,@(0x1234:16,er1)"
+gdb_test "x" "rotxl.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotxl.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotxl.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxl.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotxl.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotxl.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotxl.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotxl.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotxl.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxl.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxl.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxl.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotxl.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxl.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotxl.l\t#2,@0x1234(:16|)" \
+       "rotxl.l #2,@0x1234:16"
+gdb_test "x" "rotxl.l\t#2,@0x12345678(:32|)" \
+       "rotxl.l #2,@0x12345678:32"
+gdb_test "x" "rotxr.b\tr1h" \
+       "rotxr.b r1h"
+gdb_test "x" "rotxr.b\t@er1" \
+       "rotxr.b @er1"
+gdb_test "x" "rotxr.b\t@\\(0x3(:2|),er1\\)" \
+       "rotxr.b @(0x3:2,er1)"
+gdb_test "x" "rotxr.b\t@er1\\+" \
+       "rotxr.b @er1+"
+gdb_test "x" "rotxr.b\t@-er1" \
+       "rotxr.b @-er1"
+gdb_test "x" "rotxr.b\t@\\+er1" \
+       "rotxr.b @+er1"
+gdb_test "x" "rotxr.b\t@er1-" \
+       "rotxr.b @er1-"
+gdb_test "x" "rotxr.b\t@\\(0x1234(:16|),er1\\)" \
+       "rotxr.b @(0x1234:16,er1)"
+gdb_test "x" "rotxr.b\t@\\(0x12345678(:32|),er1\\)" \
+       "rotxr.b @(0x12345678:32,er1)"
+gdb_test "x" "rotxr.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxr.b @(0x1234:16,r2l.b)"
+gdb_test "x" "rotxr.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotxr.b @(0x1234:16,r2.w)"
+gdb_test "x" "rotxr.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotxr.b @(0x1234:16,er2.l)"
+gdb_test "x" "rotxr.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxr.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxr.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxr.b @(0x12345678:32,r2.w)"
+gdb_test "x" "rotxr.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxr.b @(0x12345678:32,er2.l)"
+gdb_test "x" "rotxr.b\t@0x12(:8|)" \
+       "rotxr.b @0x12:8"
+gdb_test "x" "rotxr.b\t@0x1234(:16|)" \
+       "rotxr.b @0x1234:16"
+gdb_test "x" "rotxr.b\t@0x12345678(:32|)" \
+       "rotxr.b @0x12345678:32"
+gdb_test "x" "rotxr.w\tr1" \
+       "rotxr.w r1"
+gdb_test "x" "rotxr.w\t@er1" \
+       "rotxr.w @er1"
+gdb_test "x" "rotxr.w\t@\\(0x6(:2|),er1\\)" \
+       "rotxr.w @(0x6:2,er1)"
+gdb_test "x" "rotxr.w\t@er1\\+" \
+       "rotxr.w @er1+"
+gdb_test "x" "rotxr.w\t@-er1" \
+       "rotxr.w @-er1"
+gdb_test "x" "rotxr.w\t@\\+er1" \
+       "rotxr.w @+er1"
+gdb_test "x" "rotxr.w\t@er1-" \
+       "rotxr.w @er1-"
+gdb_test "x" "rotxr.w\t@\\(0x1234(:16|),er1\\)" \
+       "rotxr.w @(0x1234:16,er1)"
+gdb_test "x" "rotxr.w\t@\\(0x12345678(:32|),er1\\)" \
+       "rotxr.w @(0x12345678:32,er1)"
+gdb_test "x" "rotxr.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxr.w @(0x1234:16,r2l.b)"
+gdb_test "x" "rotxr.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotxr.w @(0x1234:16,r2.w)"
+gdb_test "x" "rotxr.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotxr.w @(0x1234:16,er2.l)"
+gdb_test "x" "rotxr.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxr.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxr.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxr.w @(0x12345678:32,r2.w)"
+gdb_test "x" "rotxr.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxr.w @(0x12345678:32,er2.l)"
+gdb_test "x" "rotxr.w\t@0x1234(:16|)" \
+       "rotxr.w @0x1234:16"
+gdb_test "x" "rotxr.w\t@0x12345678(:32|)" \
+       "rotxr.w @0x12345678:32"
+gdb_test "x" "rotxr.l\ter1" \
+       "rotxr.l er1"
+gdb_test "x" "rotxr.l\t@er1" \
+       "rotxr.l @er1"
+gdb_test "x" "rotxr.l\t@\\(0xc(:2|),er1\\)" \
+       "rotxr.l @(0xc:2,er1)"
+gdb_test "x" "rotxr.l\t@er1\\+" \
+       "rotxr.l @er1+"
+gdb_test "x" "rotxr.l\t@-er1" \
+       "rotxr.l @-er1"
+gdb_test "x" "rotxr.l\t@\\+er1" \
+       "rotxr.l @+er1"
+gdb_test "x" "rotxr.l\t@er1-" \
+       "rotxr.l @er1-"
+gdb_test "x" "rotxr.l\t@\\(0x1234(:16|),er1\\)" \
+       "rotxr.l @(0x1234:16,er1)"
+gdb_test "x" "rotxr.l\t@\\(0x12345678(:32|),er1\\)" \
+       "rotxr.l @(0x12345678:32,er1)"
+gdb_test "x" "rotxr.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxr.l @(0x1234:16,r2l.b)"
+gdb_test "x" "rotxr.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotxr.l @(0x1234:16,r2.w)"
+gdb_test "x" "rotxr.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotxr.l @(0x1234:16,er2.l)"
+gdb_test "x" "rotxr.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxr.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxr.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxr.l @(0x12345678:32,r2.w)"
+gdb_test "x" "rotxr.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxr.l @(0x12345678:32,er2.l)"
+gdb_test "x" "rotxr.l\t@0x1234(:16|)" \
+       "rotxr.l @0x1234:16"
+gdb_test "x" "rotxr.l\t@0x12345678(:32|)" \
+       "rotxr.l @0x12345678:32"
+gdb_test "x" "rotxr.b\t#2,r1h" \
+       "rotxr.b #2,r1h"
+gdb_test "x" "rotxr.b\t#2,@er1" \
+       "rotxr.b #2,@er1"
+gdb_test "x" "rotxr.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "rotxr.b #2,@(0x3:2,er1)"
+gdb_test "x" "rotxr.b\t#2,@er1\\+" \
+       "rotxr.b #2,@er1+"
+gdb_test "x" "rotxr.b\t#2,@-er1" \
+       "rotxr.b #2,@-er1"
+gdb_test "x" "rotxr.b\t#2,@\\+er1" \
+       "rotxr.b #2,@+er1"
+gdb_test "x" "rotxr.b\t#2,@er1-" \
+       "rotxr.b #2,@er1-"
+gdb_test "x" "rotxr.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotxr.b #2,@(0x1234:16,er1)"
+gdb_test "x" "rotxr.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotxr.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotxr.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxr.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotxr.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotxr.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotxr.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotxr.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotxr.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxr.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxr.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxr.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotxr.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxr.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotxr.b\t#2,@0x12(:8|)" \
+       "rotxr.b #2,@0x12:8"
+gdb_test "x" "rotxr.b\t#2,@0x1234(:16|)" \
+       "rotxr.b #2,@0x1234:16"
+gdb_test "x" "rotxr.b\t#2,@0x12345678(:32|)" \
+       "rotxr.b #2,@0x12345678:32"
+gdb_test "x" "rotxr.w\t#2,r1" \
+       "rotxr.w #2,r1"
+gdb_test "x" "rotxr.w\t#2,@er1" \
+       "rotxr.w #2,@er1"
+gdb_test "x" "rotxr.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "rotxr.w #2,@(0x6:2,er1)"
+gdb_test "x" "rotxr.w\t#2,@er1\\+" \
+       "rotxr.w #2,@er1+"
+gdb_test "x" "rotxr.w\t#2,@-er1" \
+       "rotxr.w #2,@-er1"
+gdb_test "x" "rotxr.w\t#2,@\\+er1" \
+       "rotxr.w #2,@+er1"
+gdb_test "x" "rotxr.w\t#2,@er1-" \
+       "rotxr.w #2,@er1-"
+gdb_test "x" "rotxr.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotxr.w #2,@(0x1234:16,er1)"
+gdb_test "x" "rotxr.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotxr.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotxr.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxr.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotxr.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotxr.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotxr.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotxr.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotxr.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxr.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxr.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxr.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotxr.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxr.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotxr.w\t#2,@0x1234(:16|)" \
+       "rotxr.w #2,@0x1234:16"
+gdb_test "x" "rotxr.w\t#2,@0x12345678(:32|)" \
+       "rotxr.w #2,@0x12345678:32"
+gdb_test "x" "rotxr.l\t#2,er1" \
+       "rotxr.l #2,er1"
+gdb_test "x" "rotxr.l\t#2,@er1" \
+       "rotxr.l #2,@er1"
+gdb_test "x" "rotxr.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "rotxr.l #2,@(0xc:2,er1)"
+gdb_test "x" "rotxr.l\t#2,@er1\\+" \
+       "rotxr.l #2,@er1+"
+gdb_test "x" "rotxr.l\t#2,@-er1" \
+       "rotxr.l #2,@-er1"
+gdb_test "x" "rotxr.l\t#2,@\\+er1" \
+       "rotxr.l #2,@+er1"
+gdb_test "x" "rotxr.l\t#2,@er1-" \
+       "rotxr.l #2,@er1-"
+gdb_test "x" "rotxr.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotxr.l #2,@(0x1234:16,er1)"
+gdb_test "x" "rotxr.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotxr.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotxr.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotxr.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotxr.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotxr.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotxr.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotxr.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotxr.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotxr.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotxr.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotxr.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotxr.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotxr.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotxr.l\t#2,@0x1234(:16|)" \
+       "rotxr.l #2,@0x1234:16"
+gdb_test "x" "rotxr.l\t#2,@0x12345678(:32|)" \
+       "rotxr.l #2,@0x12345678:32"
+gdb_test "x" "rotl.b\tr1h" \
+       "rotl.b r1h"
+gdb_test "x" "rotl.b\t@er1" \
+       "rotl.b @er1"
+gdb_test "x" "rotl.b\t@\\(0x3(:2|),er1\\)" \
+       "rotl.b @(0x3:2,er1)"
+gdb_test "x" "rotl.b\t@er1\\+" \
+       "rotl.b @er1+"
+gdb_test "x" "rotl.b\t@-er1" \
+       "rotl.b @-er1"
+gdb_test "x" "rotl.b\t@\\+er1" \
+       "rotl.b @+er1"
+gdb_test "x" "rotl.b\t@er1-" \
+       "rotl.b @er1-"
+gdb_test "x" "rotl.b\t@\\(0x1234(:16|),er1\\)" \
+       "rotl.b @(0x1234:16,er1)"
+gdb_test "x" "rotl.b\t@\\(0x12345678(:32|),er1\\)" \
+       "rotl.b @(0x12345678:32,er1)"
+gdb_test "x" "rotl.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotl.b @(0x1234:16,r2l.b)"
+gdb_test "x" "rotl.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotl.b @(0x1234:16,r2.w)"
+gdb_test "x" "rotl.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotl.b @(0x1234:16,er2.l)"
+gdb_test "x" "rotl.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotl.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotl.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotl.b @(0x12345678:32,r2.w)"
+gdb_test "x" "rotl.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotl.b @(0x12345678:32,er2.l)"
+gdb_test "x" "rotl.b\t@0x12(:8|)" \
+       "rotl.b @0x12:8"
+gdb_test "x" "rotl.b\t@0x1234(:16|)" \
+       "rotl.b @0x1234:16"
+gdb_test "x" "rotl.b\t@0x12345678(:32|)" \
+       "rotl.b @0x12345678:32"
+gdb_test "x" "rotl.w\tr1" \
+       "rotl.w r1"
+gdb_test "x" "rotl.w\t@er1" \
+       "rotl.w @er1"
+gdb_test "x" "rotl.w\t@\\(0x6(:2|),er1\\)" \
+       "rotl.w @(0x6:2,er1)"
+gdb_test "x" "rotl.w\t@-er1" \
+       "rotl.w @-er1"
+gdb_test "x" "rotl.w\t@er1\\+" \
+       "rotl.w @er1+"
+gdb_test "x" "rotl.w\t@er1-" \
+       "rotl.w @er1-"
+gdb_test "x" "rotl.w\t@\\+er1" \
+       "rotl.w @+er1"
+gdb_test "x" "rotl.w\t@\\(0x1234(:16|),er1\\)" \
+       "rotl.w @(0x1234:16,er1)"
+gdb_test "x" "rotl.w\t@\\(0x12345678(:32|),er1\\)" \
+       "rotl.w @(0x12345678:32,er1)"
+gdb_test "x" "rotl.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotl.w @(0x1234:16,r2l.b)"
+gdb_test "x" "rotl.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotl.w @(0x1234:16,r2.w)"
+gdb_test "x" "rotl.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotl.w @(0x1234:16,er2.l)"
+gdb_test "x" "rotl.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotl.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotl.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotl.w @(0x12345678:32,r2.w)"
+gdb_test "x" "rotl.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotl.w @(0x12345678:32,er2.l)"
+gdb_test "x" "rotl.w\t@0x1234(:16|)" \
+       "rotl.w @0x1234:16"
+gdb_test "x" "rotl.w\t@0x12345678(:32|)" \
+       "rotl.w @0x12345678:32"
+gdb_test "x" "rotl.l\ter1" \
+       "rotl.l er1"
+gdb_test "x" "rotl.l\t@er1" \
+       "rotl.l @er1"
+gdb_test "x" "rotl.l\t@\\(0xc(:2|),er1\\)" \
+       "rotl.l @(0xc:2,er1)"
+gdb_test "x" "rotl.l\t@er1\\+" \
+       "rotl.l @er1+"
+gdb_test "x" "rotl.l\t@-er1" \
+       "rotl.l @-er1"
+gdb_test "x" "rotl.l\t@\\+er1" \
+       "rotl.l @+er1"
+gdb_test "x" "rotl.l\t@er1-" \
+       "rotl.l @er1-"
+gdb_test "x" "rotl.l\t@\\(0x1234(:16|),er1\\)" \
+       "rotl.l @(0x1234:16,er1)"
+gdb_test "x" "rotl.l\t@\\(0x12345678(:32|),er1\\)" \
+       "rotl.l @(0x12345678:32,er1)"
+gdb_test "x" "rotl.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotl.l @(0x1234:16,r2l.b)"
+gdb_test "x" "rotl.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotl.l @(0x1234:16,r2.w)"
+gdb_test "x" "rotl.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotl.l @(0x1234:16,er2.l)"
+gdb_test "x" "rotl.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotl.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotl.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotl.l @(0x12345678:32,r2.w)"
+gdb_test "x" "rotl.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotl.l @(0x12345678:32,er2.l)"
+gdb_test "x" "rotl.l\t@0x1234(:16|)" \
+       "rotl.l @0x1234:16"
+gdb_test "x" "rotl.l\t@0x12345678(:32|)" \
+       "rotl.l @0x12345678:32"
+gdb_test "x" "rotl.b\t#2,r1h" \
+       "rotl.b #2,r1h"
+gdb_test "x" "rotl.b\t#2,@er1" \
+       "rotl.b #2,@er1"
+gdb_test "x" "rotl.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "rotl.b #2,@(0x3:2,er1)"
+gdb_test "x" "rotl.b\t#2,@er1\\+" \
+       "rotl.b #2,@er1+"
+gdb_test "x" "rotl.b\t#2,@-er1" \
+       "rotl.b #2,@-er1"
+gdb_test "x" "rotl.b\t#2,@\\+er1" \
+       "rotl.b #2,@+er1"
+gdb_test "x" "rotl.b\t#2,@er1-" \
+       "rotl.b #2,@er1-"
+gdb_test "x" "rotl.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotl.b #2,@(0x1234:16,er1)"
+gdb_test "x" "rotl.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotl.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotl.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotl.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotl.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotl.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotl.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotl.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotl.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotl.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotl.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotl.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotl.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotl.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotl.b\t#2,@0x12(:8|)" \
+       "rotl.b #2,@0x12:8"
+gdb_test "x" "rotl.b\t#2,@0x1234(:16|)" \
+       "rotl.b #2,@0x1234:16"
+gdb_test "x" "rotl.b\t#2,@0x12345678(:32|)" \
+       "rotl.b #2,@0x12345678:32"
+gdb_test "x" "rotl.w\t#2,r1" \
+       "rotl.w #2,r1"
+gdb_test "x" "rotl.w\t#2,@er1" \
+       "rotl.w #2,@er1"
+gdb_test "x" "rotl.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "rotl.w #2,@(0x6:2,er1)"
+gdb_test "x" "rotl.w\t#2,@er1\\+" \
+       "rotl.w #2,@er1+"
+gdb_test "x" "rotl.w\t#2,@-er1" \
+       "rotl.w #2,@-er1"
+gdb_test "x" "rotl.w\t#2,@\\+er1" \
+       "rotl.w #2,@+er1"
+gdb_test "x" "rotl.w\t#2,@er1-" \
+       "rotl.w #2,@er1-"
+gdb_test "x" "rotl.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotl.w #2,@(0x1234:16,er1)"
+gdb_test "x" "rotl.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotl.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotl.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotl.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotl.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotl.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotl.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotl.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotl.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotl.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotl.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotl.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotl.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotl.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotl.w\t#2,@0x1234(:16|)" \
+       "rotl.w #2,@0x1234:16"
+gdb_test "x" "rotl.w\t#2,@0x12345678(:32|)" \
+       "rotl.w #2,@0x12345678:32"
+gdb_test "x" "rotl.l\t#2,er1" \
+       "rotl.l #2,er1"
+gdb_test "x" "rotl.l\t#2,@er1" \
+       "rotl.l #2,@er1"
+gdb_test "x" "rotl.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "rotl.l #2,@(0xc:2,er1)"
+gdb_test "x" "rotl.l\t#2,@er1\\+" \
+       "rotl.l #2,@er1+"
+gdb_test "x" "rotl.l\t#2,@-er1" \
+       "rotl.l #2,@-er1"
+gdb_test "x" "rotl.l\t#2,@\\+er1" \
+       "rotl.l #2,@+er1"
+gdb_test "x" "rotl.l\t#2,@er1-" \
+       "rotl.l #2,@er1-"
+gdb_test "x" "rotl.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotl.l #2,@(0x1234:16,er1)"
+gdb_test "x" "rotl.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotl.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotl.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotl.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotl.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotl.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotl.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotl.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotl.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotl.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotl.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotl.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotl.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotl.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotl.l\t#2,@0x1234(:16|)" \
+       "rotl.l #2,@0x1234:16"
+gdb_test "x" "rotl.l\t#2,@0x12345678(:32|)" \
+       "rotl.l #2,@0x12345678:32"
+gdb_test "x" "rotr.b\tr1h" \
+       "rotr.b r1h"
+gdb_test "x" "rotr.b\t@er1" \
+       "rotr.b @er1"
+gdb_test "x" "rotr.b\t@\\(0x3(:2|),er1\\)" \
+       "rotr.b @(0x3:2,er1)"
+gdb_test "x" "rotr.b\t@er1\\+" \
+       "rotr.b @er1+"
+gdb_test "x" "rotr.b\t@-er1" \
+       "rotr.b @-er1"
+gdb_test "x" "rotr.b\t@\\+er1" \
+       "rotr.b @+er1"
+gdb_test "x" "rotr.b\t@er1-" \
+       "rotr.b @er1-"
+gdb_test "x" "rotr.b\t@\\(0x1234(:16|),er1\\)" \
+       "rotr.b @(0x1234:16,er1)"
+gdb_test "x" "rotr.b\t@\\(0x12345678(:32|),er1\\)" \
+       "rotr.b @(0x12345678:32,er1)"
+gdb_test "x" "rotr.b\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotr.b @(0x1234:16,r2l.b)"
+gdb_test "x" "rotr.b\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotr.b @(0x1234:16,r2.w)"
+gdb_test "x" "rotr.b\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotr.b @(0x1234:16,er2.l)"
+gdb_test "x" "rotr.b\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotr.b @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotr.b\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotr.b @(0x12345678:32,r2.w)"
+gdb_test "x" "rotr.b\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotr.b @(0x12345678:32,er2.l)"
+gdb_test "x" "rotr.b\t@0x12(:8|)" \
+       "rotr.b @0x12:8"
+gdb_test "x" "rotr.b\t@0x1234(:16|)" \
+       "rotr.b @0x1234:16"
+gdb_test "x" "rotr.b\t@0x12345678(:32|)" \
+       "rotr.b @0x12345678:32"
+gdb_test "x" "rotr.w\tr1" \
+       "rotr.w r1"
+gdb_test "x" "rotr.w\t@er1" \
+       "rotr.w @er1"
+gdb_test "x" "rotr.w\t@\\(0x6(:2|),er1\\)" \
+       "rotr.w @(0x6:2,er1)"
+gdb_test "x" "rotr.w\t@-er1" \
+       "rotr.w @-er1"
+gdb_test "x" "rotr.w\t@er1\\+" \
+       "rotr.w @er1+"
+gdb_test "x" "rotr.w\t@er1-" \
+       "rotr.w @er1-"
+gdb_test "x" "rotr.w\t@\\+er1" \
+       "rotr.w @+er1"
+gdb_test "x" "rotr.w\t@\\(0x1234(:16|),er1\\)" \
+       "rotr.w @(0x1234:16,er1)"
+gdb_test "x" "rotr.w\t@\\(0x12345678(:32|),er1\\)" \
+       "rotr.w @(0x12345678:32,er1)"
+gdb_test "x" "rotr.w\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotr.w @(0x1234:16,r2l.b)"
+gdb_test "x" "rotr.w\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotr.w @(0x1234:16,r2.w)"
+gdb_test "x" "rotr.w\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotr.w @(0x1234:16,er2.l)"
+gdb_test "x" "rotr.w\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotr.w @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotr.w\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotr.w @(0x12345678:32,r2.w)"
+gdb_test "x" "rotr.w\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotr.w @(0x12345678:32,er2.l)"
+gdb_test "x" "rotr.w\t@0x1234(:16|)" \
+       "rotr.w @0x1234:16"
+gdb_test "x" "rotr.w\t@0x12345678(:32|)" \
+       "rotr.w @0x12345678:32"
+gdb_test "x" "rotr.l\ter1" \
+       "rotr.l er1"
+gdb_test "x" "rotr.l\t@er1" \
+       "rotr.l @er1"
+gdb_test "x" "rotr.l\t@\\(0xc(:2|),er1\\)" \
+       "rotr.l @(0xc:2,er1)"
+gdb_test "x" "rotr.l\t@er1\\+" \
+       "rotr.l @er1+"
+gdb_test "x" "rotr.l\t@-er1" \
+       "rotr.l @-er1"
+gdb_test "x" "rotr.l\t@\\+er1" \
+       "rotr.l @+er1"
+gdb_test "x" "rotr.l\t@er1-" \
+       "rotr.l @er1-"
+gdb_test "x" "rotr.l\t@\\(0x1234(:16|),er1\\)" \
+       "rotr.l @(0x1234:16,er1)"
+gdb_test "x" "rotr.l\t@\\(0x12345678(:32|),er1\\)" \
+       "rotr.l @(0x12345678:32,er1)"
+gdb_test "x" "rotr.l\t@\\(0x1234(:16|),r2l.b\\)" \
+       "rotr.l @(0x1234:16,r2l.b)"
+gdb_test "x" "rotr.l\t@\\(0x1234(:16|),r2.w\\)" \
+       "rotr.l @(0x1234:16,r2.w)"
+gdb_test "x" "rotr.l\t@\\(0x1234(:16|),er2.l\\)" \
+       "rotr.l @(0x1234:16,er2.l)"
+gdb_test "x" "rotr.l\t@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotr.l @(0x12345678:32,r2l.b)"
+gdb_test "x" "rotr.l\t@\\(0x12345678(:32|),r2.w\\)" \
+       "rotr.l @(0x12345678:32,r2.w)"
+gdb_test "x" "rotr.l\t@\\(0x12345678(:32|),er2.l\\)" \
+       "rotr.l @(0x12345678:32,er2.l)"
+gdb_test "x" "rotr.l\t@0x1234(:16|)" \
+       "rotr.l @0x1234:16"
+gdb_test "x" "rotr.l\t@0x12345678(:32|)" \
+       "rotr.l @0x12345678:32"
+gdb_test "x" "rotr.b\t#2,r1h" \
+       "rotr.b #2,r1h"
+gdb_test "x" "rotr.b\t#2,@er1" \
+       "rotr.b #2,@er1"
+gdb_test "x" "rotr.b\t#2,@\\(0x3(:2|),er1\\)" \
+       "rotr.b #2,@(0x3:2,er1)"
+gdb_test "x" "rotr.b\t#2,@er1\\+" \
+       "rotr.b #2,@er1+"
+gdb_test "x" "rotr.b\t#2,@-er1" \
+       "rotr.b #2,@-er1"
+gdb_test "x" "rotr.b\t#2,@\\+er1" \
+       "rotr.b #2,@+er1"
+gdb_test "x" "rotr.b\t#2,@er1-" \
+       "rotr.b #2,@er1-"
+gdb_test "x" "rotr.b\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotr.b #2,@(0x1234:16,er1)"
+gdb_test "x" "rotr.b\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotr.b #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotr.b\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotr.b #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotr.b\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotr.b #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotr.b\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotr.b #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotr.b\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotr.b #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotr.b\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotr.b #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotr.b\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotr.b #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotr.b\t#2,@0x12(:8|)" \
+       "rotr.b #2,@0x12:8"
+gdb_test "x" "rotr.b\t#2,@0x1234(:16|)" \
+       "rotr.b #2,@0x1234:16"
+gdb_test "x" "rotr.b\t#2,@0x12345678(:32|)" \
+       "rotr.b #2,@0x12345678:32"
+gdb_test "x" "rotr.w\t#2,r1" \
+       "rotr.w #2,r1"
+gdb_test "x" "rotr.w\t#2,@er1" \
+       "rotr.w #2,@er1"
+gdb_test "x" "rotr.w\t#2,@\\(0x6(:2|),er1\\)" \
+       "rotr.w #2,@(0x6:2,er1)"
+gdb_test "x" "rotr.w\t#2,@er1\\+" \
+       "rotr.w #2,@er1+"
+gdb_test "x" "rotr.w\t#2,@-er1" \
+       "rotr.w #2,@-er1"
+gdb_test "x" "rotr.w\t#2,@\\+er1" \
+       "rotr.w #2,@+er1"
+gdb_test "x" "rotr.w\t#2,@er1-" \
+       "rotr.w #2,@er1-"
+gdb_test "x" "rotr.w\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotr.w #2,@(0x1234:16,er1)"
+gdb_test "x" "rotr.w\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotr.w #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotr.w\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotr.w #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotr.w\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotr.w #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotr.w\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotr.w #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotr.w\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotr.w #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotr.w\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotr.w #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotr.w\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotr.w #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotr.w\t#2,@0x1234(:16|)" \
+       "rotr.w #2,@0x1234:16"
+gdb_test "x" "rotr.w\t#2,@0x12345678(:32|)" \
+       "rotr.w #2,@0x12345678:32"
+gdb_test "x" "rotr.l\t#2,er1" \
+       "rotr.l #2,er1"
+gdb_test "x" "rotr.l\t#2,@er1" \
+       "rotr.l #2,@er1"
+gdb_test "x" "rotr.l\t#2,@\\(0xc(:2|),er1\\)" \
+       "rotr.l #2,@(0xc:2,er1)"
+gdb_test "x" "rotr.l\t#2,@er1\\+" \
+       "rotr.l #2,@er1+"
+gdb_test "x" "rotr.l\t#2,@-er1" \
+       "rotr.l #2,@-er1"
+gdb_test "x" "rotr.l\t#2,@\\+er1" \
+       "rotr.l #2,@+er1"
+gdb_test "x" "rotr.l\t#2,@er1-" \
+       "rotr.l #2,@er1-"
+gdb_test "x" "rotr.l\t#2,@\\(0x1234(:16|),er1\\)" \
+       "rotr.l #2,@(0x1234:16,er1)"
+gdb_test "x" "rotr.l\t#2,@\\(0x12345678(:32|),er1\\)" \
+       "rotr.l #2,@(0x12345678:32,er1)"
+gdb_test "x" "rotr.l\t#2,@\\(0x1234(:16|),r2l.b\\)" \
+       "rotr.l #2,@(0x1234:16,r2l.b)"
+gdb_test "x" "rotr.l\t#2,@\\(0x1234(:16|),r2.w\\)" \
+       "rotr.l #2,@(0x1234:16,r2.w)"
+gdb_test "x" "rotr.l\t#2,@\\(0x1234(:16|),er2.l\\)" \
+       "rotr.l #2,@(0x1234:16,er2.l)"
+gdb_test "x" "rotr.l\t#2,@\\(0x12345678(:32|),r2l.b\\)" \
+       "rotr.l #2,@(0x12345678:32,r2l.b)"
+gdb_test "x" "rotr.l\t#2,@\\(0x12345678(:32|),r2.w\\)" \
+       "rotr.l #2,@(0x12345678:32,r2.w)"
+gdb_test "x" "rotr.l\t#2,@\\(0x12345678(:32|),er2.l\\)" \
+       "rotr.l #2,@(0x12345678:32,er2.l)"
+gdb_test "x" "rotr.l\t#2,@0x1234(:16|)" \
+       "rotr.l #2,@0x1234:16"
+gdb_test "x" "rotr.l\t#2,@0x12345678(:32|)" \
+       "rotr.l #2,@0x12345678:32"
diff --git a/gdb/testsuite/gdb.disasm/t11_logs.s b/gdb/testsuite/gdb.disasm/t11_logs.s
new file mode 100644 (file)
index 0000000..7782754
--- /dev/null
@@ -0,0 +1,1177 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;log_sft\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    not.b r1h                 ;1701\r
+    not.b @er1               ;7d101700\r
+    not.b @(0x3:2,er1)         ;017768181700\r
+    not.b @er1+              ;01746c181700\r
+    not.b @-er1              ;01776c181700\r
+    not.b @+er1              ;01756c181700\r
+    not.b @er1-              ;01766c181700\r
+    not.b @(0x1234:16,er1)        ;01746e1812341700\r
+    not.b @(0x12345678:32,er1)        ;78146a28123456781700\r
+    not.b @(0x1234:16,r2l.b)      ;01756e2812341700\r
+    not.b @(0x1234:16,r2.w)      ;01766e2812341700\r
+    not.b @(0x1234:16,er2.l)      ;01776e2812341700\r
+    not.b @(0x12345678:32,r2l.b)      ;78256a28123456781700\r
+    not.b @(0x12345678:32,r2.w)      ;78266a28123456781700\r
+    not.b @(0x12345678:32,er2.l)      ;78276a28123456781700\r
+    not.b @0xffffff12:8              ;7f121700\r
+    not.b @0x1234:16             ;6a1812341700\r
+    not.b @0x12345678:32             ;6a38123456781700\r
+\r
+    not.w r1                 ;1711\r
+    not.w @er1               ;7d901710\r
+    not.w @(0x6:2,er1)      ;015769181710\r
+    not.w @er1+              ;01546d181710\r
+    not.w @-er1              ;01576d181710\r
+    not.w @+er1              ;01556d181710\r
+    not.w @er1-              ;01566d181710\r
+    not.w @(0x1234:16,er1)        ;01546f1812341710\r
+    not.w @(0x12345678:32,er1)        ;78146b28123456781710\r
+    not.w @(0x1234:16,r2l.b)      ;01556f2812341710\r
+    not.w @(0x1234:16,r2.w)      ;01566f2812341710\r
+    not.w @(0x1234:16,er2.l)      ;01576f2812341710\r
+    not.w @(0x12345678:32,r2l.b)      ;78256b28123456781710\r
+    not.w @(0x12345678:32,r2.w)      ;78266b28123456781710\r
+    not.w @(0x12345678:32,er2.l)      ;78276b28123456781710\r
+    not.w @0x1234:16             ;6b1812341710\r
+    not.w @0x12345678:32             ;6b38123456781710\r
+\r
+    not.l er1                 ;1731\r
+    not.l @er1               ;010469181730\r
+    not.l @(0xc:2,er1)      ;010769181730\r
+    not.l @er1+              ;01046d181730\r
+    not.l @-er1              ;01076d181730\r
+    not.l @+er1              ;01056d181730\r
+    not.l @er1-              ;01066d181730\r
+    not.l @(0x1234:16,er1)        ;01046f1812341730\r
+    not.l @(0x12345678:32,er1)        ;78946b28123456781730\r
+    not.l @(0x1234:16,r2l.b)      ;01056f2812341730\r
+    not.l @(0x1234:16,r2.w)      ;01066f2812341730\r
+    not.l @(0x1234:16,er2.l)      ;01076f2812341730\r
+    not.l @(0x12345678:32,r2l.b)      ;78a56b28123456781730\r
+    not.l @(0x12345678:32,r2.w)      ;78a66b28123456781730\r
+    not.l @(0x12345678:32,er2.l)      ;78a76b28123456781730\r
+    not.l @0x1234:16             ;01046b0812341730\r
+    not.l @0x12345678:32             ;01046b28123456781730\r
+\r
+    shll.b r1h                ;1001\r
+    shll.b @er1              ;7d101000\r
+    shll.b @(0x3:2,er1)        ;017768181000\r
+    shll.b @er1+             ;01746c181000\r
+    shll.b @-er1             ;01776c181000\r
+    shll.b @+er1             ;01756c181000\r
+    shll.b @er1-             ;01766c181000\r
+    shll.b @(0x1234:16,er1)       ;01746e1812341000\r
+    shll.b @(0x12345678:32,er1)       ;78146a28123456781000\r
+    shll.b @(0x1234:16,r2l.b)     ;01756e2812341000\r
+    shll.b @(0x1234:16,r2.w)     ;01766e2812341000\r
+    shll.b @(0x1234:16,er2.l)     ;01776e2812341000\r
+    shll.b @(0x12345678:32,r2l.b)     ;78256a28123456781000\r
+    shll.b @(0x12345678:32,r2.w)     ;78266a28123456781000\r
+    shll.b @(0x12345678:32,er2.l)     ;78276a28123456781000\r
+    shll.b @0xffffff12:8             ;7f121000\r
+    shll.b @0x1234:16            ;6a1812341000\r
+    shll.b @0x12345678:32            ;6a38123456781000\r
+\r
+    shll.w r1                ;1011\r
+    shll.w @er1              ;7d901010\r
+    shll.w @(0x6:2,er1)     ;015769181010\r
+    shll.w @er1+             ;01546d181010\r
+    shll.w @-er1             ;01576d181010\r
+    shll.w @+er1             ;01556d181010\r
+    shll.w @er1-             ;01566d181010\r
+    shll.w @(0x1234:16,er1)       ;01546f1812341010\r
+    shll.w @(0x12345678:32,er1)       ;78146b28123456781010\r
+    shll.w @(0x1234:16,r2l.b)     ;01556f2812341010\r
+    shll.w @(0x1234:16,r2.w)     ;01566f2812341010\r
+    shll.w @(0x1234:16,er2.l)     ;01576f2812341010\r
+    shll.w @(0x12345678:32,r2l.b)     ;78256b28123456781010\r
+    shll.w @(0x12345678:32,r2.w)     ;78266b28123456781010\r
+    shll.w @(0x12345678:32,er2.l)     ;78276b28123456781010\r
+    shll.w @0x1234:16            ;6b1812341010\r
+    shll.w @0x12345678:32            ;6b38123456781010\r
+\r
+    shll.l er1                ;1031\r
+    shll.l @er1              ;010469181030\r
+    shll.l @(0xc:2,er1)     ;010769181030\r
+    shll.l @er1+             ;01046d181030\r
+    shll.l @-er1             ;01076d181030\r
+    shll.l @+er1             ;01056d181030\r
+    shll.l @er1-             ;01066d181030\r
+    shll.l @(0x1234:16,er1)       ;01046f1812341030\r
+    shll.l @(0x12345678:32,er1)       ;78946b28123456781030\r
+    shll.l @(0x1234:16,r2l.b)     ;01056f2812341030\r
+    shll.l @(0x1234:16,r2.w)     ;01066f2812341030\r
+    shll.l @(0x1234:16,er2.l)     ;01076f2812341030\r
+    shll.l @(0x12345678:32,r2l.b)     ;78a56b28123456781030\r
+    shll.l @(0x12345678:32,r2.w)     ;78a66b28123456781030\r
+    shll.l @(0x12345678:32,er2.l)     ;78a76b28123456781030\r
+    shll.l @0x1234:16            ;01046b0812341030\r
+    shll.l @0x12345678:32            ;01046b28123456781030\r
+\r
+    shll.b #2,r1h             ;1041\r
+    shll.b #2,@er1           ;7d101040\r
+    shll.b #2,@(0x3:2,er1)     ;017768181040\r
+    shll.b #2,@er1+          ;01746c181040\r
+    shll.b #2,@-er1          ;01776c181040\r
+    shll.b #2,@+er1          ;01756c181040\r
+    shll.b #2,@er1-          ;01766c181040\r
+    shll.b #2,@(0x1234:16,er1)    ;01746e1812341040\r
+    shll.b #2,@(0x12345678:32,er1)    ;78146a28123456781040\r
+    shll.b #2,@(0x1234:16,r2l.b)  ;01756e2812341040\r
+    shll.b #2,@(0x1234:16,r2.w)  ;01766e2812341040\r
+    shll.b #2,@(0x1234:16,er2.l)  ;01776e2812341040\r
+    shll.b #2,@(0x12345678:32,r2l.b)  ;78256a28123456781040\r
+    shll.b #2,@(0x12345678:32,r2.w)  ;78266a28123456781040\r
+    shll.b #2,@(0x12345678:32,er2.l)  ;78276a28123456781040\r
+    shll.b #2,@0xffffff12:8          ;7f121040\r
+    shll.b #2,@0x1234:16         ;6a1812341040\r
+    shll.b #2,@0x12345678:32         ;6a38123456781040\r
+\r
+    shll.w #2,r1             ;1051\r
+    shll.w #2,@er1           ;7d901050\r
+    shll.w #2,@(0x6:2,er1)  ;015769181050\r
+    shll.w #2,@er1+          ;01546d181050\r
+    shll.w #2,@-er1          ;01576d181050\r
+    shll.w #2,@+er1          ;01556d181050\r
+    shll.w #2,@er1-          ;01566d181050\r
+    shll.w #2,@(0x1234:16,er1)    ;01546f1812341050\r
+    shll.w #2,@(0x12345678:32,er1)    ;78146b28123456781050\r
+    shll.w #2,@(0x1234:16,r2l.b)  ;01556f2812341050\r
+    shll.w #2,@(0x1234:16,r2.w)  ;01566f2812341050\r
+    shll.w #2,@(0x1234:16,er2.l)  ;01576f2812341050\r
+    shll.w #2,@(0x12345678:32,r2l.b)  ;78256b28123456781050\r
+    shll.w #2,@(0x12345678:32,r2.w)  ;78266b28123456781050\r
+    shll.w #2,@(0x12345678:32,er2.l)  ;78276b28123456781050\r
+    shll.w #2,@0x1234:16         ;6b1812341050\r
+    shll.w #2,@0x12345678:32         ;6b38123456781050\r
+\r
+    shll.l #2,er1             ;1071\r
+    shll.l #2,@er1           ;010469181070\r
+    shll.l #2,@(0xc:2,er1)  ;010769181070\r
+    shll.l #2,@er1+          ;01046d181070\r
+    shll.l #2,@-er1          ;01076d181070\r
+    shll.l #2,@+er1          ;01056d181070\r
+    shll.l #2,@er1-          ;01066d181070\r
+    shll.l #2,@(0x1234:16,er1)    ;01046f1812341070\r
+    shll.l #2,@(0x12345678:32,er1)    ;78946b28123456781070\r
+    shll.l #2,@(0x1234:16,r2l.b)  ;01056f2812341070\r
+    shll.l #2,@(0x1234:16,r2.w)  ;01066f2812341070\r
+    shll.l #2,@(0x1234:16,er2.l)  ;01076f2812341070\r
+    shll.l #2,@(0x12345678:32,r2l.b)  ;78a56b28123456781070\r
+    shll.l #2,@(0x12345678:32,r2.w)  ;78a66b28123456781070\r
+    shll.l #2,@(0x12345678:32,er2.l)  ;78a76b28123456781070\r
+    shll.l #2,@0x1234:16         ;01046b0812341070\r
+    shll.l #2,@0x12345678:32         ;01046b28123456781070\r
+\r
+    shll.b #4,r1h             ;10a1\r
+    shll.b #4,@er1           ;7d1010a0\r
+    shll.b #4,@(0x3:2,er1)     ;0177681810a0\r
+    shll.b #4,@er1+          ;01746c1810a0\r
+    shll.b #4,@-er1          ;01776c1810a0\r
+    shll.b #4,@+er1          ;01756c1810a0\r
+    shll.b #4,@er1-          ;01766c1810a0\r
+    shll.b #4,@(0x1234:16,er1)    ;01746e18123410a0\r
+    shll.b #4,@(0x12345678:32,er1)    ;78146a281234567810a0\r
+    shll.b #4,@(0x1234:16,r2l.b)  ;01756e28123410a0\r
+    shll.b #4,@(0x1234:16,r2.w)  ;01766e28123410a0\r
+    shll.b #4,@(0x1234:16,er2.l)  ;01776e28123410a0\r
+    shll.b #4,@(0x12345678:32,r2l.b)  ;78256a281234567810a0\r
+    shll.b #4,@(0x12345678:32,r2.w)  ;78266a281234567810a0\r
+    shll.b #4,@(0x12345678:32,er2.l)  ;78276a281234567810a0\r
+    shll.b #4,@0xffffff12:8          ;7f1210a0\r
+    shll.b #4,@0x1234:16         ;6a18123410a0\r
+    shll.b #4,@0x12345678:32         ;6a381234567810a0\r
+\r
+    shll.w #4,r1             ;1021\r
+    shll.w #4,@er1           ;7d901020\r
+    shll.w #4,@(0x6:2,er1)  ;015769181020\r
+    shll.w #4,@er1+          ;01546d181020\r
+    shll.w #4,@-er1          ;01576d181020\r
+    shll.w #4,@+er1          ;01556d181020\r
+    shll.w #4,@er1-          ;01566d181020\r
+    shll.w #4,@(0x1234:16,er1)    ;01546f1812341020\r
+    shll.w #4,@(0x12345678:32,er1)    ;78146b28123456781020\r
+    shll.w #4,@(0x1234:16,r2l.b)  ;01556f2812341020\r
+    shll.w #4,@(0x1234:16,r2.w)  ;01566f2812341020\r
+    shll.w #4,@(0x1234:16,er2.l)  ;01576f2812341020\r
+    shll.w #4,@(0x12345678:32,r2l.b)  ;78256b28123456781020\r
+    shll.w #4,@(0x12345678:32,r2.w)  ;78266b28123456781020\r
+    shll.w #4,@(0x12345678:32,er2.l)  ;78276b28123456781020\r
+    shll.w #4,@0x1234:16         ;6b1812341020\r
+    shll.w #4,@0x12345678:32         ;6b38123456781020\r
+\r
+    shll.l #4,er1             ;1039\r
+    shll.l #4,@er1           ;010469181038\r
+    shll.l #4,@(0xc:2,er1)  ;010769181038\r
+    shll.l #4,@er1+          ;01046d181038\r
+    shll.l #4,@-er1          ;01076d181038\r
+    shll.l #4,@+er1          ;01056d181038\r
+    shll.l #4,@er1-          ;01066d181038\r
+    shll.l #4,@(0x1234:16,er1)    ;01046f1812341038\r
+    shll.l #4,@(0x12345678:32,er1)    ;78946b28123456781038\r
+    shll.l #4,@(0x1234:16,r2l.b)  ;01056f2812341038\r
+    shll.l #4,@(0x1234:16,r2.w)  ;01066f2812341038\r
+    shll.l #4,@(0x1234:16,er2.l)  ;01076f2812341038\r
+    shll.l #4,@(0x12345678:32,r2l.b)  ;78a56b28123456781038\r
+    shll.l #4,@(0x12345678:32,r2.w)  ;78a66b28123456781038\r
+    shll.l #4,@(0x12345678:32,er2.l)  ;78a76b28123456781038\r
+    shll.l #4,@0x1234:16         ;01046b0812341038\r
+    shll.l #4,@0x12345678:32         ;01046b28123456781038\r
+\r
+    shll.w #8,r1             ;1061\r
+    shll.w #8,@er1           ;7d901060\r
+    shll.w #8,@(0x6:2,er1)  ;015769181060\r
+    shll.w #8,@er1+          ;01546d181060\r
+    shll.w #8,@-er1          ;01576d181060\r
+    shll.w #8,@+er1          ;01556d181060\r
+    shll.w #8,@er1-          ;01566d181060\r
+    shll.w #8,@(0x1234:16,er1)    ;01546f1812341060\r
+    shll.w #8,@(0x12345678:32,er1)    ;78146b28123456781060\r
+    shll.w #8,@(0x1234:16,r2l.b)  ;01556f2812341060\r
+    shll.w #8,@(0x1234:16,r2.w)  ;01566f2812341060\r
+    shll.w #8,@(0x1234:16,er2.l)  ;01576f2812341060\r
+    shll.w #8,@(0x12345678:32,r2l.b)  ;78256b28123456781060\r
+    shll.w #8,@(0x12345678:32,r2.w)  ;78266b28123456781060\r
+    shll.w #8,@(0x12345678:32,er2.l)  ;78276b28123456781060\r
+    shll.w #8,@0x1234:16         ;6b1812341060\r
+    shll.w #8,@0x12345678:32         ;6b38123456781060\r
+\r
+    shll.l #8,er1             ;1079\r
+    shll.l #8,@er1           ;010469181078\r
+    shll.l #8,@(0xc:2,er1)  ;010769181078\r
+    shll.l #8,@er1+          ;01046d181078\r
+    shll.l #8,@-er1          ;01076d181078\r
+    shll.l #8,@+er1          ;01056d181078\r
+    shll.l #8,@er1-          ;01066d181078\r
+    shll.l #8,@(0x1234:16,er1)    ;01046f1812341078\r
+    shll.l #8,@(0x12345678:32,er1)    ;78946b28123456781078\r
+    shll.l #8,@(0x1234:16,r2l.b)  ;01056f2812341078\r
+    shll.l #8,@(0x1234:16,r2.w)  ;01066f2812341078\r
+    shll.l #8,@(0x1234:16,er2.l)  ;01076f2812341078\r
+    shll.l #8,@(0x12345678:32,r2l.b)  ;78a56b28123456781078\r
+    shll.l #8,@(0x12345678:32,r2.w)  ;78a66b28123456781078\r
+    shll.l #8,@(0x12345678:32,er2.l)  ;78a76b28123456781078\r
+    shll.l #8,@0x1234:16         ;01046b0812341078\r
+    shll.l #8,@0x12345678:32         ;01046b28123456781078\r
+\r
+    shll.l #16,er1            ;10f9\r
+    shll.l #16,@er1          ;0104691810f8\r
+    shll.l #16,@(0xc:2,er1) ;0107691810f8\r
+    shll.l #16,@er1+         ;01046d1810f8\r
+    shll.l #16,@-er1         ;01076d1810f8\r
+    shll.l #16,@+er1         ;01056d1810f8\r
+    shll.l #16,@er1-         ;01066d1810f8\r
+    shll.l #16,@(0x1234:16,er1)   ;01046f18123410f8\r
+    shll.l #16,@(0x12345678:32,er1)   ;78946b281234567810f8\r
+    shll.l #16,@(0x1234:16,r2l.b) ;01056f28123410f8\r
+    shll.l #16,@(0x1234:16,r2.w) ;01066f28123410f8\r
+    shll.l #16,@(0x1234:16,er2.l) ;01076f28123410f8\r
+    shll.l #16,@(0x12345678:32,r2l.b) ;78a56b281234567810f8\r
+    shll.l #16,@(0x12345678:32,r2.w) ;78a66b281234567810f8\r
+    shll.l #16,@(0x12345678:32,er2.l) ;78a76b281234567810f8\r
+    shll.l #16,@0x1234:16        ;01046b08123410f8\r
+    shll.l #16,@0x12345678:32        ;01046b281234567810f8\r
+\r
+    shll.b #0x7:5,r1h        ;03871001\r
+    shll.w #0xf:5,r1         ;038f1011\r
+    shll.l #0x1f:5,er1       ;039f1031\r
+\r
+    shll.b r3h,r1h           ;78381001\r
+    shll.w r3h,r1            ;78381011\r
+    shll.l r3h,er1           ;78381031\r
+\r
+    shlr.b r1h               ;1101\r
+    shlr.b @er1              ;7d101100\r
+    shlr.b @(0x3:2,er1)      ;017768181100\r
+    shlr.b @er1+             ;01746c181100\r
+    shlr.b @-er1             ;01776c181100\r
+    shlr.b @+er1             ;01756c181100\r
+    shlr.b @er1-             ;01766c181100\r
+    shlr.b @(0x1234:16,er1)       ;01746e1812341100\r
+    shlr.b @(0x12345678:32,er1)       ;78146a28123456781100\r
+    shlr.b @(0x1234:16,r2l.b)     ;01756e2812341100\r
+    shlr.b @(0x1234:16,r2.w)     ;01766e2812341100\r
+    shlr.b @(0x1234:16,er2.l)     ;01776e2812341100\r
+    shlr.b @(0x12345678:32,r2l.b)     ;78256a28123456781100\r
+    shlr.b @(0x12345678:32,r2.w)     ;78266a28123456781100\r
+    shlr.b @(0x12345678:32,er2.l)     ;78276a28123456781100\r
+    shlr.b @0xffffff12:8             ;7f121100\r
+    shlr.b @0x1234:16            ;6a1812341100\r
+    shlr.b @0x12345678:32            ;6a38123456781100\r
+\r
+    shlr.w r1                ;1111\r
+    shlr.w @er1              ;7d901110\r
+    shlr.w @(0x6:2,er1)     ;015769181110\r
+    shlr.w @er1+             ;01546d181110\r
+    shlr.w @-er1             ;01576d181110\r
+    shlr.w @+er1             ;01556d181110\r
+    shlr.w @er1-             ;01566d181110\r
+    shlr.w @(0x1234:16,er1)       ;01546f1812341110\r
+    shlr.w @(0x12345678:32,er1)       ;78146b28123456781110\r
+    shlr.w @(0x1234:16,r2l.b)     ;01556f2812341110\r
+    shlr.w @(0x1234:16,r2.w)     ;01566f2812341110\r
+    shlr.w @(0x1234:16,er2.l)     ;01576f2812341110\r
+    shlr.w @(0x12345678:32,r2l.b)     ;78256b28123456781110\r
+    shlr.w @(0x12345678:32,r2.w)     ;78266b28123456781110\r
+    shlr.w @(0x12345678:32,er2.l)     ;78276b28123456781110\r
+    shlr.w @0x1234:16            ;6b1812341110\r
+    shlr.w @0x12345678:32            ;6b38123456781110\r
+\r
+    shlr.l er1                ;1131\r
+    shlr.l @er1              ;010469181130\r
+    shlr.l @(0xc:2,er1)     ;010769181130\r
+    shlr.l @er1+             ;01046d181130\r
+    shlr.l @-er1             ;01076d181130\r
+    shlr.l @+er1             ;01056d181130\r
+    shlr.l @er1-             ;01066d181130\r
+    shlr.l @(0x1234:16,er1)       ;01046f1812341130\r
+    shlr.l @(0x12345678:32,er1)       ;78946b28123456781130\r
+    shlr.l @(0x1234:16,r2l.b)     ;01056f2812341130\r
+    shlr.l @(0x1234:16,r2.w)     ;01066f2812341130\r
+    shlr.l @(0x1234:16,er2.l)     ;01076f2812341130\r
+    shlr.l @(0x12345678:32,r2l.b)     ;78a56b28123456781130\r
+    shlr.l @(0x12345678:32,r2.w)     ;78a66b28123456781130\r
+    shlr.l @(0x12345678:32,er2.l)     ;78a76b28123456781130\r
+    shlr.l @0x1234:16            ;01046b0812341130\r
+    shlr.l @0x12345678:32            ;01046b28123456781130\r
+\r
+    shlr.b #2,r1h             ;1141\r
+    shlr.b #2,@er1           ;7d101140\r
+    shlr.b #2,@(0x3:2,er1)     ;017768181140\r
+    shlr.b #2,@er1+          ;01746c181140\r
+    shlr.b #2,@-er1          ;01776c181140\r
+    shlr.b #2,@+er1          ;01756c181140\r
+    shlr.b #2,@er1-          ;01766c181140\r
+    shlr.b #2,@(0x1234:16,er1)    ;01746e1812341140\r
+    shlr.b #2,@(0x12345678:32,er1)    ;78146a28123456781140\r
+    shlr.b #2,@(0x1234:16,r2l.b)  ;01756e2812341140\r
+    shlr.b #2,@(0x1234:16,r2.w)  ;01766e2812341140\r
+    shlr.b #2,@(0x1234:16,er2.l)  ;01776e2812341140\r
+    shlr.b #2,@(0x12345678:32,r2l.b)  ;78256a28123456781140\r
+    shlr.b #2,@(0x12345678:32,r2.w)  ;78266a28123456781140\r
+    shlr.b #2,@(0x12345678:32,er2.l)  ;78276a28123456781140\r
+    shlr.b #2,@0xffffff12:8          ;7f121140\r
+    shlr.b #2,@0x1234:16         ;6a1812341140\r
+    shlr.b #2,@0x12345678:32         ;6a38123456781140\r
+\r
+    shlr.w #2,r1             ;1151\r
+    shlr.w #2,@er1           ;7d901150\r
+    shlr.w #2,@(0x6:2,er1)  ;015769181150\r
+    shlr.w #2,@er1+          ;01546d181150\r
+    shlr.w #2,@-er1          ;01576d181150\r
+    shlr.w #2,@+er1          ;01556d181150\r
+    shlr.w #2,@er1-          ;01566d181150\r
+    shlr.w #2,@(0x1234:16,er1)    ;01546f1812341150\r
+    shlr.w #2,@(0x12345678:32,er1)    ;78146b28123456781150\r
+    shlr.w #2,@(0x1234:16,r2l.b)  ;01556f2812341150\r
+    shlr.w #2,@(0x1234:16,r2.w)  ;01566f2812341150\r
+    shlr.w #2,@(0x1234:16,er2.l)  ;01576f2812341150\r
+    shlr.w #2,@(0x12345678:32,r2l.b)  ;78256b28123456781150\r
+    shlr.w #2,@(0x12345678:32,r2.w)  ;78266b28123456781150\r
+    shlr.w #2,@(0x12345678:32,er2.l)  ;78276b28123456781150\r
+    shlr.w #2,@0x1234:16         ;6b1812341150\r
+    shlr.w #2,@0x12345678:32         ;6b38123456781150\r
+\r
+    shlr.l #2,er1             ;1171\r
+    shlr.l #2,@er1           ;010469181170\r
+    shlr.l #2,@(0xc:2,er1)  ;010769181170\r
+    shlr.l #2,@er1+          ;01046d181170\r
+    shlr.l #2,@-er1          ;01076d181170\r
+    shlr.l #2,@+er1          ;01056d181170\r
+    shlr.l #2,@er1-          ;01066d181170\r
+    shlr.l #2,@(0x1234:16,er1)    ;01046f1812341170\r
+    shlr.l #2,@(0x12345678:32,er1)    ;78946b28123456781170\r
+    shlr.l #2,@(0x1234:16,r2l.b)  ;01056f2812341170\r
+    shlr.l #2,@(0x1234:16,r2.w)  ;01066f2812341170\r
+    shlr.l #2,@(0x1234:16,er2.l)  ;01076f2812341170\r
+    shlr.l #2,@(0x12345678:32,r2l.b)  ;78a56b28123456781170\r
+    shlr.l #2,@(0x12345678:32,r2.w)  ;78a66b28123456781170\r
+    shlr.l #2,@(0x12345678:32,er2.l)  ;78a76b28123456781170\r
+    shlr.l #2,@0x1234:16         ;01046b0812341170\r
+    shlr.l #2,@0x12345678:32         ;01046b28123456781170\r
+\r
+    shlr.b #4,r1h             ;11a1\r
+    shlr.b #4,@er1           ;7d1011a0\r
+    shlr.b #4,@(0x3:2,er1)     ;0177681811a0\r
+    shlr.b #4,@er1+          ;01746c1811a0\r
+    shlr.b #4,@-er1          ;01776c1811a0\r
+    shlr.b #4,@+er1          ;01756c1811a0\r
+    shlr.b #4,@er1-          ;01766c1811a0\r
+    shlr.b #4,@(0x1234:16,er1)    ;01746e18123411a0\r
+    shlr.b #4,@(0x12345678:32,er1)    ;78146a281234567811a0\r
+    shlr.b #4,@(0x1234:16,r2l.b)  ;01756e28123411a0\r
+    shlr.b #4,@(0x1234:16,r2.w)  ;01766e28123411a0\r
+    shlr.b #4,@(0x1234:16,er2.l)  ;01776e28123411a0\r
+    shlr.b #4,@(0x12345678:32,r2l.b)  ;78256a281234567811a0\r
+    shlr.b #4,@(0x12345678:32,r2.w)  ;78266a281234567811a0\r
+    shlr.b #4,@(0x12345678:32,er2.l)  ;78276a281234567811a0\r
+    shlr.b #4,@0xffffff12:8          ;7f1211a0\r
+    shlr.b #4,@0x1234:16         ;6a18123411a0\r
+    shlr.b #4,@0x12345678:32         ;6a381234567811a0\r
+\r
+    shlr.w #4,r1             ;1121\r
+    shlr.w #4,@er1           ;7d901120\r
+    shlr.w #4,@(0x6:2,er1)     ;015769181120\r
+    shlr.w #4,@er1+          ;01546d181120\r
+    shlr.w #4,@-er1          ;01576d181120\r
+    shlr.w #4,@+er1          ;01556d181120\r
+    shlr.w #4,@er1-          ;01566d181120\r
+    shlr.w #4,@(0x1234:16,er1)    ;01546f1812341120\r
+    shlr.w #4,@(0x12345678:32,er1)    ;78146b28123456781120\r
+    shlr.w #4,@(0x1234:16,r2l.b)  ;01556f2812341120\r
+    shlr.w #4,@(0x1234:16,r2.w)  ;01566f2812341120\r
+    shlr.w #4,@(0x1234:16,er2.l)  ;01576f2812341120\r
+    shlr.w #4,@(0x12345678:32,r2l.b)  ;78256b28123456781120\r
+    shlr.w #4,@(0x12345678:32,r2.w)  ;78266b28123456781120\r
+    shlr.w #4,@(0x12345678:32,er2.l)  ;78276b28123456781120\r
+    shlr.w #4,@0x1234:16         ;6b1812341120\r
+    shlr.w #4,@0x12345678:32         ;6b38123456781120\r
+\r
+    shlr.l #4,er1             ;1139\r
+    shlr.l #4,@er1           ;010469181138\r
+    shlr.l #4,@(0xc:2,er1)     ;010769181138\r
+    shlr.l #4,@er1+          ;01046d181138\r
+    shlr.l #4,@-er1          ;01076d181138\r
+    shlr.l #4,@+er1          ;01056d181138\r
+    shlr.l #4,@er1-          ;01066d181138\r
+    shlr.l #4,@(0x1234:16,er1)    ;01046f1812341138\r
+    shlr.l #4,@(0x12345678:32,er1)    ;78946b28123456781138\r
+    shlr.l #4,@(0x1234:16,r2l.b)  ;01056f2812341138\r
+    shlr.l #4,@(0x1234:16,r2.w)  ;01066f2812341138\r
+    shlr.l #4,@(0x1234:16,er2.l)  ;01076f2812341138\r
+    shlr.l #4,@(0x12345678:32,r2l.b)  ;78a56b28123456781138\r
+    shlr.l #4,@(0x12345678:32,r2.w)  ;78a66b28123456781138\r
+    shlr.l #4,@(0x12345678:32,er2.l)  ;78a76b28123456781138\r
+    shlr.l #4,@0x1234:16         ;01046b0812341138\r
+    shlr.l #4,@0x12345678:32         ;01046b28123456781138\r
+\r
+    shlr.w #8,r1             ;1161\r
+    shlr.w #8,@er1           ;7d901160\r
+    shlr.w #8,@(0x6:2,er1)  ;015769181160\r
+    shlr.w #8,@er1+          ;01546d181160\r
+    shlr.w #8,@-er1          ;01576d181160\r
+    shlr.w #8,@+er1          ;01556d181160\r
+    shlr.w #8,@er1-          ;01566d181160\r
+    shlr.w #8,@(0x1234:16,er1)    ;01546f1812341160\r
+    shlr.w #8,@(0x12345678:32,er1)    ;78146b28123456781160\r
+    shlr.w #8,@(0x1234:16,r2l.b)  ;01556f2812341160\r
+    shlr.w #8,@(0x1234:16,r2.w)  ;01566f2812341160\r
+    shlr.w #8,@(0x1234:16,er2.l)  ;01576f2812341160\r
+    shlr.w #8,@(0x12345678:32,r2l.b)  ;78256b28123456781160\r
+    shlr.w #8,@(0x12345678:32,r2.w)  ;78266b28123456781160\r
+    shlr.w #8,@(0x12345678:32,er2.l)  ;78276b28123456781160\r
+    shlr.w #8,@0x1234:16         ;6b1812341160\r
+    shlr.w #8,@0x12345678:32         ;6b38123456781160\r
+\r
+    shlr.l #8,er1             ;1179\r
+    shlr.l #8,@er1           ;010469181178\r
+    shlr.l #8,@(0xc:2,er1)  ;010769181178\r
+    shlr.l #8,@er1+          ;01046d181178\r
+    shlr.l #8,@-er1          ;01076d181178\r
+    shlr.l #8,@+er1          ;01056d181178\r
+    shlr.l #8,@er1-          ;01066d181178\r
+    shlr.l #8,@(0x1234:16,er1)    ;01046f1812341178\r
+    shlr.l #8,@(0x12345678:32,er1)    ;78946b28123456781178\r
+    shlr.l #8,@(0x1234:16,r2l.b)  ;01056f2812341178\r
+    shlr.l #8,@(0x1234:16,r2.w)  ;01066f2812341178\r
+    shlr.l #8,@(0x1234:16,er2.l)  ;01076f2812341178\r
+    shlr.l #8,@(0x12345678:32,r2l.b)  ;78a56b28123456781178\r
+    shlr.l #8,@(0x12345678:32,r2.w)  ;78a66b28123456781178\r
+    shlr.l #8,@(0x12345678:32,er2.l)  ;78a76b28123456781178\r
+    shlr.l #8,@0x1234:16         ;01046b0812341178\r
+    shlr.l #8,@0x12345678:32         ;01046b28123456781178\r
+\r
+    shlr.l #16,er1            ;11f9\r
+    shlr.l #16,@er1          ;0104691811f8\r
+    shlr.l #16,@(0xc:2,er1) ;0107691811f8\r
+    shlr.l #16,@er1+         ;01046d1811f8\r
+    shlr.l #16,@-er1         ;01076d1811f8\r
+    shlr.l #16,@+er1         ;01056d1811f8\r
+    shlr.l #16,@er1-         ;01066d1811f8\r
+    shlr.l #16,@(0x1234:16,er1)   ;01046f18123411f8\r
+    shlr.l #16,@(0x12345678:32,er1)   ;78946b281234567811f8\r
+    shlr.l #16,@(0x1234:16,r2l.b) ;01056f28123411f8\r
+    shlr.l #16,@(0x1234:16,r2.w) ;01066f28123411f8\r
+    shlr.l #16,@(0x1234:16,er2.l) ;01076f28123411f8\r
+    shlr.l #16,@(0x12345678:32,r2l.b) ;78a56b281234567811f8\r
+    shlr.l #16,@(0x12345678:32,r2.w) ;78a66b281234567811f8\r
+    shlr.l #16,@(0x12345678:32,er2.l) ;78a76b281234567811f8\r
+    shlr.l #16,@0x1234:16        ;01046b08123411f8\r
+    shlr.l #16,@0x12345678:32        ;01046b281234567811f8\r
+\r
+    shlr.b #0x7:5,r1h        ;03871101\r
+    shlr.w #0xf:5,r1         ;038f1111\r
+    shlr.l #0x1f:5,er1       ;039f1131\r
+\r
+    shlr.b r3h,r1h           ;78381101\r
+    shlr.w r3h,r1            ;78381111\r
+    shlr.l r3h,er1           ;78381131\r
+\r
+    shal.b r1h               ;1081\r
+    shal.b @er1              ;7d101080\r
+    shal.b @(0x3:2,er1)      ;017768181080\r
+    shal.b @er1+             ;01746c181080\r
+    shal.b @-er1             ;01776c181080\r
+    shal.b @+er1             ;01756c181080\r
+    shal.b @er1-             ;01766c181080\r
+    shal.b @(0x1234:16,er1)       ;01746e1812341080\r
+    shal.b @(0x12345678:32,er1)       ;78146a28123456781080\r
+    shal.b @(0x1234:16,r2l.b)     ;01756e2812341080\r
+    shal.b @(0x1234:16,r2.w)     ;01766e2812341080\r
+    shal.b @(0x1234:16,er2.l)     ;01776e2812341080\r
+    shal.b @(0x12345678:32,r2l.b)     ;78256a28123456781080\r
+    shal.b @(0x12345678:32,r2.w)     ;78266a28123456781080\r
+    shal.b @(0x12345678:32,er2.l)     ;78276a28123456781080\r
+    shal.b @0xffffff12:8             ;7f121080\r
+    shal.b @0x1234:16            ;6a1812341080\r
+    shal.b @0x12345678:32            ;6a38123456781080\r
+\r
+    shal.w r1                ;1091\r
+    shal.w @er1              ;7d901090\r
+    shal.w @(0x6:2,er1)     ;015769181090\r
+    shal.w @er1+             ;01546d181090\r
+    shal.w @-er1             ;01576d181090\r
+    shal.w @+er1             ;01556d181090\r
+    shal.w @er1-             ;01566d181090\r
+    shal.w @(0x1234:16,er1)       ;01546f1812341090\r
+    shal.w @(0x12345678:32,er1)       ;78146b28123456781090\r
+    shal.w @(0x1234:16,r2l.b)     ;01556f2812341090\r
+    shal.w @(0x1234:16,r2.w)     ;01566f2812341090\r
+    shal.w @(0x1234:16,er2.l)     ;01576f2812341090\r
+    shal.w @(0x12345678:32,r2l.b)     ;78256b28123456781090\r
+    shal.w @(0x12345678:32,r2.w)     ;78266b28123456781090\r
+    shal.w @(0x12345678:32,er2.l)     ;78276b28123456781090\r
+    shal.w @0x1234:16            ;6b1812341090\r
+    shal.w @0x12345678:32            ;6b38123456781090\r
+\r
+    shal.l er1                ;10b1\r
+    shal.l @er1              ;0104691810b0\r
+    shal.l @(0xc:2,er1)     ;0107691810b0\r
+    shal.l @er1+             ;01046d1810b0\r
+    shal.l @-er1             ;01076d1810b0\r
+    shal.l @+er1             ;01056d1810b0\r
+    shal.l @er1-             ;01066d1810b0\r
+    shal.l @(0x1234:16,er1)       ;01046f18123410b0\r
+    shal.l @(0x12345678:32,er1)       ;78946b281234567810b0\r
+    shal.l @(0x1234:16,r2l.b)     ;01056f28123410b0\r
+    shal.l @(0x1234:16,r2.w)     ;01066f28123410b0\r
+    shal.l @(0x1234:16,er2.l)     ;01076f28123410b0\r
+    shal.l @(0x12345678:32,r2l.b)     ;78a56b281234567810b0\r
+    shal.l @(0x12345678:32,r2.w)     ;78a66b281234567810b0\r
+    shal.l @(0x12345678:32,er2.l)     ;78a76b281234567810b0\r
+    shal.l @0x1234:16            ;01046b08123410b0\r
+    shal.l @0x12345678:32            ;01046b281234567810b0\r
+\r
+    shal.b #2,r1h             ;10c1\r
+    shal.b #2,@er1           ;7d1010c0\r
+    shal.b #2,@(0x3:2,er1)     ;0177681810c0\r
+    shal.b #2,@er1+          ;01746c1810c0\r
+    shal.b #2,@-er1          ;01776c1810c0\r
+    shal.b #2,@+er1          ;01756c1810c0\r
+    shal.b #2,@er1-          ;01766c1810c0\r
+    shal.b #2,@(0x1234:16,er1)    ;01746e18123410c0\r
+    shal.b #2,@(0x12345678:32,er1)    ;78146a281234567810c0\r
+    shal.b #2,@(0x1234:16,r2l.b)  ;01756e28123410c0\r
+    shal.b #2,@(0x1234:16,r2.w)  ;01766e28123410c0\r
+    shal.b #2,@(0x1234:16,er2.l)  ;01776e28123410c0\r
+    shal.b #2,@(0x12345678:32,r2l.b)  ;78256a281234567810c0\r
+    shal.b #2,@(0x12345678:32,r2.w)  ;78266a281234567810c0\r
+    shal.b #2,@(0x12345678:32,er2.l)  ;78276a281234567810c0\r
+    shal.b #2,@0xffffff12:8          ;7f1210c0\r
+    shal.b #2,@0x1234:16         ;6a18123410c0\r
+    shal.b #2,@0x12345678:32         ;6a381234567810c0\r
+\r
+    shal.w #2,r1             ;10d1\r
+    shal.w #2,@er1           ;7d9010d0\r
+    shal.w #2,@(0x6:2,er1)  ;0157691810d0\r
+    shal.w #2,@er1+          ;01546d1810d0\r
+    shal.w #2,@-er1          ;01576d1810d0\r
+    shal.w #2,@+er1          ;01556d1810d0\r
+    shal.w #2,@er1-          ;01566d1810d0\r
+    shal.w #2,@(0x1234:16,er1)    ;01546f18123410d0\r
+    shal.w #2,@(0x12345678:32,er1)    ;78146b281234567810d0\r
+    shal.w #2,@(0x1234:16,r2l.b)  ;01556f28123410d0\r
+    shal.w #2,@(0x1234:16,r2.w)  ;01566f28123410d0\r
+    shal.w #2,@(0x1234:16,er2.l)  ;01576f28123410d0\r
+    shal.w #2,@(0x12345678:32,r2l.b)  ;78256b281234567810d0\r
+    shal.w #2,@(0x12345678:32,r2.w)  ;78266b281234567810d0\r
+    shal.w #2,@(0x12345678:32,er2.l)  ;78276b281234567810d0\r
+    shal.w #2,@0x1234:16         ;6b18123410d0\r
+    shal.w #2,@0x12345678:32         ;6b381234567810d0\r
+\r
+    shal.l #2,er1             ;10f1\r
+    shal.l #2,@er1           ;0104691810f0\r
+    shal.l #2,@(0xc:2,er1)  ;0107691810f0\r
+    shal.l #2,@er1+          ;01046d1810f0\r
+    shal.l #2,@-er1          ;01076d1810f0\r
+    shal.l #2,@+er1          ;01056d1810f0\r
+    shal.l #2,@er1-          ;01066d1810f0\r
+    shal.l #2,@(0x1234:16,er1)    ;01046f18123410f0\r
+    shal.l #2,@(0x12345678:32,er1)    ;78946b281234567810f0\r
+    shal.l #2,@(0x1234:16,r2l.b)  ;01056f28123410f0\r
+    shal.l #2,@(0x1234:16,r2.w)  ;01066f28123410f0\r
+    shal.l #2,@(0x1234:16,er2.l)  ;01076f28123410f0\r
+    shal.l #2,@(0x12345678:32,r2l.b)  ;78a56b281234567810f0\r
+    shal.l #2,@(0x12345678:32,r2.w)  ;78a66b281234567810f0\r
+    shal.l #2,@(0x12345678:32,er2.l)  ;78a76b281234567810f0\r
+    shal.l #2,@0x1234:16         ;01046b08123410f0\r
+    shal.l #2,@0x12345678:32         ;01046b281234567810f0\r
+\r
+    shar.b r1h                ;1181\r
+    shar.b @er1              ;7d101180\r
+    shar.b @(0x3:2,er1)        ;017768181180\r
+    shar.b @er1+             ;01746c181180\r
+    shar.b @-er1             ;01776c181180\r
+    shar.b @+er1             ;01756c181180\r
+    shar.b @er1-             ;01766c181180\r
+    shar.b @(0x1234:16,er1)       ;01746e1812341180\r
+    shar.b @(0x12345678:32,er1)       ;78146a28123456781180\r
+    shar.b @(0x1234:16,r2l.b)     ;01756e2812341180\r
+    shar.b @(0x1234:16,r2.w)     ;01766e2812341180\r
+    shar.b @(0x1234:16,er2.l)     ;01776e2812341180\r
+    shar.b @(0x12345678:32,r2l.b)     ;78256a28123456781180\r
+    shar.b @(0x12345678:32,r2.w)     ;78266a28123456781180\r
+    shar.b @(0x12345678:32,er2.l)     ;78276a28123456781180\r
+    shar.b @0xffffff12:8             ;7f121180\r
+    shar.b @0x1234:16            ;6a1812341180\r
+    shar.b @0x12345678:32            ;6a38123456781180\r
+\r
+    shar.w r1                ;1191\r
+    shar.w @er1              ;7d901190\r
+    shar.w @(0x6:2,er1)     ;015769181190\r
+    shar.w @er1+             ;01546d181190\r
+    shar.w @-er1             ;01576d181190\r
+    shar.w @+er1             ;01556d181190\r
+    shar.w @er1-             ;01566d181190\r
+    shar.w @(0x1234:16,er1)       ;01546f1812341190\r
+    shar.w @(0x12345678:32,er1)       ;78146b28123456781190\r
+    shar.w @(0x1234:16,r2l.b)     ;01556f2812341190\r
+    shar.w @(0x1234:16,r2.w)     ;01566f2812341190\r
+    shar.w @(0x1234:16,er2.l)     ;01576f2812341190\r
+    shar.w @(0x12345678:32,r2l.b)     ;78256b28123456781190\r
+    shar.w @(0x12345678:32,r2.w)     ;78266b28123456781190\r
+    shar.w @(0x12345678:32,er2.l)     ;78276b28123456781190\r
+    shar.w @0x1234:16            ;6b1812341190\r
+    shar.w @0x12345678:32            ;6b38123456781190\r
+\r
+    shar.l er1                ;11b1\r
+    shar.l @er1              ;0104691811b0\r
+    shar.l @(0xc:2,er1)     ;0107691811b0\r
+    shar.l @er1+             ;01046d1811b0\r
+    shar.l @-er1             ;01076d1811b0\r
+    shar.l @+er1             ;01056d1811b0\r
+    shar.l @er1-             ;01066d1811b0\r
+    shar.l @(0x1234:16,er1)       ;01046f18123411b0\r
+    shar.l @(0x12345678:32,er1)       ;78946b281234567811b0\r
+    shar.l @(0x1234:16,r2l.b)     ;01056f28123411b0\r
+    shar.l @(0x1234:16,r2.w)     ;01066f28123411b0\r
+    shar.l @(0x1234:16,er2.l)     ;01076f28123411b0\r
+    shar.l @(0x12345678:32,r2l.b)     ;78a56b281234567811b0\r
+    shar.l @(0x12345678:32,r2.w)     ;78a66b281234567811b0\r
+    shar.l @(0x12345678:32,er2.l)     ;78a76b281234567811b0\r
+    shar.l @0x1234:16            ;01046b08123411b0\r
+    shar.l @0x12345678:32            ;01046b281234567811b0\r
+\r
+    shar.b #2,r1h             ;11c1\r
+    shar.b #2,@er1           ;7d1011c0\r
+    shar.b #2,@(0x3:2,er1)     ;0177681811c0\r
+    shar.b #2,@er1+          ;01746c1811c0\r
+    shar.b #2,@-er1          ;01776c1811c0\r
+    shar.b #2,@+er1          ;01756c1811c0\r
+    shar.b #2,@er1-          ;01766c1811c0\r
+    shar.b #2,@(0x1234:16,er1)    ;01746e18123411c0\r
+    shar.b #2,@(0x12345678:32,er1)    ;78146a281234567811c0\r
+    shar.b #2,@(0x1234:16,r2l.b)  ;01756e28123411c0\r
+    shar.b #2,@(0x1234:16,r2.w)  ;01766e28123411c0\r
+    shar.b #2,@(0x1234:16,er2.l)  ;01776e28123411c0\r
+    shar.b #2,@(0x12345678:32,r2l.b)  ;78256a281234567811c0\r
+    shar.b #2,@(0x12345678:32,r2.w)  ;78266a281234567811c0\r
+    shar.b #2,@(0x12345678:32,er2.l)  ;78276a281234567811c0\r
+    shar.b #2,@0xffffff12:8          ;7f1211c0\r
+    shar.b #2,@0x1234:16         ;6a18123411c0\r
+    shar.b #2,@0x12345678:32         ;6a381234567811c0\r
+\r
+    shar.w #2,r1             ;11d1\r
+    shar.w #2,@er1           ;7d9011d0\r
+    shar.w #2,@(0x6:2,er1)  ;0157691811d0\r
+    shar.w #2,@er1+          ;01546d1811d0\r
+    shar.w #2,@-er1          ;01576d1811d0\r
+    shar.w #2,@+er1          ;01556d1811d0\r
+    shar.w #2,@er1-          ;01566d1811d0\r
+    shar.w #2,@(0x1234:16,er1)    ;01546f18123411d0\r
+    shar.w #2,@(0x12345678:32,er1)    ;78146b281234567811d0\r
+    shar.w #2,@(0x1234:16,r2l.b)  ;01556f28123411d0\r
+    shar.w #2,@(0x1234:16,r2.w)  ;01566f28123411d0\r
+    shar.w #2,@(0x1234:16,er2.l)  ;01576f28123411d0\r
+    shar.w #2,@(0x12345678:32,r2l.b)  ;78256b281234567811d0\r
+    shar.w #2,@(0x12345678:32,r2.w)  ;78266b281234567811d0\r
+    shar.w #2,@(0x12345678:32,er2.l)  ;78276b281234567811d0\r
+    shar.w #2,@0x1234:16         ;6b18123411d0\r
+    shar.w #2,@0x12345678:32         ;6b381234567811d0\r
+\r
+    shar.l #2,er1             ;11f1\r
+    shar.l #2,@er1           ;0104691811f0\r
+    shar.l #2,@(0xc:2,er1)  ;0107691811f0\r
+    shar.l #2,@er1+          ;01046d1811f0\r
+    shar.l #2,@-er1          ;01076d1811f0\r
+    shar.l #2,@+er1          ;01056d1811f0\r
+    shar.l #2,@er1-          ;01066d1811f0\r
+    shar.l #2,@(0x1234:16,er1)    ;01046f18123411f0\r
+    shar.l #2,@(0x12345678:32,er1)    ;78946b281234567811f0\r
+    shar.l #2,@(0x1234:16,r2l.b)  ;01056f28123411f0\r
+    shar.l #2,@(0x1234:16,r2.w)  ;01066f28123411f0\r
+    shar.l #2,@(0x1234:16,er2.l)  ;01076f28123411f0\r
+    shar.l #2,@(0x12345678:32,r2l.b)  ;78a56b281234567811f0\r
+    shar.l #2,@(0x12345678:32,r2.w)  ;78a66b281234567811f0\r
+    shar.l #2,@(0x12345678:32,er2.l)  ;78a76b281234567811f0\r
+    shar.l #2,@0x1234:16         ;01046b08123411f0\r
+    shar.l #2,@0x12345678:32         ;01046b281234567811f0\r
+\r
+    rotxl.b r1h               ;1201\r
+    rotxl.b @er1             ;7d101200\r
+    rotxl.b @(0x3:2,er1)       ;017768181200\r
+    rotxl.b @er1+            ;01746c181200\r
+    rotxl.b @-er1            ;01776c181200\r
+    rotxl.b @+er1            ;01756c181200\r
+    rotxl.b @er1-            ;01766c181200\r
+    rotxl.b @(0x1234:16,er1)      ;01746e1812341200\r
+    rotxl.b @(0x12345678:32,er1)      ;78146a28123456781200\r
+    rotxl.b @(0x1234:16,r2l.b)    ;01756e2812341200\r
+    rotxl.b @(0x1234:16,r2.w)    ;01766e2812341200\r
+    rotxl.b @(0x1234:16,er2.l)    ;01776e2812341200\r
+    rotxl.b @(0x12345678:32,r2l.b)    ;78256a28123456781200\r
+    rotxl.b @(0x12345678:32,r2.w)    ;78266a28123456781200\r
+    rotxl.b @(0x12345678:32,er2.l)    ;78276a28123456781200\r
+    rotxl.b @0xffffff12:8            ;7f121200\r
+    rotxl.b @0x1234:16           ;6a1812341200\r
+    rotxl.b @0x12345678:32           ;6a38123456781200\r
+\r
+    rotxl.w r1               ;1211\r
+    rotxl.w @er1             ;7d901210\r
+    rotxl.w @(0x6:2,er1)    ;015769181210\r
+    rotxl.w @er1+            ;01546d181210\r
+    rotxl.w @-er1            ;01576d181210\r
+    rotxl.w @+er1            ;01556d181210\r
+    rotxl.w @er1-            ;01566d181210\r
+    rotxl.w @(0x1234:16,er1)      ;01546f1812341210\r
+    rotxl.w @(0x12345678:32,er1)      ;78146b28123456781210\r
+    rotxl.w @(0x1234:16,r2l.b)    ;01556f2812341210\r
+    rotxl.w @(0x1234:16,r2.w)    ;01566f2812341210\r
+    rotxl.w @(0x1234:16,er2.l)    ;01576f2812341210\r
+    rotxl.w @(0x12345678:32,r2l.b)    ;78256b28123456781210\r
+    rotxl.w @(0x12345678:32,r2.w)    ;78266b28123456781210\r
+    rotxl.w @(0x12345678:32,er2.l)    ;78276b28123456781210\r
+    rotxl.w @0x1234:16           ;6b1812341210\r
+    rotxl.w @0x12345678:32           ;6b38123456781210\r
+\r
+    rotxl.l er1               ;1231\r
+    rotxl.l @er1             ;010469181230\r
+    rotxl.l @(0xc:2,er1)    ;010769181230\r
+    rotxl.l @er1+            ;01046d181230\r
+    rotxl.l @-er1            ;01076d181230\r
+    rotxl.l @+er1            ;01056d181230\r
+    rotxl.l @er1-            ;01066d181230\r
+    rotxl.l @(0x1234:16,er1)      ;01046f1812341230\r
+    rotxl.l @(0x12345678:32,er1)      ;78946b28123456781230\r
+    rotxl.l @(0x1234:16,r2l.b)    ;01056f2812341230\r
+    rotxl.l @(0x1234:16,r2.w)    ;01066f2812341230\r
+    rotxl.l @(0x1234:16,er2.l)    ;01076f2812341230\r
+    rotxl.l @(0x12345678:32,r2l.b)    ;78a56b28123456781230\r
+    rotxl.l @(0x12345678:32,r2.w)    ;78a66b28123456781230\r
+    rotxl.l @(0x12345678:32,er2.l)    ;78a76b28123456781230\r
+    rotxl.l @0x1234:16           ;01046b0812341230\r
+    rotxl.l @0x12345678:32           ;01046b28123456781230\r
+\r
+    rotxl.b #2,r1h            ;1241\r
+    rotxl.b #2,@er1          ;7d101240\r
+    rotxl.b #2,@(0x3:2,er1)    ;017768181240\r
+    rotxl.b #2,@er1+         ;01746c181240\r
+    rotxl.b #2,@-er1         ;01776c181240\r
+    rotxl.b #2,@+er1         ;01756c181240\r
+    rotxl.b #2,@er1-         ;01766c181240\r
+    rotxl.b #2,@(0x1234:16,er1)   ;01746e1812341240\r
+    rotxl.b #2,@(0x12345678:32,er1)   ;78146a28123456781240\r
+    rotxl.b #2,@(0x1234:16,r2l.b) ;01756e2812341240\r
+    rotxl.b #2,@(0x1234:16,r2.w) ;01766e2812341240\r
+    rotxl.b #2,@(0x1234:16,er2.l) ;01776e2812341240\r
+    rotxl.b #2,@(0x12345678:32,r2l.b) ;78256a28123456781240\r
+    rotxl.b #2,@(0x12345678:32,r2.w) ;78266a28123456781240\r
+    rotxl.b #2,@(0x12345678:32,er2.l) ;78276a28123456781240\r
+    rotxl.b #2,@0xffffff12:8         ;7f121240\r
+    rotxl.b #2,@0x1234:16        ;6a1812341240\r
+    rotxl.b #2,@0x12345678:32        ;6a38123456781240\r
+\r
+    rotxl.w #2,r1            ;1251\r
+    rotxl.w #2,@er1          ;7d901250\r
+    rotxl.w #2,@(0x6:2,er1) ;015769181250\r
+    rotxl.w #2,@er1+         ;01546d181250\r
+    rotxl.w #2,@-er1         ;01576d181250\r
+    rotxl.w #2,@+er1         ;01556d181250\r
+    rotxl.w #2,@er1-         ;01566d181250\r
+    rotxl.w #2,@(0x1234:16,er1)   ;01546f1812341250\r
+    rotxl.w #2,@(0x12345678:32,er1)   ;78146b28123456781250\r
+    rotxl.w #2,@(0x1234:16,r2l.b) ;01556f2812341250\r
+    rotxl.w #2,@(0x1234:16,r2.w) ;01566f2812341250\r
+    rotxl.w #2,@(0x1234:16,er2.l) ;01576f2812341250\r
+    rotxl.w #2,@(0x12345678:32,r2l.b) ;78256b28123456781250\r
+    rotxl.w #2,@(0x12345678:32,r2.w) ;78266b28123456781250\r
+    rotxl.w #2,@(0x12345678:32,er2.l) ;78276b28123456781250\r
+    rotxl.w #2,@0x1234:16        ;6b1812341250\r
+    rotxl.w #2,@0x12345678:32        ;6b38123456781250\r
+\r
+    rotxl.l #2,er1            ;1271\r
+    rotxl.l #2,@er1          ;010469181270\r
+    rotxl.l #2,@(0xc:2,er1) ;010769181270\r
+    rotxl.l #2,@er1+         ;01046d181270\r
+    rotxl.l #2,@-er1         ;01076d181270\r
+    rotxl.l #2,@+er1         ;01056d181270\r
+    rotxl.l #2,@er1-         ;01066d181270\r
+    rotxl.l #2,@(0x1234:16,er1)   ;01046f1812341270\r
+    rotxl.l #2,@(0x12345678:32,er1)   ;78946b28123456781270\r
+    rotxl.l #2,@(0x1234:16,r2l.b) ;01056f2812341270\r
+    rotxl.l #2,@(0x1234:16,r2.w) ;01066f2812341270\r
+    rotxl.l #2,@(0x1234:16,er2.l) ;01076f2812341270\r
+    rotxl.l #2,@(0x12345678:32,r2l.b) ;78a56b28123456781270\r
+    rotxl.l #2,@(0x12345678:32,r2.w) ;78a66b28123456781270\r
+    rotxl.l #2,@(0x12345678:32,er2.l) ;78a76b28123456781270\r
+    rotxl.l #2,@0x1234:16        ;01046b0812341270\r
+    rotxl.l #2,@0x12345678:32        ;01046b28123456781270\r
+\r
+    rotxr.b r1h               ;1301\r
+    rotxr.b @er1             ;7d101300\r
+    rotxr.b @(0x3:2,er1)       ;017768181300\r
+    rotxr.b @er1+            ;01746c181300\r
+    rotxr.b @-er1            ;01776c181300\r
+    rotxr.b @+er1            ;01756c181300\r
+    rotxr.b @er1-            ;01766c181300\r
+    rotxr.b @(0x1234:16,er1)      ;01746e1812341300\r
+    rotxr.b @(0x12345678:32,er1)      ;78146a28123456781300\r
+    rotxr.b @(0x1234:16,r2l.b)    ;01756e2812341300\r
+    rotxr.b @(0x1234:16,r2.w)    ;01766e2812341300\r
+    rotxr.b @(0x1234:16,er2.l)    ;01776e2812341300\r
+    rotxr.b @(0x12345678:32,r2l.b)    ;78256a28123456781300\r
+    rotxr.b @(0x12345678:32,r2.w)    ;78266a28123456781300\r
+    rotxr.b @(0x12345678:32,er2.l)    ;78276a28123456781300\r
+    rotxr.b @0xffffff12:8            ;7f121300\r
+    rotxr.b @0x1234:16           ;6a1812341300\r
+    rotxr.b @0x12345678:32           ;6a38123456781300\r
+\r
+    rotxr.w r1               ;1311\r
+    rotxr.w @er1             ;7d901310\r
+    rotxr.w @(0x6:2,er1)    ;015769181310\r
+    rotxr.w @er1+            ;01546d181310\r
+    rotxr.w @-er1            ;01576d181310\r
+    rotxr.w @+er1            ;01556d181310\r
+    rotxr.w @er1-            ;01566d181310\r
+    rotxr.w @(0x1234:16,er1)      ;01546f1812341310\r
+    rotxr.w @(0x12345678:32,er1)      ;78146b28123456781310\r
+    rotxr.w @(0x1234:16,r2l.b)    ;01556f2812341310\r
+    rotxr.w @(0x1234:16,r2.w)    ;01566f2812341310\r
+    rotxr.w @(0x1234:16,er2.l)    ;01576f2812341310\r
+    rotxr.w @(0x12345678:32,r2l.b)    ;78256b28123456781310\r
+    rotxr.w @(0x12345678:32,r2.w)    ;78266b28123456781310\r
+    rotxr.w @(0x12345678:32,er2.l)    ;78276b28123456781310\r
+    rotxr.w @0x1234:16           ;6b1812341310\r
+    rotxr.w @0x12345678:32           ;6b38123456781310\r
+\r
+    rotxr.l er1               ;1331\r
+    rotxr.l @er1             ;010469181330\r
+    rotxr.l @(0xc:2,er1)    ;010769181330\r
+    rotxr.l @er1+            ;01046d181330\r
+    rotxr.l @-er1            ;01076d181330\r
+    rotxr.l @+er1            ;01056d181330\r
+    rotxr.l @er1-            ;01066d181330\r
+    rotxr.l @(0x1234:16,er1)      ;01046f1812341330\r
+    rotxr.l @(0x12345678:32,er1)      ;78946b28123456781330\r
+    rotxr.l @(0x1234:16,r2l.b)    ;01056f2812341330\r
+    rotxr.l @(0x1234:16,r2.w)    ;01066f2812341330\r
+    rotxr.l @(0x1234:16,er2.l)    ;01076f2812341330\r
+    rotxr.l @(0x12345678:32,r2l.b)    ;78a56b28123456781330\r
+    rotxr.l @(0x12345678:32,r2.w)    ;78a66b28123456781330\r
+    rotxr.l @(0x12345678:32,er2.l)    ;78a76b28123456781330\r
+    rotxr.l @0x1234:16           ;01046b0812341330\r
+    rotxr.l @0x12345678:32           ;01046b28123456781330\r
+\r
+    rotxr.b #2,r1h            ;1341\r
+    rotxr.b #2,@er1          ;7d101340\r
+    rotxr.b #2,@(0x3:2,er1)    ;017768181340\r
+    rotxr.b #2,@er1+         ;01746c181340\r
+    rotxr.b #2,@-er1         ;01776c181340\r
+    rotxr.b #2,@+er1         ;01756c181340\r
+    rotxr.b #2,@er1-         ;01766c181340\r
+    rotxr.b #2,@(0x1234:16,er1)   ;01746e1812341340\r
+    rotxr.b #2,@(0x12345678:32,er1)   ;78146a28123456781340\r
+    rotxr.b #2,@(0x1234:16,r2l.b) ;01756e2812341340\r
+    rotxr.b #2,@(0x1234:16,r2.w) ;01766e2812341340\r
+    rotxr.b #2,@(0x1234:16,er2.l) ;01776e2812341340\r
+    rotxr.b #2,@(0x12345678:32,r2l.b) ;78256a28123456781340\r
+    rotxr.b #2,@(0x12345678:32,r2.w) ;78266a28123456781340\r
+    rotxr.b #2,@(0x12345678:32,er2.l) ;78276a28123456781340\r
+    rotxr.b #2,@0xffffff12:8         ;7f121340\r
+    rotxr.b #2,@0x1234:16        ;6a1812341340\r
+    rotxr.b #2,@0x12345678:32        ;6a38123456781340\r
+\r
+    rotxr.w #2,r1            ;1351\r
+    rotxr.w #2,@er1          ;7d901350\r
+    rotxr.w #2,@(0x6:2,er1) ;015769181350\r
+    rotxr.w #2,@er1+         ;01546d181350\r
+    rotxr.w #2,@-er1         ;01576d181350\r
+    rotxr.w #2,@+er1         ;01556d181350\r
+    rotxr.w #2,@er1-         ;01566d181350\r
+    rotxr.w #2,@(0x1234:16,er1)   ;01546f1812341350\r
+    rotxr.w #2,@(0x12345678:32,er1)   ;78146b28123456781350\r
+    rotxr.w #2,@(0x1234:16,r2l.b) ;01556f2812341350\r
+    rotxr.w #2,@(0x1234:16,r2.w) ;01566f2812341350\r
+    rotxr.w #2,@(0x1234:16,er2.l) ;01576f2812341350\r
+    rotxr.w #2,@(0x12345678:32,r2l.b) ;78256b28123456781350\r
+    rotxr.w #2,@(0x12345678:32,r2.w) ;78266b28123456781350\r
+    rotxr.w #2,@(0x12345678:32,er2.l) ;78276b28123456781350\r
+    rotxr.w #2,@0x1234:16        ;6b1812341350\r
+    rotxr.w #2,@0x12345678:32        ;6b38123456781350\r
+\r
+    rotxr.l #2,er1            ;1371\r
+    rotxr.l #2,@er1          ;010469181370\r
+    rotxr.l #2,@(0xc:2,er1) ;010769181370\r
+    rotxr.l #2,@er1+         ;01046d181370\r
+    rotxr.l #2,@-er1         ;01076d181370\r
+    rotxr.l #2,@+er1         ;01056d181370\r
+    rotxr.l #2,@er1-         ;01066d181370\r
+    rotxr.l #2,@(0x1234:16,er1)   ;01046f1812341370\r
+    rotxr.l #2,@(0x12345678:32,er1)   ;78946b28123456781370\r
+    rotxr.l #2,@(0x1234:16,r2l.b) ;01056f2812341370\r
+    rotxr.l #2,@(0x1234:16,r2.w) ;01066f2812341370\r
+    rotxr.l #2,@(0x1234:16,er2.l) ;01076f2812341370\r
+    rotxr.l #2,@(0x12345678:32,r2l.b) ;78a56b28123456781370\r
+    rotxr.l #2,@(0x12345678:32,r2.w) ;78a66b28123456781370\r
+    rotxr.l #2,@(0x12345678:32,er2.l) ;78a76b28123456781370\r
+    rotxr.l #2,@0x1234:16        ;01046b0812341370\r
+    rotxr.l #2,@0x12345678:32        ;01046b28123456781370\r
+\r
+    rotl.b r1h                ;1281\r
+    rotl.b @er1              ;7d101280\r
+    rotl.b @(0x3:2,er1)        ;017768181280\r
+    rotl.b @er1+             ;01746c181280\r
+    rotl.b @-er1             ;01776c181280\r
+    rotl.b @+er1             ;01756c181280\r
+    rotl.b @er1-             ;01766c181280\r
+    rotl.b @(0x1234:16,er1)       ;01746e1812341280\r
+    rotl.b @(0x12345678:32,er1)       ;78146a28123456781280\r
+    rotl.b @(0x1234:16,r2l.b)     ;01756e2812341280\r
+    rotl.b @(0x1234:16,r2.w)     ;01766e2812341280\r
+    rotl.b @(0x1234:16,er2.l)     ;01776e2812341280\r
+    rotl.b @(0x12345678:32,r2l.b)     ;78256a28123456781280\r
+    rotl.b @(0x12345678:32,r2.w)     ;78266a28123456781280\r
+    rotl.b @(0x12345678:32,er2.l)     ;78276a28123456781280\r
+    rotl.b @0xffffff12:8             ;7f121280\r
+    rotl.b @0x1234:16            ;6a1812341280\r
+    rotl.b @0x12345678:32            ;6a38123456781280\r
+\r
+    rotl.w r1                ;1291\r
+    rotl.w @er1              ;7d901290\r
+    rotl.w @(0x6:2,er1)     ;015769181290\r
+    rotl.w @-er1             ;01576d181290\r
+    rotl.w @er1+             ;01546d181290\r
+    rotl.w @er1-             ;01566d181290\r
+    rotl.w @+er1             ;01556d181290\r
+    rotl.w @(0x1234:16,er1)       ;01546f1812341290\r
+    rotl.w @(0x12345678:32,er1)       ;78146b28123456781290\r
+    rotl.w @(0x1234:16,r2l.b)     ;01556f2812341290\r
+    rotl.w @(0x1234:16,r2.w)     ;01566f2812341290\r
+    rotl.w @(0x1234:16,er2.l)     ;01576f2812341290\r
+    rotl.w @(0x12345678:32,r2l.b)     ;78256b28123456781290\r
+    rotl.w @(0x12345678:32,r2.w)     ;78266b28123456781290\r
+    rotl.w @(0x12345678:32,er2.l)     ;78276b28123456781290\r
+    rotl.w @0x1234:16            ;6b1812341290\r
+    rotl.w @0x12345678:32            ;6b38123456781290\r
+\r
+    rotl.l er1                ;12b1\r
+    rotl.l @er1              ;0104691812b0\r
+    rotl.l @(0xc:2,er1)     ;0107691812b0\r
+    rotl.l @er1+             ;01046d1812b0\r
+    rotl.l @-er1             ;01076d1812b0\r
+    rotl.l @+er1             ;01056d1812b0\r
+    rotl.l @er1-             ;01066d1812b0\r
+    rotl.l @(0x1234:16,er1)       ;01046f18123412b0\r
+    rotl.l @(0x12345678:32,er1)       ;78946b281234567812b0\r
+    rotl.l @(0x1234:16,r2l.b)     ;01056f28123412b0\r
+    rotl.l @(0x1234:16,r2.w)     ;01066f28123412b0\r
+    rotl.l @(0x1234:16,er2.l)     ;01076f28123412b0\r
+    rotl.l @(0x12345678:32,r2l.b)     ;78a56b281234567812b0\r
+    rotl.l @(0x12345678:32,r2.w)     ;78a66b281234567812b0\r
+    rotl.l @(0x12345678:32,er2.l)     ;78a76b281234567812b0\r
+    rotl.l @0x1234:16            ;01046b08123412b0\r
+    rotl.l @0x12345678:32            ;01046b281234567812b0\r
+\r
+    rotl.b #2,r1h             ;12c1\r
+    rotl.b #2,@er1           ;7d1012c0\r
+    rotl.b #2,@(0x3:2,er1)     ;0177681812c0\r
+    rotl.b #2,@er1+          ;01746c1812c0\r
+    rotl.b #2,@-er1          ;01776c1812c0\r
+    rotl.b #2,@+er1          ;01756c1812c0\r
+    rotl.b #2,@er1-          ;01766c1812c0\r
+    rotl.b #2,@(0x1234:16,er1)    ;01746e18123412c0\r
+    rotl.b #2,@(0x12345678:32,er1)    ;78146a281234567812c0\r
+    rotl.b #2,@(0x1234:16,r2l.b)  ;01756e28123412c0\r
+    rotl.b #2,@(0x1234:16,r2.w)  ;01766e28123412c0\r
+    rotl.b #2,@(0x1234:16,er2.l)  ;01776e28123412c0\r
+    rotl.b #2,@(0x12345678:32,r2l.b)  ;78256a281234567812c0\r
+    rotl.b #2,@(0x12345678:32,r2.w)  ;78266a281234567812c0\r
+    rotl.b #2,@(0x12345678:32,er2.l)  ;78276a281234567812c0\r
+    rotl.b #2,@0xffffff12:8          ;7f1212c0\r
+    rotl.b #2,@0x1234:16         ;6a18123412c0\r
+    rotl.b #2,@0x12345678:32         ;6a381234567812c0\r
+\r
+    rotl.w #2,r1             ;12d1\r
+    rotl.w #2,@er1           ;7d9012d0\r
+    rotl.w #2,@(0x6:2,er1)  ;0157691812d0\r
+    rotl.w #2,@er1+          ;01546d1812d0\r
+    rotl.w #2,@-er1          ;01576d1812d0\r
+    rotl.w #2,@+er1          ;01556d1812d0\r
+    rotl.w #2,@er1-          ;01566d1812d0\r
+    rotl.w #2,@(0x1234:16,er1)    ;01546f18123412d0\r
+    rotl.w #2,@(0x12345678:32,er1)    ;78146b281234567812d0\r
+    rotl.w #2,@(0x1234:16,r2l.b)  ;01556f28123412d0\r
+    rotl.w #2,@(0x1234:16,r2.w)  ;01566f28123412d0\r
+    rotl.w #2,@(0x1234:16,er2.l)  ;01576f28123412d0\r
+    rotl.w #2,@(0x12345678:32,r2l.b)  ;78256b281234567812d0\r
+    rotl.w #2,@(0x12345678:32,r2.w)  ;78266b281234567812d0\r
+    rotl.w #2,@(0x12345678:32,er2.l)  ;78276b281234567812d0\r
+    rotl.w #2,@0x1234:16         ;6b18123412d0\r
+    rotl.w #2,@0x12345678:32         ;6b381234567812d0\r
+\r
+    rotl.l #2,er1             ;12f1\r
+    rotl.l #2,@er1           ;0104691812f0\r
+    rotl.l #2,@(0xc:2,er1)  ;0107691812f0\r
+    rotl.l #2,@er1+          ;01046d1812f0\r
+    rotl.l #2,@-er1          ;01076d1812f0\r
+    rotl.l #2,@+er1          ;01056d1812f0\r
+    rotl.l #2,@er1-          ;01066d1812f0\r
+    rotl.l #2,@(0x1234:16,er1)    ;01046f18123412f0\r
+    rotl.l #2,@(0x12345678:32,er1)    ;78946b281234567812f0\r
+    rotl.l #2,@(0x1234:16,r2l.b)  ;01056f28123412f0\r
+    rotl.l #2,@(0x1234:16,r2.w)  ;01066f28123412f0\r
+    rotl.l #2,@(0x1234:16,er2.l)  ;01076f28123412f0\r
+    rotl.l #2,@(0x12345678:32,r2l.b)  ;78a56b281234567812f0\r
+    rotl.l #2,@(0x12345678:32,r2.w)  ;78a66b281234567812f0\r
+    rotl.l #2,@(0x12345678:32,er2.l)  ;78a76b281234567812f0\r
+    rotl.l #2,@0x1234:16         ;01046b08123412f0\r
+    rotl.l #2,@0x12345678:32         ;01046b281234567812f0\r
+\r
+    rotr.b r1h                ;1381\r
+    rotr.b @er1              ;7d101380\r
+    rotr.b @(0x3:2,er1)        ;017768181380\r
+    rotr.b @er1+             ;01746c181380\r
+    rotr.b @-er1             ;01776c181380\r
+    rotr.b @+er1             ;01756c181380\r
+    rotr.b @er1-             ;01766c181380\r
+    rotr.b @(0x1234:16,er1)       ;01746e1812341380\r
+    rotr.b @(0x12345678:32,er1)       ;78146a28123456781380\r
+    rotr.b @(0x1234:16,r2l.b)     ;01756e2812341380\r
+    rotr.b @(0x1234:16,r2.w)     ;01766e2812341380\r
+    rotr.b @(0x1234:16,er2.l)     ;01776e2812341380\r
+    rotr.b @(0x12345678:32,r2l.b)     ;78256a28123456781380\r
+    rotr.b @(0x12345678:32,r2.w)     ;78266a28123456781380\r
+    rotr.b @(0x12345678:32,er2.l)     ;78276a28123456781380\r
+    rotr.b @0xffffff12:8             ;7f121380\r
+    rotr.b @0x1234:16            ;6a1812341380\r
+    rotr.b @0x12345678:32            ;6a38123456781380\r
+\r
+    rotr.w r1                ;1391\r
+    rotr.w @er1              ;7d901390\r
+    rotr.w @(0x6:2,er1)     ;015769181390\r
+    rotr.w @-er1             ;01576d181390\r
+    rotr.w @er1+             ;01546d181390\r
+    rotr.w @er1-             ;01566d181390\r
+    rotr.w @+er1             ;01556d181390\r
+    rotr.w @(0x1234:16,er1)       ;01546f1812341390\r
+    rotr.w @(0x12345678:32,er1)       ;78146b28123456781390\r
+    rotr.w @(0x1234:16,r2l.b)     ;01556f2812341390\r
+    rotr.w @(0x1234:16,r2.w)     ;01566f2812341390\r
+    rotr.w @(0x1234:16,er2.l)     ;01576f2812341390\r
+    rotr.w @(0x12345678:32,r2l.b)     ;78256b28123456781390\r
+    rotr.w @(0x12345678:32,r2.w)     ;78266b28123456781390\r
+    rotr.w @(0x12345678:32,er2.l)     ;78276b28123456781390\r
+    rotr.w @0x1234:16            ;6b1812341390\r
+    rotr.w @0x12345678:32            ;6b38123456781390\r
+\r
+    rotr.l er1                ;13b1\r
+    rotr.l @er1              ;0104691813b0\r
+    rotr.l @(0xc:2,er1)     ;0107691813b0\r
+    rotr.l @er1+             ;01046d1813b0\r
+    rotr.l @-er1             ;01076d1813b0\r
+    rotr.l @+er1             ;01056d1813b0\r
+    rotr.l @er1-             ;01066d1813b0\r
+    rotr.l @(0x1234:16,er1)       ;01046f18123413b0\r
+    rotr.l @(0x12345678:32,er1)       ;78946b281234567813b0\r
+    rotr.l @(0x1234:16,r2l.b)     ;01056f28123413b0\r
+    rotr.l @(0x1234:16,r2.w)     ;01066f28123413b0\r
+    rotr.l @(0x1234:16,er2.l)     ;01076f28123413b0\r
+    rotr.l @(0x12345678:32,r2l.b)     ;78a56b281234567813b0\r
+    rotr.l @(0x12345678:32,r2.w)     ;78a66b281234567813b0\r
+    rotr.l @(0x12345678:32,er2.l)     ;78a76b281234567813b0\r
+    rotr.l @0x1234:16            ;01046b08123413b0\r
+    rotr.l @0x12345678:32            ;01046b281234567813b0\r
+\r
+    rotr.b #2,r1h             ;13c1\r
+    rotr.b #2,@er1           ;7d1013c0\r
+    rotr.b #2,@(0x3:2,er1)     ;0177681813c0\r
+    rotr.b #2,@er1+          ;01746c1813c0\r
+    rotr.b #2,@-er1          ;01776c1813c0\r
+    rotr.b #2,@+er1          ;01756c1813c0\r
+    rotr.b #2,@er1-          ;01766c1813c0\r
+    rotr.b #2,@(0x1234:16,er1)    ;01746e18123413c0\r
+    rotr.b #2,@(0x12345678:32,er1)    ;78146a281234567813c0\r
+    rotr.b #2,@(0x1234:16,r2l.b)  ;01756e28123413c0\r
+    rotr.b #2,@(0x1234:16,r2.w)  ;01766e28123413c0\r
+    rotr.b #2,@(0x1234:16,er2.l)  ;01776e28123413c0\r
+    rotr.b #2,@(0x12345678:32,r2l.b)  ;78256a281234567813c0\r
+    rotr.b #2,@(0x12345678:32,r2.w)  ;78266a281234567813c0\r
+    rotr.b #2,@(0x12345678:32,er2.l)  ;78276a281234567813c0\r
+    rotr.b #2,@0xffffff12:8          ;7f1213c0\r
+    rotr.b #2,@0x1234:16         ;6a18123413c0\r
+    rotr.b #2,@0x12345678:32         ;6a381234567813c0\r
+\r
+    rotr.w #2,r1             ;13d1\r
+    rotr.w #2,@er1           ;7d9013d0\r
+    rotr.w #2,@(0x6:2,er1)  ;0157691813d0\r
+    rotr.w #2,@er1+          ;01546d1813d0\r
+    rotr.w #2,@-er1          ;01576d1813d0\r
+    rotr.w #2,@+er1          ;01556d1813d0\r
+    rotr.w #2,@er1-          ;01566d1813d0\r
+    rotr.w #2,@(0x1234:16,er1)    ;01546f18123413d0\r
+    rotr.w #2,@(0x12345678:32,er1)    ;78146b281234567813d0\r
+    rotr.w #2,@(0x1234:16,r2l.b)  ;01556f28123413d0\r
+    rotr.w #2,@(0x1234:16,r2.w)  ;01566f28123413d0\r
+    rotr.w #2,@(0x1234:16,er2.l)  ;01576f28123413d0\r
+    rotr.w #2,@(0x12345678:32,r2l.b)  ;78256b281234567813d0\r
+    rotr.w #2,@(0x12345678:32,r2.w)  ;78266b281234567813d0\r
+    rotr.w #2,@(0x12345678:32,er2.l)  ;78276b281234567813d0\r
+    rotr.w #2,@0x1234:16         ;6b18123413d0\r
+    rotr.w #2,@0x12345678:32         ;6b381234567813d0\r
+\r
+    rotr.l #2,er1             ;13f1\r
+    rotr.l #2,@er1           ;0104691813f0\r
+    rotr.l #2,@(0xc:2,er1)  ;0107691813f0\r
+    rotr.l #2,@er1+          ;01046d1813f0\r
+    rotr.l #2,@-er1          ;01076d1813f0\r
+    rotr.l #2,@+er1          ;01056d1813f0\r
+    rotr.l #2,@er1-          ;01066d1813f0\r
+    rotr.l #2,@(0x1234:16,er1)    ;01046f18123413f0\r
+    rotr.l #2,@(0x12345678:32,er1)    ;78946b281234567813f0\r
+    rotr.l #2,@(0x1234:16,r2l.b)  ;01056f28123413f0\r
+    rotr.l #2,@(0x1234:16,r2.w)  ;01066f28123413f0\r
+    rotr.l #2,@(0x1234:16,er2.l)  ;01076f28123413f0\r
+    rotr.l #2,@(0x12345678:32,r2l.b)  ;78a56b281234567813f0\r
+    rotr.l #2,@(0x12345678:32,r2.w)  ;78a66b281234567813f0\r
+    rotr.l #2,@(0x12345678:32,er2.l)  ;78a76b281234567813f0\r
+    rotr.l #2,@0x1234:16         ;01046b08123413f0\r
+    rotr.l #2,@0x12345678:32         ;01046b281234567813f0\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t12_bit.exp b/gdb/testsuite/gdb.disasm/t12_bit.exp
new file mode 100644 (file)
index 0000000..c59cdc8
--- /dev/null
@@ -0,0 +1,330 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t12_bit"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+gdb_test "x /i _start" "bset\t#0x7,r1h" \
+       "bset #0x7,r1h"
+gdb_test "x" "bset\t#0x7,@er1" \
+       "bset #0x7,@er1"
+gdb_test "x" "bset\t#0x7,@0x12(:8|)" \
+       "bset #0x7,@0x12:8"
+gdb_test "x" "bset\t#0x7,@0x1234(:16|)" \
+       "bset #0x7,@0x1234:16"
+gdb_test "x" "bset\t#0x7,@0x12345678(:32|)" \
+       "bset #0x7,@0x12345678:32"
+gdb_test "x" "bset\tr3h,r1h" \
+       "bset r3h,r1h"
+gdb_test "x" "bset\tr3h,@er1" \
+       "bset r3h,@er1"
+gdb_test "x" "bset\tr3h,@0x12(:8|)" \
+       "bset r3h,@0x12:8"
+gdb_test "x" "bset\tr3h,@0x1234(:16|)" \
+       "bset r3h,@0x1234:16"
+gdb_test "x" "bset\tr3h,@0x12345678(:32|)" \
+       "bset r3h,@0x12345678:32"
+gdb_test "x" "bset/eq\t#0x7,@er1" \
+       "bset/eq #0x7,@er1"
+gdb_test "x" "bset/eq\t#0x7,@0x12(:8|)" \
+       "bset/eq #0x7,@0x12:8"
+gdb_test "x" "bset/eq\t#0x7,@0x1234(:16|)" \
+       "bset/eq #0x7,@0x1234:16"
+gdb_test "x" "bset/eq\t#0x7,@0x12345678(:32|)" \
+       "bset/eq #0x7,@0x12345678:32"
+gdb_test "x" "bset/eq\tr3h,@er1" \
+       "bset/eq r3h,@er1"
+gdb_test "x" "bset/eq\tr3h,@0x12(:8|)" \
+       "bset/eq r3h,@0x12:8"
+gdb_test "x" "bset/eq\tr3h,@0x1234(:16|)" \
+       "bset/eq r3h,@0x1234:16"
+gdb_test "x" "bset/eq\tr3h,@0x12345678(:32|)" \
+       "bset/eq r3h,@0x12345678:32"
+gdb_test "x" "bset/ne\t#0x7,@er1" \
+       "bset/ne #0x7,@er1"
+gdb_test "x" "bset/ne\t#0x7,@0x12(:8|)" \
+       "bset/ne #0x7,@0x12:8"
+gdb_test "x" "bset/ne\t#0x7,@0x1234(:16|)" \
+       "bset/ne #0x7,@0x1234:16"
+gdb_test "x" "bset/ne\t#0x7,@0x12345678(:32|)" \
+       "bset/ne #0x7,@0x12345678:32"
+gdb_test "x" "bset/ne\tr3h,@er1" \
+       "bset/ne r3h,@er1"
+gdb_test "x" "bset/ne\tr3h,@0x12(:8|)" \
+       "bset/ne r3h,@0x12:8"
+gdb_test "x" "bset/ne\tr3h,@0x1234(:16|)" \
+       "bset/ne r3h,@0x1234:16"
+gdb_test "x" "bset/ne\tr3h,@0x12345678(:32|)" \
+       "bset/ne r3h,@0x12345678:32"
+gdb_test "x" "bnot\t#0x7,r1h" \
+       "bnot #0x7,r1h"
+gdb_test "x" "bnot\t#0x7,@er1" \
+       "bnot #0x7,@er1"
+gdb_test "x" "bnot\t#0x7,@0x12(:8|)" \
+       "bnot #0x7,@0x12:8"
+gdb_test "x" "bnot\t#0x7,@0x1234(:16|)" \
+       "bnot #0x7,@0x1234:16"
+gdb_test "x" "bnot\t#0x7,@0x12345678(:32|)" \
+       "bnot #0x7,@0x12345678:32"
+gdb_test "x" "bnot\tr3h,r1h" \
+       "bnot r3h,r1h"
+gdb_test "x" "bnot\tr3h,@er1" \
+       "bnot r3h,@er1"
+gdb_test "x" "bnot\tr3h,@0x12(:8|)" \
+       "bnot r3h,@0x12:8"
+gdb_test "x" "bnot\tr3h,@0x1234(:16|)" \
+       "bnot r3h,@0x1234:16"
+gdb_test "x" "bnot\tr3h,@0x12345678(:32|)" \
+       "bnot r3h,@0x12345678:32"
+gdb_test "x" "bclr\t#0x7,r1h" \
+       "bclr #0x7,r1h"
+gdb_test "x" "bclr\t#0x7,@er1" \
+       "bclr #0x7,@er1"
+gdb_test "x" "bclr\t#0x7,@0x12(:8|)" \
+       "bclr #0x7,@0x12:8"
+gdb_test "x" "bclr\t#0x7,@0x1234(:16|)" \
+       "bclr #0x7,@0x1234:16"
+gdb_test "x" "bclr\t#0x7,@0x12345678(:32|)" \
+       "bclr #0x7,@0x12345678:32"
+gdb_test "x" "bclr\tr3h,r1h" \
+       "bclr r3h,r1h"
+gdb_test "x" "bclr\tr3h,@er1" \
+       "bclr r3h,@er1"
+gdb_test "x" "bclr\tr3h,@0x12(:8|)" \
+       "bclr r3h,@0x12:8"
+gdb_test "x" "bclr\tr3h,@0x1234(:16|)" \
+       "bclr r3h,@0x1234:16"
+gdb_test "x" "bclr\tr3h,@0x12345678(:32|)" \
+       "bclr r3h,@0x12345678:32"
+gdb_test "x" "bclr/eq\t#0x7,@er1" \
+       "bclr/eq #0x7,@er1"
+gdb_test "x" "bclr/eq\t#0x7,@0x12(:8|)" \
+       "bclr/eq #0x7,@0x12:8"
+gdb_test "x" "bclr/eq\t#0x7,@0x1234(:16|)" \
+       "bclr/eq #0x7,@0x1234:16"
+gdb_test "x" "bclr/eq\t#0x7,@0x12345678(:32|)" \
+       "bclr/eq #0x7,@0x12345678:32"
+gdb_test "x" "bclr/eq\tr3h,@er1" \
+       "bclr/eq r3h,@er1"
+gdb_test "x" "bclr/eq\tr3h,@0x12(:8|)" \
+       "bclr/eq r3h,@0x12:8"
+gdb_test "x" "bclr/eq\tr3h,@0x1234(:16|)" \
+       "bclr/eq r3h,@0x1234:16"
+gdb_test "x" "bclr/eq\tr3h,@0x12345678(:32|)" \
+       "bclr/eq r3h,@0x12345678:32"
+gdb_test "x" "bclr/ne\t#0x7,@er1" \
+       "bclr/ne #0x7,@er1"
+gdb_test "x" "bclr/ne\t#0x7,@0x12(:8|)" \
+       "bclr/ne #0x7,@0x12:8"
+gdb_test "x" "bclr/ne\t#0x7,@0x1234(:16|)" \
+       "bclr/ne #0x7,@0x1234:16"
+gdb_test "x" "bclr/ne\t#0x7,@0x12345678(:32|)" \
+       "bclr/ne #0x7,@0x12345678:32"
+gdb_test "x" "bclr/ne\tr3h,@er1" \
+       "bclr/ne r3h,@er1"
+gdb_test "x" "bclr/ne\tr3h,@0x12(:8|)" \
+       "bclr/ne r3h,@0x12:8"
+gdb_test "x" "bclr/ne\tr3h,@0x1234(:16|)" \
+       "bclr/ne r3h,@0x1234:16"
+gdb_test "x" "bclr/ne\tr3h,@0x12345678(:32|)" \
+       "bclr/ne r3h,@0x12345678:32"
+gdb_test "x" "btst\t#0x7,r1h" \
+       "btst #0x7,r1h"
+gdb_test "x" "btst\t#0x7,@er1" \
+       "btst #0x7,@er1"
+gdb_test "x" "btst\t#0x7,@0x12(:8|)" \
+       "btst #0x7,@0x12:8"
+gdb_test "x" "btst\t#0x7,@0x1234(:16|)" \
+       "btst #0x7,@0x1234:16"
+gdb_test "x" "btst\t#0x7,@0x12345678(:32|)" \
+       "btst #0x7,@0x12345678:32"
+gdb_test "x" "btst\tr3h,r1h" \
+       "btst r3h,r1h"
+gdb_test "x" "btst\tr3h,@er1" \
+       "btst r3h,@er1"
+gdb_test "x" "btst\tr3h,@0x12(:8|)" \
+       "btst r3h,@0x12:8"
+gdb_test "x" "btst\tr3h,@0x1234(:16|)" \
+       "btst r3h,@0x1234:16"
+gdb_test "x" "btst\tr3h,@0x12345678(:32|)" \
+       "btst r3h,@0x12345678:32"
+gdb_test "x" "bor\t#0x7,r1h" \
+       "bor #0x7,r1h"
+gdb_test "x" "bor\t#0x7,@er1" \
+       "bor #0x7,@er1"
+gdb_test "x" "bor\t#0x7,@0x12(:8|)" \
+       "bor #0x7,@0x12:8"
+gdb_test "x" "bor\t#0x7,@0x1234(:16|)" \
+       "bor #0x7,@0x1234:16"
+gdb_test "x" "bor\t#0x7,@0x12345678(:32|)" \
+       "bor #0x7,@0x12345678:32"
+gdb_test "x" "bior\t#0x7,r1h" \
+       "bior #0x7,r1h"
+gdb_test "x" "bior\t#0x7,@er1" \
+       "bior #0x7,@er1"
+gdb_test "x" "bior\t#0x7,@0x12(:8|)" \
+       "bior #0x7,@0x12:8"
+gdb_test "x" "bior\t#0x7,@0x1234(:16|)" \
+       "bior #0x7,@0x1234:16"
+gdb_test "x" "bior\t#0x7,@0x12345678(:32|)" \
+       "bior #0x7,@0x12345678:32"
+gdb_test "x" "bxor\t#0x7,r1h" \
+       "bxor #0x7,r1h"
+gdb_test "x" "bxor\t#0x7,@er1" \
+       "bxor #0x7,@er1"
+gdb_test "x" "bxor\t#0x7,@0x12(:8|)" \
+       "bxor #0x7,@0x12:8"
+gdb_test "x" "bxor\t#0x7,@0x1234(:16|)" \
+       "bxor #0x7,@0x1234:16"
+gdb_test "x" "bxor\t#0x7,@0x12345678(:32|)" \
+       "bxor #0x7,@0x12345678:32"
+gdb_test "x" "bixor\t#0x7,r1h" \
+       "bixor #0x7,r1h"
+gdb_test "x" "bixor\t#0x7,@er1" \
+       "bixor #0x7,@er1"
+gdb_test "x" "bixor\t#0x7,@0x12(:8|)" \
+       "bixor #0x7,@0x12:8"
+gdb_test "x" "bixor\t#0x7,@0x1234(:16|)" \
+       "bixor #0x7,@0x1234:16"
+gdb_test "x" "bixor\t#0x7,@0x12345678(:32|)" \
+       "bixor #0x7,@0x12345678:32"
+gdb_test "x" "band\t#0x7,r1h" \
+       "band #0x7,r1h"
+gdb_test "x" "band\t#0x7,@er1" \
+       "band #0x7,@er1"
+gdb_test "x" "band\t#0x7,@0x12(:8|)" \
+       "band #0x7,@0x12:8"
+gdb_test "x" "band\t#0x7,@0x1234(:16|)" \
+       "band #0x7,@0x1234:16"
+gdb_test "x" "band\t#0x7,@0x12345678(:32|)" \
+       "band #0x7,@0x12345678:32"
+gdb_test "x" "biand\t#0x7,r1h" \
+       "biand #0x7,r1h"
+gdb_test "x" "biand\t#0x7,@er1" \
+       "biand #0x7,@er1"
+gdb_test "x" "biand\t#0x7,@0x12(:8|)" \
+       "biand #0x7,@0x12:8"
+gdb_test "x" "biand\t#0x7,@0x1234(:16|)" \
+       "biand #0x7,@0x1234:16"
+gdb_test "x" "biand\t#0x7,@0x12345678(:32|)" \
+       "biand #0x7,@0x12345678:32"
+gdb_test "x" "bld\t#0x7,r1h" \
+       "bld #0x7,r1h"
+gdb_test "x" "bld\t#0x7,@er1" \
+       "bld #0x7,@er1"
+gdb_test "x" "bld\t#0x7,@0x12(:8|)" \
+       "bld #0x7,@0x12:8"
+gdb_test "x" "bld\t#0x7,@0x1234(:16|)" \
+       "bld #0x7,@0x1234:16"
+gdb_test "x" "bld\t#0x7,@0x12345678(:32|)" \
+       "bld #0x7,@0x12345678:32"
+gdb_test "x" "bild\t#0x7,r1h" \
+       "bild #0x7,r1h"
+gdb_test "x" "bild\t#0x7,@er1" \
+       "bild #0x7,@er1"
+gdb_test "x" "bild\t#0x7,@0x12(:8|)" \
+       "bild #0x7,@0x12:8"
+gdb_test "x" "bild\t#0x7,@0x1234(:16|)" \
+       "bild #0x7,@0x1234:16"
+gdb_test "x" "bild\t#0x7,@0x12345678(:32|)" \
+       "bild #0x7,@0x12345678:32"
+gdb_test "x" "bst\t#0x7,r1h" \
+       "bst #0x7,r1h"
+gdb_test "x" "bst\t#0x7,@er1" \
+       "bst #0x7,@er1"
+gdb_test "x" "bst\t#0x7,@0x12(:8|)" \
+       "bst #0x7,@0x12:8"
+gdb_test "x" "bst\t#0x7,@0x1234(:16|)" \
+       "bst #0x7,@0x1234:16"
+gdb_test "x" "bst\t#0x7,@0x12345678(:32|)" \
+       "bst #0x7,@0x12345678:32"
+gdb_test "x" "bstz\t#0x7,@er1" \
+       "bstz #0x7,@er1"
+gdb_test "x" "bstz\t#0x7,@0x12(:8|)" \
+       "bstz #0x7,@0x12:8"
+gdb_test "x" "bstz\t#0x7,@0x1234(:16|)" \
+       "bstz #0x7,@0x1234:16"
+gdb_test "x" "bstz\t#0x7,@0x12345678(:32|)" \
+       "bstz #0x7,@0x12345678:32"
+gdb_test "x" "bist\t#0x7,r1h" \
+       "bist #0x7,r1h"
+gdb_test "x" "bist\t#0x7,@er1" \
+       "bist #0x7,@er1"
+gdb_test "x" "bist\t#0x7,@0x12(:8|)" \
+       "bist #0x7,@0x12:8"
+gdb_test "x" "bist\t#0x7,@0x1234(:16|)" \
+       "bist #0x7,@0x1234:16"
+gdb_test "x" "bist\t#0x7,@0x12345678(:32|)" \
+       "bist #0x7,@0x12345678:32"
+gdb_test "x" "bistz\t#0x7,@er1" \
+       "bistz #0x7,@er1"
+gdb_test "x" "bistz\t#0x7,@0x12(:8|)" \
+       "bistz #0x7,@0x12:8"
+gdb_test "x" "bistz\t#0x7,@0x1234(:16|)" \
+       "bistz #0x7,@0x1234:16"
+gdb_test "x" "bistz\t#0x7,@0x12345678(:32|)" \
+       "bistz #0x7,@0x12345678:32"
+gdb_test "x" "bfld\t#0x34(:8|),@er1,r3h" \
+       "bfld #0x34:8,@er1,r3h"
+gdb_test "x" "bfld\t#0x34(:8|),@0x12(:8|),r3h" \
+       "bfld #0x34:8,@0x12:8,r3h"
+gdb_test "x" "bfld\t#0x34(:8|),@0x1234(:16|),r3h" \
+       "bfld #0x34:8,@0x1234:16,r3h"
+gdb_test "x" "bfld\t#0x34(:8|),@0x12345678(:32|),r3h" \
+       "bfld #0x34:8,@0x12345678:32,r3h"
+gdb_test "x" "bfst\tr3h,#0x34(:8|),@er1" \
+       "bfst r3h,#0x34:8,@er1"
+gdb_test "x" "bfst\tr3h,#0x34(:8|),@0x12(:8|)" \
+       "bfst r3h,#0x34:8,@0x12:8"
+gdb_test "x" "bfst\tr3h,#0x34(:8|),@0x1234(:16|)" \
+       "bfst r3h,#0x34:8,@0x1234:16"
+gdb_test "x" "bfst\tr3h,#0x34(:8|),@0x12345678(:32|)" \
+       "bfst r3h,#0x34:8,@0x12345678:32"
diff --git a/gdb/testsuite/gdb.disasm/t12_bit.s b/gdb/testsuite/gdb.disasm/t12_bit.s
new file mode 100644 (file)
index 0000000..cd22f2f
--- /dev/null
@@ -0,0 +1,176 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;bit\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .global _start\r
+_start:\r
+    bset #0x7,r1h               ;7071\r
+    bset #0x7,@er1             ;7d107070\r
+    bset #0x7,@0xffffff12:8            ;7f127070\r
+    bset #0x7,@0x1234:16           ;6a1812347070\r
+    bset #0x7,@0x12345678:32           ;6a38123456787070\r
+\r
+    bset r3h,r1h               ;6031\r
+    bset r3h,@er1             ;7d106030\r
+    bset r3h,@0xffffff12:8            ;7f126030\r
+    bset r3h,@0x1234:16           ;6a1812346030\r
+    bset r3h,@0x12345678:32           ;6a38123456786030\r
+\r
+    bset/eq #0x7,@er1             ;7d107077\r
+    bset/eq #0x7,@0xffffff12:8            ;7f127077\r
+    bset/eq #0x7,@0x1234:16           ;6a1812347077\r
+    bset/eq #0x7,@0x12345678:32           ;6a38123456787077\r
+\r
+    bset/eq r3h,@er1             ;7d106037\r
+    bset/eq r3h,@0xffffff12:8            ;7f126037\r
+    bset/eq r3h,@0x1234:16           ;6a1812346037\r
+    bset/eq r3h,@0x12345678:32           ;6a38123456786037\r
+\r
+    bset/ne #0x7,@er1             ;7d107076\r
+    bset/ne #0x7,@0xffffff12:8            ;7f127076\r
+    bset/ne #0x7,@0x1234:16           ;6a1812347076\r
+    bset/ne #0x7,@0x12345678:32           ;6a38123456787076\r
+\r
+    bset/ne r3h,@er1             ;7d106036\r
+    bset/ne r3h,@0xffffff12:8            ;7f126036\r
+    bset/ne r3h,@0x1234:16           ;6a1812346036\r
+    bset/ne r3h,@0x12345678:32           ;6a38123456786036\r
+\r
+    bnot #0x7,r1h               ;7171\r
+    bnot #0x7,@er1             ;7d107170\r
+    bnot #0x7,@0xffffff12:8            ;7f127170\r
+    bnot #0x7,@0x1234:16           ;6a1812347170\r
+    bnot #0x7,@0x12345678:32           ;6a38123456787170\r
+\r
+    bnot r3h,r1h               ;6131\r
+    bnot r3h,@er1             ;7d106130\r
+    bnot r3h,@0xffffff12:8            ;7f126130\r
+    bnot r3h,@0x1234:16           ;6a1812346130\r
+    bnot r3h,@0x12345678:32           ;6a38123456786130\r
+\r
+    bclr #0x7,r1h               ;7271\r
+    bclr #0x7,@er1             ;7d107270\r
+    bclr #0x7,@0xffffff12:8            ;7f127270\r
+    bclr #0x7,@0x1234:16           ;6a1812347270\r
+    bclr #0x7,@0x12345678:32           ;6a38123456787270\r
+\r
+    bclr r3h,r1h               ;6231\r
+    bclr r3h,@er1             ;7d106230\r
+    bclr r3h,@0xffffff12:8            ;7f126230\r
+    bclr r3h,@0x1234:16           ;6a1812346230\r
+    bclr r3h,@0x12345678:32           ;6a38123456786230\r
+\r
+    bclr/eq #0x7,@er1             ;7d107277\r
+    bclr/eq #0x7,@0xffffff12:8            ;7f127277\r
+    bclr/eq #0x7,@0x1234:16           ;6a1812347277\r
+    bclr/eq #0x7,@0x12345678:32           ;6a38123456787277\r
+\r
+    bclr/eq r3h,@er1             ;7d106237\r
+    bclr/eq r3h,@0xffffff12:8            ;7f126237\r
+    bclr/eq r3h,@0x1234:16           ;6a1812346237\r
+    bclr/eq r3h,@0x12345678:32           ;6a38123456786237\r
+\r
+    bclr/ne #0x7,@er1             ;7d107276\r
+    bclr/ne #0x7,@0xffffff12:8            ;7f127276\r
+    bclr/ne #0x7,@0x1234:16           ;6a1812347276\r
+    bclr/ne #0x7,@0x12345678:32           ;6a38123456787276\r
+\r
+    bclr/ne r3h,@er1             ;7d106236\r
+    bclr/ne r3h,@0xffffff12:8            ;7f126236\r
+    bclr/ne r3h,@0x1234:16           ;6a1812346236\r
+    bclr/ne r3h,@0x12345678:32           ;6a38123456786236\r
+\r
+    btst #0x7,r1h               ;7371\r
+    btst #0x7,@er1             ;7c107370\r
+    btst #0x7,@0xffffff12:8            ;7e127370\r
+    btst #0x7,@0x1234:16           ;6a1012347370\r
+    btst #0x7,@0x12345678:32           ;6a30123456787370\r
+\r
+    btst r3h,r1h               ;6331\r
+    btst r3h,@er1             ;7c106330\r
+    btst r3h,@0xffffff12:8            ;7e126330\r
+    btst r3h,@0x1234:16           ;6a1012346330\r
+    btst r3h,@0x12345678:32           ;6a30123456786330\r
+\r
+    bor #0x7,r1h                ;7471\r
+    bor #0x7,@er1              ;7c107470\r
+    bor #0x7,@0xffffff12:8             ;7e127470\r
+    bor #0x7,@0x1234:16            ;6a1012347470\r
+    bor #0x7,@0x12345678:32            ;6a30123456787470\r
+\r
+    bior #0x7,r1h               ;74f1\r
+    bior #0x7,@er1             ;7c1074f0\r
+    bior #0x7,@0xffffff12:8            ;7e1274f0\r
+    bior #0x7,@0x1234:16           ;6a10123474f0\r
+    bior #0x7,@0x12345678:32           ;6a301234567874f0\r
+\r
+    bxor #0x7,r1h               ;7571\r
+    bxor #0x7,@er1             ;7c107570\r
+    bxor #0x7,@0xffffff12:8            ;7e127570\r
+    bxor #0x7,@0x1234:16           ;6a1012347570\r
+    bxor #0x7,@0x12345678:32           ;6a30123456787570\r
+\r
+    bixor #0x7,r1h              ;75f1\r
+    bixor #0x7,@er1            ;7c1075f0\r
+    bixor #0x7,@0xffffff12:8           ;7e1275f0\r
+    bixor #0x7,@0x1234:16          ;6a10123475f0\r
+    bixor #0x7,@0x12345678:32          ;6a301234567875f0\r
+\r
+    band #0x7,r1h               ;7671\r
+    band #0x7,@er1             ;7c107670\r
+    band #0x7,@0xffffff12:8            ;7e127670\r
+    band #0x7,@0x1234:16           ;6a1012347670\r
+    band #0x7,@0x12345678:32           ;6a30123456787670\r
+\r
+    biand #0x7,r1h              ;76f1\r
+    biand #0x7,@er1            ;7c1076f0\r
+    biand #0x7,@0xffffff12:8           ;7e1276f0\r
+    biand #0x7,@0x1234:16          ;6a10123476f0\r
+    biand #0x7,@0x12345678:32          ;6a301234567876f0\r
+\r
+    bld #0x7,r1h                ;7771\r
+    bld #0x7,@er1              ;7c107770\r
+    bld #0x7,@0xffffff12:8             ;7e127770\r
+    bld #0x7,@0x1234:16            ;6a1012347770\r
+    bld #0x7,@0x12345678:32            ;6a30123456787770\r
+\r
+    bild #0x7,r1h               ;77f1\r
+    bild #0x7,@er1             ;7c1077f0\r
+    bild #0x7,@0xffffff12:8            ;7e1277f0\r
+    bild #0x7,@0x1234:16           ;6a10123477f0\r
+    bild #0x7,@0x12345678:32           ;6a301234567877f0\r
+\r
+    bst #0x7,r1h                ;6771\r
+    bst #0x7,@er1              ;7d106770\r
+    bst #0x7,@0xffffff12:8             ;7f126770\r
+    bst #0x7,@0x1234:16            ;6a1812346770\r
+    bst #0x7,@0x12345678:32            ;6a38123456786770\r
+\r
+    bstz #0x7,@er1              ;7d106777\r
+    bstz #0x7,@0xffffff12:8             ;7f126777\r
+    bstz #0x7,@0x1234:16            ;6a1812346777\r
+    bstz #0x7,@0x12345678:32            ;6a38123456786777\r
+\r
+    bist #0x7,r1h               ;67f1\r
+    bist #0x7,@er1             ;7d1067f0\r
+    bist #0x7,@0xffffff12:8            ;7f1267f0\r
+    bist #0x7,@0x1234:16           ;6a18123467f0\r
+    bist #0x7,@0x12345678:32           ;6a381234567867f0\r
+\r
+    bistz #0x7,@er1             ;7d1067f7\r
+    bistz #0x7,@0xffffff12:8            ;7f1267f7\r
+    bistz #0x7,@0x1234:16           ;6a18123467f7\r
+    bistz #0x7,@0x12345678:32           ;6a381234567867f7\r
+\r
+    bfld #0x34:8,@er1,r3h             ;7c10f334\r
+    bfld #0x34:8,@0xffffff12:8,r3h            ;7e12f334\r
+    bfld #0x34:8,@0x1234:16,r3h           ;6a101234f334\r
+    bfld #0x34:8,@0x12345678:32,r3h           ;6a3012345678f334\r
+\r
+    bfst r3h,#0x34:8,@er1             ;7d10f334\r
+    bfst r3h,#0x34:8,@0xffffff12:8            ;7f12f334\r
+    bfst r3h,#0x34:8,@0x1234:16           ;6a181234f334\r
+    bfst r3h,#0x34:8,@0x12345678:32           ;6a3812345678f334\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.disasm/t13_otr.exp b/gdb/testsuite/gdb.disasm/t13_otr.exp
new file mode 100644 (file)
index 0000000..5c01842
--- /dev/null
@@ -0,0 +1,306 @@
+# Copyright (C) 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# This file was written by Michael Snyder (msnyder@redhat.com)
+
+if $tracelevel then {
+       strace $tracelevel
+}
+
+if ![istarget "h8300*-*-*"] {
+    verbose "Tests ignored for all but h8300s based targets."
+    return
+}
+
+set prms_id 0
+set bug_id 0
+
+set testfile "t13_otr"
+set srcfile ${srcdir}/${subdir}/${testfile}.s
+set objfile ${objdir}/${subdir}/${testfile}.o
+set binfile ${objdir}/${subdir}/${testfile}.x
+
+set asm-flags "";
+set link-flags "-m h8300sxelf";
+
+
+if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
+}
+
+if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
+     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
+}
+
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load $binfile
+
+global hex
+
+gdb_test "x /i _start" "bra\t.\\+18 \\($hex\\)" \
+       "bra .+18"
+gdb_test "x" "brn\t.\\+18 \\($hex\\)" \
+       "brn .+18"
+gdb_test "x" "bhi\t.\\+18 \\($hex\\)" \
+       "bhi .+18"
+gdb_test "x" "bls\t.\\+18 \\($hex\\)" \
+       "bls .+18"
+gdb_test "x" "bcc\t.\\+18 \\($hex\\)" \
+       "bcc .+18"
+gdb_test "x" "bcs\t.\\+18 \\($hex\\)" \
+       "bcs .+18"
+gdb_test "x" "bne\t.\\+18 \\($hex\\)" \
+       "bne .+18"
+gdb_test "x" "beq\t.\\+18 \\($hex\\)" \
+       "beq .+18"
+gdb_test "x" "bvc\t.\\+18 \\($hex\\)" \
+       "bvc .+18"
+gdb_test "x" "bvs\t.\\+18 \\($hex\\)" \
+       "bvs .+18"
+gdb_test "x" "bpl\t.\\+18 \\($hex\\)" \
+       "bpl .+18"
+gdb_test "x" "bmi\t.\\+18 \\($hex\\)" \
+       "bmi .+18"
+gdb_test "x" "bge\t.\\+18 \\($hex\\)" \
+       "bge .+18"
+gdb_test "x" "blt\t.\\+18 \\($hex\\)" \
+       "blt .+18"
+gdb_test "x" "bgt\t.\\+18 \\($hex\\)" \
+       "bgt .+18"
+gdb_test "x" "ble\t.\\+18 \\($hex\\)" \
+       "ble .+18"
+gdb_test "x" "bra\t.\\+4660 \\($hex\\)" \
+       "bra .+4660"
+gdb_test "x" "brn\t.\\+4660 \\($hex\\)" \
+       "brn .+4660"
+gdb_test "x" "bhi\t.\\+4660 \\($hex\\)" \
+       "bhi .+4660"
+gdb_test "x" "bls\t.\\+4660 \\($hex\\)" \
+       "bls .+4660"
+gdb_test "x" "bcc\t.\\+4660 \\($hex\\)" \
+       "bcc .+4660"
+gdb_test "x" "bcs\t.\\+4660 \\($hex\\)" \
+       "bcs .+4660"
+gdb_test "x" "bne\t.\\+4660 \\($hex\\)" \
+       "bne .+4660"
+gdb_test "x" "beq\t.\\+4660 \\($hex\\)" \
+       "beq .+4660"
+gdb_test "x" "bvc\t.\\+4660 \\($hex\\)" \
+       "bvc .+4660"
+gdb_test "x" "bvs\t.\\+4660 \\($hex\\)" \
+       "bvs .+4660"
+gdb_test "x" "bpl\t.\\+4660 \\($hex\\)" \
+       "bpl .+4660"
+gdb_test "x" "bmi\t.\\+4660 \\($hex\\)" \
+       "bmi .+4660"
+gdb_test "x" "bge\t.\\+4660 \\($hex\\)" \
+       "bge .+4660"
+gdb_test "x" "blt\t.\\+4660 \\($hex\\)" \
+       "blt .+4660"
+gdb_test "x" "bgt\t.\\+4660 \\($hex\\)" \
+       "bgt .+4660"
+gdb_test "x" "ble\t.\\+4660 \\($hex\\)" \
+       "ble .+4660"
+gdb_test "x" "bra/s\t.\\+18 \\($hex\\)" \
+       "bra/s .+18"
+gdb_test "x" "nop\[ \t\]*" \
+       "nop"
+gdb_test "x" "bra/bc\t#0x7,@er2,.\\+18 \\($hex\\)" \
+       "bra/bc #0x7,@er2,.+18"
+gdb_test "x" "bra/bc\t#0x7,@0x9a(:8|),.\\+18 \\($hex\\)" \
+       "bra/bc #0x7,@0x9a:8,.+18"
+gdb_test "x" "bra/bc\t#0x7,@0x1234(:16|),.\\+18 \\($hex\\)" \
+       "bra/bc #0x7,@0x1234:16,.+18"
+gdb_test "x" "bra/bc\t#0x7,@0x12345678(:32|),.\\+18 \\($hex\\)" \
+       "bra/bc #0x7,@0x12345678:32,.+18"
+gdb_test "x" "bra/bc\t#0x7,@er2,.\\+4660 \\($hex\\)" \
+       "bra/bc #0x7,@er2,.+4660"
+gdb_test "x" "bra/bc\t#0x7,@0x12(:8|),.\\+4660 \\($hex\\)" \
+       "bra/bc #0x7,@0x12:8,.+4660"
+gdb_test "x" "bra/bc\t#0x7,@0x9abc(:16|),.\\+4660 \\($hex\\)" \
+       "bra/bc #0x7,@0x9abc:16,.+4660"
+gdb_test "x" "bra/bc\t#0x7,@0x12345678(:32|),.\\+4660 \\($hex\\)" \
+       "bra/bc #0x7,@0x12345678:32,.+4660"
+gdb_test "x" "bra/bs\t#0x7,@er2,.\\+18 \\($hex\\)" \
+       "bra/bs #0x7,@er2,.+18"
+gdb_test "x" "bra/bs\t#0x7,@0x9a(:8|),.\\+18 \\($hex\\)" \
+       "bra/bs #0x7,@0x9a:8,.+18"
+gdb_test "x" "bra/bs\t#0x7,@0x1234(:16|),.\\+18 \\($hex\\)" \
+       "bra/bs #0x7,@0x1234:16,.+18"
+gdb_test "x" "bra/bs\t#0x7,@0x12345678(:32|),.\\+18 \\($hex\\)" \
+       "bra/bs #0x7,@0x12345678:32,.+18"
+gdb_test "x" "bra/bs\t#0x7,@er2,.\\+4660 \\($hex\\)" \
+       "bra/bs #0x7,@er2,.+4660"
+gdb_test "x" "bra/bs\t#0x7,@0x12(:8|),.\\+4660 \\($hex\\)" \
+       "bra/bs #0x7,@0x12:8,.+4660"
+gdb_test "x" "bra/bs\t#0x7,@0x9abc(:16|),.\\+4660 \\($hex\\)" \
+       "bra/bs #0x7,@0x9abc:16,.+4660"
+gdb_test "x" "bra/bs\t#0x7,@0x12345678(:32|),.\\+4660 \\($hex\\)" \
+       "bra/bs #0x7,@0x12345678:32,.+4660"
+gdb_test "x" "bsr/bc\t#0x7,@er2,.\\+4660 \\($hex\\)" \
+       "bsr/bc #0x7,@er2,.+4660"
+gdb_test "x" "bsr/bc\t#0x7,@0x12(:8|),.\\+4660 \\($hex\\)" \
+       "bsr/bc #0x7,@0x12:8,.+4660"
+gdb_test "x" "bsr/bc\t#0x7,@0x9abc(:16|),.\\+4660 \\($hex\\)" \
+       "bsr/bc #0x7,@0x9abc:16,.+4660"
+gdb_test "x" "bsr/bc\t#0x7,@0x12345678(:32|),.\\+4660 \\($hex\\)" \
+       "bsr/bc #0x7,@0x12345678:32,.+4660"
+gdb_test "x" "bsr/bs\t#0x7,@er2,.\\+4660 \\($hex\\)" \
+       "bsr/bs #0x7,@er2,.+4660"
+gdb_test "x" "bsr/bs\t#0x7,@0x12(:8|),.\\+4660 \\($hex\\)" \
+       "bsr/bs #0x7,@0x12:8,.+4660"
+gdb_test "x" "bsr/bs\t#0x7,@0x9abc(:16|),.\\+4660 \\($hex\\)" \
+       "bsr/bs #0x7,@0x9abc:16,.+4660"
+gdb_test "x" "bsr/bs\t#0x7,@0x12345678(:32|),.\\+4660 \\($hex\\)" \
+       "bsr/bs #0x7,@0x12345678:32,.+4660"
+gdb_test "x" "bra\tr2l.b" \
+       "bra r2l.b"
+gdb_test "x" "bra\tr2.w" \
+       "bra r2.w"
+gdb_test "x" "bra\ter2(.l|)" \
+       "bra er2.l"
+gdb_test "x" "bsr\t.\\+18 \\($hex\\)" \
+       "bsr .+18"
+gdb_test "x" "bsr\t.\\+4660 \\($hex\\)" \
+       "bsr .+4660"
+gdb_test "x" "bsr\tr2l.b" \
+       "bsr r2l.b"
+gdb_test "x" "bsr\tr2.w" \
+       "bsr r2.w"
+gdb_test "x" "bsr\ter2(.l|)" \
+       "bsr er2.l"
+gdb_test "x" "jmp\t@er2" \
+       "jmp @er2"
+gdb_test "x" "jmp\t@0x123456(:24|)" \
+       "jmp @0x123456:24"
+gdb_test "x" "jmp\t@0x12345678(:32|)" \
+       "jmp @0x12345678:32"
+gdb_test "x" "jmp\t@@18 \\(0x12\\)" \
+       "jmp @@18 (0x12)"
+gdb_test "x" "jmp\t@@564 \\(0x234\\)" \
+       "jmp @@564 (0x234)"
+gdb_test "x" "jsr\t@er2" \
+       "jsr @er2"
+gdb_test "x" "jsr\t@0x123456(:24|)" \
+       "jsr @0x123456:24"
+gdb_test "x" "jsr\t@0x12345678(:32|)" \
+       "jsr @0x12345678:32"
+gdb_test "x" "jsr\t@@18 \\(0x12\\)" \
+       "jsr @@18 (0x12)"
+gdb_test "x" "jsr\t@@564 \\(0x234\\)" \
+       "jsr @@564 (0x234)"
+gdb_test "x" "rts\[ \t\]*" \
+       "rts"
+gdb_test "x" "rts/l\ter3" \
+       "rts/l er3"
+gdb_test "x" "rts/l\ter1-er2" \
+       "rts/l er1-er2"
+gdb_test "x" "rts/l\ter2-er4" \
+       "rts/l er2-er4"
+gdb_test "x" "rts/l\ter3-er6" \
+       "rts/l er3-er6"
+gdb_test "x" "trapa\t#0x3" \
+       "trapa #0x3"
+gdb_test "x" "rte\[ \t\]*" \
+       "rte"
+gdb_test "x" "rte/l\ter3" \
+       "rte/l er3"
+gdb_test "x" "rte/l\ter1-er2" \
+       "rte/l er1-er2"
+gdb_test "x" "rte/l\ter2-er4" \
+       "rte/l er2-er4"
+gdb_test "x" "rte/l\ter3-er6" \
+       "rte/l er3-er6"
+gdb_test "x" "ldc(.b|)\t#0x12(:8|),ccr" \
+       "ldc.b #0x12:8,ccr"
+gdb_test "x" "ldc(.b|)\tr3h,ccr" \
+       "ldc.b r3h,ccr"
+gdb_test "x" "ldc(.w|)\t@er3,ccr" \
+       "ldc.w @er3,ccr"
+gdb_test "x" "ldc(.w|)\t@er3\\+,ccr" \
+       "ldc.w @er3+,ccr"
+gdb_test "x" "ldc(.w|)\t@\\(0x1234(:16|),er3\\),ccr" \
+       "ldc.w @(0x1234:16,er3),ccr"
+gdb_test "x" "ldc(.w|)\t@\\(0x12345678(:32|),er3\\),ccr" \
+       "ldc.w @(0x12345678:32,er3),ccr"
+gdb_test "x" "ldc(.w|)\t@0x1234(:16|),ccr" \
+       "ldc.w @0x1234:16,ccr"
+gdb_test "x" "ldc(.w|)\t@0x12345678(:32|),ccr" \
+       "ldc.w @0x12345678:32,ccr"
+gdb_test "x" "ldc(.b|)\t#0x12(:8|),exr" \
+       "ldc.b #0x12:8,exr"
+gdb_test "x" "ldc(.b|)\tr3h,exr" \
+       "ldc.b r3h,exr"
+gdb_test "x" "ldc(.w|)\t@er3,exr" \
+       "ldc.w @er3,exr"
+gdb_test "x" "ldc(.w|)\t@er3\\+,exr" \
+       "ldc.w @er3+,exr"
+gdb_test "x" "ldc(.w|)\t@\\(0x1234(:16|),er3\\),exr" \
+       "ldc.w @(0x1234:16,er3),exr"
+gdb_test "x" "ldc(.w|)\t@\\(0x12345678(:32|),er3\\),exr" \
+       "ldc.w @(0x12345678:32,er3),exr"
+gdb_test "x" "ldc(.w|)\t@0x1234(:16|),exr" \
+       "ldc.w @0x1234:16,exr"
+gdb_test "x" "ldc(.w|)\t@0x12345678(:32|),exr" \
+       "ldc.w @0x12345678:32,exr"
+gdb_test "x" "stc(.b|)\tccr,r1h" \
+       "stc.b ccr,r1h"
+gdb_test "x" "stc(.w|)\tccr,@er1" \
+       "stc.w ccr,@er1"
+gdb_test "x" "stc(.w|)\tccr,@-er1" \
+       "stc.w ccr,@-er1"
+gdb_test "x" "stc(.w|)\tccr,@\\(0x1234(:16|),er1\\)" \
+       "stc.w ccr,@(0x1234:16,er1)"
+gdb_test "x" "stc(.w|)\tccr,@\\(0x12345678(:32|),er1\\)" \
+       "stc.w ccr,@(0x12345678:32,er1)"
+gdb_test "x" "stc(.w|)\tccr,@0x1234(:16|)" \
+       "stc.w ccr,@0x1234:16"
+gdb_test "x" "stc(.w|)\tccr,@0x12345678(:32|)" \
+       "stc.w ccr,@0x12345678:32"
+gdb_test "x" "stc(.b|)\texr,r1h" \
+       "stc.b exr,r1h"
+gdb_test "x" "stc(.w|)\texr,@er1" \
+       "stc.w exr,@er1"
+gdb_test "x" "stc(.w|)\texr,@-er1" \
+       "stc.w exr,@-er1"
+gdb_test "x" "stc(.w|)\texr,@\\(0x1234(:16|),er1\\)" \
+       "stc.w exr,@(0x1234:16,er1)"
+gdb_test "x" "stc(.w|)\texr,@\\(0x12345678(:32|),er1\\)" \
+       "stc.w exr,@(0x12345678:32,er1)"
+gdb_test "x" "stc(.w|)\texr,@0x1234(:16|)" \
+       "stc.w exr,@0x1234:16"
+gdb_test "x" "stc(.w|)\texr,@0x12345678(:32|)" \
+       "stc.w exr,@0x12345678:32"
+gdb_test "x" "orc(.b|)\t#0x12(:8|),ccr" \
+       "orc.b #0x12:8,ccr"
+gdb_test "x" "orc(.b|)\t#0x12(:8|),exr" \
+       "orc.b #0x12:8,exr"
+gdb_test "x" "xorc(.b|)\t#0x12(:8|),ccr" \
+       "xorc.b #0x12:8,ccr"
+gdb_test "x" "xorc(.b|)\t#0x12(:8|),exr" \
+       "xorc.b #0x12:8,exr"
+gdb_test "x" "andc(.b|)\t#0x12(:8|),ccr" \
+       "andc.b #0x12:8,ccr"
+gdb_test "x" "andc(.b|)\t#0x12(:8|),exr" \
+       "andc.b #0x12:8,exr"
+gdb_test "x" "sleep\[ \t\]*" \
+       "sleep"
+gdb_test "x" "nop\[ \t\]*" \
+       "nop"
diff --git a/gdb/testsuite/gdb.disasm/t13_otr.s b/gdb/testsuite/gdb.disasm/t13_otr.s
new file mode 100644 (file)
index 0000000..6e0f887
--- /dev/null
@@ -0,0 +1,159 @@
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+;others\r
+;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;\r
+       .h8300sx\r
+       .text\r
+       .org 0x12\r
+lab_12:\r
+       .org 0x1234\r
+       .global _start\r
+_start:\r
+    bra 0x12+.+2                  ;4012 \r
+    brn 0x12+.+2                  ;4112 \r
+    bhi 0x12+.+2                  ;4212 \r
+    bls 0x12+.+2                  ;4312 \r
+    bcc 0x12+.+2                  ;4412 \r
+    bcs 0x12+.+2                  ;4512 \r
+    bne 0x12+.+2                  ;4612 \r
+    beq 0x12+.+2                  ;4712 \r
+    bvc 0x12+.+2                  ;4812 \r
+    bvs 0x12+.+2                  ;4912 \r
+    bpl 0x12+.+2                  ;4a12 \r
+    bmi 0x12+.+2                  ;4b12 \r
+    bge 0x12+.+2                  ;4c12 \r
+    blt 0x12+.+2                  ;4d12 \r
+    bgt 0x12+.+2                  ;4e12 \r
+    ble 0x12+.+2                  ;4f12\r
+\r
+    bra 0x1234+.+4                ;58001234\r
+    brn 0x1234+.+4                ;58101234\r
+    bhi 0x1234+.+4                ;58201234\r
+    bls 0x1234+.+4                ;58301234\r
+    bcc 0x1234+.+4                ;58401234\r
+    bcs 0x1234+.+4                ;58501234\r
+    bne 0x1234+.+4                ;58601234\r
+    beq 0x1234+.+4                ;58701234\r
+    bvc 0x1234+.+4                ;58801234\r
+    bvs 0x1234+.+4                ;58901234\r
+    bpl 0x1234+.+4                ;58a01234\r
+    bmi 0x1234+.+4                ;58b01234\r
+    bge 0x1234+.+4                ;58c01234\r
+    blt 0x1234+.+4                ;58d01234\r
+    bgt 0x1234+.+4                ;58e01234\r
+    ble 0x1234+.+4                ;58f01234\r
+\r
+    bra/s 0x12+.+2                ;4013\r
+    nop                           ;0000\r
+\r
+    bra/bc #0x7,@er2,0x12+.+4            ;7c204712\r
+    bra/bc #0x7,@0xffffff9a:8,0x12+.+4   ;7e9a4712\r
+    bra/bc #0x7,@0x1234:16,0x12+.+6      ;6a1012344712\r
+    bra/bc #0x7,@0x12345678:32,0x12+.+8  ;6a30123456784712\r
+    bra/bc #0x7,@er2,0x1234+.+6              ;7c2058701234\r
+    bra/bc #0x7,@0xffffff12:8,0x1234+.+6     ;7e1258701234\r
+    bra/bc #0x7,@0xffff9abc:16,0x1234+.+8    ;6a109abc58701234\r
+    bra/bc #0x7,@0x12345678:32,0x1234+.+0xa  ;6a301234567858701234\r
+\r
+    bra/bs #0x7,@er2,0x12+.+4            ;7c204f12\r
+    bra/bs #0x7,@0xffffff9a:8,0x12+.+4   ;7e9a4f12\r
+    bra/bs #0x7,@0x1234:16,0x12+.+6      ;6a1012344f12\r
+    bra/bs #0x7,@0x12345678:32,0x12+.+8  ;6a30123456784f12\r
+    bra/bs #0x7,@er2,0x1234+.+6              ;7c2058f01234\r
+    bra/bs #0x7,@0xffffff12:8,0x1234+.+6     ;7e1258f01234\r
+    bra/bs #0x7,@0xffff9abc:16,0x1234+.+8    ;6a109abc58f01234\r
+    bra/bs #0x7,@0x12345678:32,0x1234+.+0xa  ;6a301234567858f01234\r
+\r
+    bsr/bc #0x7,@er2,0x1234+.+6             ;7c205c701234\r
+    bsr/bc #0x7,@0xffffff12:8,0x1234+.+6    ;7e125c701234\r
+    bsr/bc #0x7,@0xffff9abc:16,0x1234+.+8   ;6a109abc5c701234\r
+    bsr/bc #0x7,@0x12345678:32,0x1234+.+0xa ;6a30123456785c701234\r
+\r
+    bsr/bs #0x7,@er2,0x1234+.+6             ;7c205cf01234\r
+    bsr/bs #0x7,@0xffffff12:8,0x1234+.+6    ;7e125cf01234\r
+    bsr/bs #0x7,@0xffff9abc:16,0x1234+.+8   ;6a109abc5cf01234\r
+    bsr/bs #0x7,@0x12345678:32,0x1234+.+0xa ;6a30123456785cf01234\r
+\r
+    bra r2l.b          ;5925 \r
+    bra r2.w           ;5926 \r
+    bra er2.l          ;5927 \r
+\r
+    bsr 0x12+.+2       ;5512\r
+    bsr 0x1234+.+4     ;5c001234\r
+    bsr r2l.b          ;5d25 \r
+    bsr r2.w           ;5d26 \r
+    bsr er2.l          ;5d27 \r
+\r
+    jmp @er2             ;5920     \r
+    jmp @0x123456:24     ;5a123456\r
+    jmp @0x12345678:32   ;590812345678\r
+    jmp @@0x12           ;5b12\r
+    jmp @@0x234          ;598d\r
+\r
+    jsr @er2             ;5d20 \r
+    jsr @0x123456:24     ;5e123456\r
+    jsr @0x12345678:32   ;5d0812345678\r
+    jsr @@0x12           ;5f12\r
+    jsr @@0x234          ;5d8d\r
+\r
+    rts                      ;5470     \r
+    rts/l  er3               ;5403\r
+    rts/l  er1-er2           ;5412\r
+    rts/l  er2-er4           ;5424\r
+    rts/l  er3-er6           ;5436\r
+\r
+    trapa #0x3               ;5730 \r
+\r
+    rte                      ;5670     \r
+    rte/l  er3               ;5603\r
+    rte/l  er1-er2           ;5612\r
+    rte/l  er2-er4           ;5624\r
+    rte/l  er3-er6           ;5636\r
+\r
+    ldc.b #0x12:8,ccr        ;0712 \r
+    ldc.b r3h,ccr            ;0303 \r
+    ldc.w @er3,ccr           ;01406930 \r
+    ldc.w @er3+,ccr          ;01406d30 \r
+    ldc.w @(0x1234:16,er3),ccr        ;01406f301234\r
+    ldc.w @(0x12345678:32,er3),ccr    ;014078306b2012345678\r
+    ldc.w @0x1234:16,ccr              ;01406b001234\r
+    ldc.w @0x12345678:32,ccr          ;01406b2012345678\r
+\r
+    ldc.b #0x12:8,exr        ;01410712 \r
+    ldc.b r3h,exr            ;0313 \r
+    ldc.w @er3,exr           ;01416930 \r
+    ldc.w @er3+,exr          ;01416d30 \r
+    ldc.w @(0x1234:16,er3),exr        ;01416f301234\r
+    ldc.w @(0x12345678:32,er3),exr    ;014178306b2012345678    \r
+    ldc.w @0x1234:16,exr              ;01416b001234\r
+    ldc.w @0x12345678:32,exr          ;01416b2012345678\r
+\r
+    stc.b ccr,r1h            ;0201 \r
+    stc.w ccr,@er1           ;01406990 \r
+    stc.w ccr,@-er1          ;01406d90 \r
+    stc.w ccr,@(0x1234:16,er1)       ;01406f901234\r
+    stc.w ccr,@(0x12345678:32,er1)   ;014078106ba012345678\r
+    stc.w ccr,@0x1234:16             ;01406b801234\r
+    stc.w ccr,@0x12345678:32         ;01406ba012345678\r
+\r
+    stc.b exr,r1h            ;0211 \r
+    stc.w exr,@er1           ;01416990 \r
+    stc.w exr,@-er1          ;01416d90 \r
+    stc.w exr,@(0x1234:16,er1)       ;01416f901234\r
+    stc.w exr,@(0x12345678:32,er1)   ;014178106ba012345678\r
+    stc.w exr,@0x1234:16             ;01416b801234\r
+    stc.w exr,@0x12345678:32         ;01416ba012345678\r
+\r
+    orc.b #0x12:8,ccr          ;0412 \r
+    orc.b #0x12:8,exr          ;01410412 \r
+\r
+    xorc.b #0x12:8,ccr         ;0512 \r
+    xorc.b #0x12:8,exr         ;01410512 \r
+\r
+    andc.b #0x12:8,ccr         ;0612 \r
+    andc.b #0x12:8,exr         ;01410612 \r
+\r
+    sleep                      ;0180 \r
+\r
+    nop                        ;0000\r
+\r
+       .end\r
diff --git a/gdb/testsuite/gdb.threads/tls-main.c b/gdb/testsuite/gdb.threads/tls-main.c
new file mode 100644 (file)
index 0000000..eec5d50
--- /dev/null
@@ -0,0 +1,9 @@
+__thread int i_tls = 2;
+int main ()
+{
+  int result;
+  result = foo (); /* Call to foo should return 2, not 1.  */
+  result ++;
+  return 0; /* break here to check result */
+}
+
diff --git a/gdb/testsuite/gdb.threads/tls-shared.c b/gdb/testsuite/gdb.threads/tls-shared.c
new file mode 100644 (file)
index 0000000..d4f8e5c
--- /dev/null
@@ -0,0 +1,6 @@
+__thread int i_tls = 1;
+int foo ()
+{
+  return i_tls;
+}
+
diff --git a/gdb/testsuite/gdb.threads/tls-shared.exp b/gdb/testsuite/gdb.threads/tls-shared.exp
new file mode 100644 (file)
index 0000000..fc5c086
--- /dev/null
@@ -0,0 +1,115 @@
+# Copyright 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+# tls-shared.exp -- Expect script to test thread local storage in gdb, with
+# shared libraries.
+
+if $tracelevel then {
+    strace $tracelevel
+}
+
+set testfile tls-main
+set libfile tls-shared
+set srcfile ${testfile}.c
+set binfile ${objdir}/${subdir}/${testfile}
+
+remote_exec build "rm -f ${binfile}"
+
+# get the value of gcc_compiled
+if [get_compiler_info ${binfile}] {
+    return -1
+}
+
+if  { [gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}.o" object {debug}] != "" } {
+    return -1
+}
+
+# Build the shared libraries this test case needs.
+#
+
+if {$gcc_compiled == 0} {
+    if [istarget "hppa*-hp-hpux*"] then {
+        set additional_flags "additional_flags=+z"
+    } elseif { [istarget "mips-sgi-irix*"] } {
+        # Disable SGI compiler's implicit -Dsgi
+        set additional_flags "additional_flags=-Usgi"
+    } else {
+        # don't know what the compiler is...
+        set additional_flags ""
+    }
+} else {
+    if { ([istarget "powerpc*-*-aix*"]
+    || [istarget "rs6000*-*-aix*"]) } {
+        set additional_flags ""
+    } else {
+        set additional_flags "additional_flags=-fpic"
+    }
+}
+
+set additional_flags "$additional_flags -shared"
+if {[gdb_compile_pthreads "${srcdir}/${subdir}/${libfile}.c" "${objdir}/${subdir}/${libfile}.so" executable [list debug $additional_flags "incdir=${objdir}"]] != ""} {
+    return -1
+}
+
+if { ($gcc_compiled 
+&&  ([istarget "powerpc*-*-aix*"]
+|| [istarget "rs6000*-*-aix*"] )) } {
+    set additional_flags "additional_flags=-L${objdir}/${subdir}"
+} elseif { [istarget "mips-sgi-irix*"] } {
+    set additional_flags "additional_flags=-rpath ${objdir}/${subdir}"
+} else {
+    set additional_flags ""
+}
+
+if {[gdb_compile_pthreads "${objdir}/${subdir}/${testfile}.o ${objdir}/${subdir}/${libfile}.so" "${binfile}" executable [list debug $additional_flags]] != ""} {
+    return -1
+}
+
+
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+gdb_load ${binfile}
+
+if ![runto_main] then {
+    fail "Can't run to main"
+    return 0
+}
+
+gdb_test "print i_tls" "2" "print thread local storage variable"
+
+gdb_test "ptype i_tls" "int" "ptype of thread local storage variable"
+
+gdb_test "info address i_tls" \
+       "Symbol \\\"i_tls\\\" is a thread-local variable at offset 0 in the thread-local storage for .*tls-main.." \
+       "print storage info for thread local storage variable"
+
+set line_number [gdb_get_line_number "break here to check result"]
+
+gdb_test "break $line_number" \
+       "Breakpoint.*at.*file.*tls-main.c.*line ${line_number}." \
+       "break at and of main"
+gdb_test "continue" \
+       "main .* at .*:.*return 0.*break here to check result.*" \
+        "continue to break"
+# This is more of a gcc/glibc test, really. 
+#
+gdb_test "print result" "3" "print result"
+
+
diff --git a/gdb/testsuite/gdb.threads/tls.c b/gdb/testsuite/gdb.threads/tls.c
new file mode 100644 (file)
index 0000000..9b2145e
--- /dev/null
@@ -0,0 +1,221 @@
+/* BeginSourceFile tls.c
+
+  This file creates and deletes threads. It uses thread local storage
+  variables too. */
+
+#include <unistd.h>
+#include <stdlib.h>
+#include <stdio.h>
+#include <assert.h>
+#include <pthread.h>
+#include <semaphore.h>
+#include <errno.h>
+
+#define N_THREADS 3
+
+/* Uncomment to turn on debugging output */
+/*#define START_DEBUG*/
+
+/* Thread-local storage.  */
+__thread int a_thread_local;
+__thread int another_thread_local;
+
+/* Global variable just for info addr in gdb.  */
+int a_global;
+
+/* Print the results of thread-local storage.  */
+int thread_local_val[ N_THREADS ];
+int another_thread_local_val[ N_THREADS ];
+
+/* Semaphores to make sure the threads are alive when we print the TLS
+   variables from gdb.  */
+sem_t tell_main, tell_thread;
+
+
+void print_error ()
+{
+  switch (errno)
+  {
+    case EAGAIN:
+      fprintf (stderr, "EAGAIN\n");
+      break;
+    case EINTR:
+      fprintf (stderr, "EINTR\n");
+      break;
+    case EINVAL:
+      fprintf (stderr, "EINVAL\n");
+      break;
+    case ENOSYS:
+      fprintf (stderr, "ENOSYS\n");
+      break;
+    case ENOENT:
+      fprintf (stderr, "ENOENT\n");
+      break;
+    case EDEADLK:
+      fprintf (stderr, "EDEADLK\n");
+      break;
+    default:
+      fprintf (stderr, "Unknown error\n");
+      break;
+   } 
+}
+
+/* Routine for each thread to run, does nothing.  */
+void *spin( vp )
+    void * vp;
+{
+    int me = (long) vp;
+    int i;
+    
+    /* Use a_global. */
+    a_global++;
+
+    a_thread_local = 0;
+    another_thread_local = me;
+    for( i = 0; i <= me; i++ ) {
+        a_thread_local += i;
+    }
+
+    another_thread_local_val[me] = another_thread_local;
+    thread_local_val[ me ] = a_thread_local; /* here we know tls value */
+
+    if (sem_post (&tell_main) == -1)
+     {
+        fprintf (stderr, "th %d post on sem tell_main failed\n", me);
+        print_error ();
+        return;
+     }
+#ifdef START_DEBUG
+    fprintf (stderr, "th %d post on tell main\n", me);
+#endif
+
+    while (1)
+      {
+#ifdef START_DEBUG
+        fprintf (stderr, "th %d start wait on tell_thread\n", me);
+#endif
+        if (sem_wait (&tell_thread) == 0)
+          break;
+
+        if (errno == EINTR)
+          {
+#ifdef START_DEBUG
+            fprintf (stderr, "th %d wait tell_thread got EINTR, rewaiting\n", me);
+#endif
+            continue;
+          }
+        else
+          {  
+            fprintf (stderr, "th %d wait on sem tell_thread failed\n", me);
+            print_error ();
+            return;
+         }
+      }
+
+#ifdef START_DEBUG
+      fprintf (stderr, "th %d Wait on tell_thread\n", me);
+#endif
+
+}
+
+void
+do_pass()
+{
+    int i;
+    pthread_t t[ N_THREADS ];
+    int err;
+
+    for( i = 0; i < N_THREADS; i++)
+    {
+        thread_local_val[i] = 0;
+        another_thread_local_val[i] = 0;
+    }
+   
+    if (sem_init (&tell_main, 0, 0) == -1)
+    {
+      fprintf (stderr, "tell_main semaphore init failed\n");
+      return;
+    }
+
+    if (sem_init (&tell_thread, 0, 0) == -1)
+    {
+      fprintf (stderr, "tell_thread semaphore init failed\n");
+      return;
+    }
+
+    /* Start N_THREADS threads, then join them so that they are terminated.  */
+    for( i = 0; i < N_THREADS; i++ )
+     {
+        err = pthread_create( &t[i], NULL, spin, (void *) (long) i );
+        if( err != 0 ) {
+            fprintf(stderr, "Error in thread %d create\n", i );
+        }
+     }
+
+    for( i = 0; i < N_THREADS; i++ )
+      {
+        while (1)
+          {
+#ifdef START_DEBUG
+            fprintf (stderr, "main %d start wait on tell_main\n", i);
+#endif
+            if (sem_wait (&tell_main) == 0)
+              break;
+
+            if (errno == EINTR)
+              {
+#ifdef START_DEBUG
+                fprintf (stderr, "main %d wait tell_main got EINTR, rewaiting\n", i);
+#endif
+                continue;
+              }
+            else
+              {
+                fprintf (stderr, "main %d wait on sem tell_main failed\n", i);
+                print_error ();
+                return;
+              }
+            }
+       }
+
+#ifdef START_DEBUG
+    fprintf (stderr, "main done waiting on tell_main\n");
+#endif
+
+    i = 10;  /* Here all threads should be still alive. */
+
+    for( i = 0; i < N_THREADS; i++ )
+     {
+       if (sem_post (&tell_thread) == -1)
+        {
+           fprintf (stderr, "main %d post on sem tell_thread failed\n", i);
+           print_error ();
+           return;
+        }
+#ifdef START_DEBUG
+      fprintf (stderr, "main %d post on tell_thread\n", i);
+#endif
+     }
+
+    for( i = 0; i < N_THREADS; i++ )
+     {
+        err = pthread_join(t[i], NULL );
+        if( err != 0 )
+         { 
+           fprintf (stderr, "error in thread %d join\n", i );
+         }
+    }
+
+    i = 10;  /* Null line for setting bpts on. */
+   
+}
+
+int
+main()
+{
+   do_pass ();
+
+   return 0;  /* Set breakpoint here before exit. */
+}
+
+/* EndSourceFile */
diff --git a/gdb/testsuite/gdb.threads/tls.exp b/gdb/testsuite/gdb.threads/tls.exp
new file mode 100644 (file)
index 0000000..3f74993
--- /dev/null
@@ -0,0 +1,291 @@
+# tls.exp -- Expect script to test thread-local storage
+# Copyright (C) 1992, 2003 Free Software Foundation, Inc.
+
+# This program is free software; you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation; either version 2 of the License, or
+# (at your option) any later version.
+# 
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+# GNU General Public License for more details.
+# 
+# You should have received a copy of the GNU General Public License
+# along with this program; if not, write to the Free Software
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
+
+# Please email any bugs, comments, and/or additions to this file to:
+# bug-gdb@prep.ai.mit.edu
+
+set testfile tls
+set srcfile ${testfile}.c
+set binfile ${objdir}/${subdir}/${testfile}
+
+if [istarget "*-*-linux"] then {
+    set target_cflags "-D_MIT_POSIX_THREADS"
+} else {
+    set target_cflags ""
+}
+
+if {[gdb_compile_pthreads "${srcdir}/${subdir}/${srcfile}" "${binfile}" executable [list debug "incdir=${objdir}"]] != "" } {
+    return -1
+}
+
+### Compute the value of the a_thread_local variable.
+proc compute_expected_value {value} {
+    set expected_value 0
+    set i 0
+    while { $i <= $value} {
+        incr expected_value $i
+        incr i
+    }
+    return $expected_value
+}
+
+### Get the value of the variable 'me' for the current thread.
+proc get_me_variable {tnum} {
+    global expect_out
+    global gdb_prompt
+    global decimal
+
+    set value_of_me -1
+    send_gdb "print me\n"
+    gdb_expect {
+       -re ".*= ($decimal).*\r\n$gdb_prompt $" {
+           set value_of_me $expect_out(1,string)
+           pass "$tnum thread print me"
+        }
+       -re "$gdb_prompt $" {
+           fail "$tnum thread print me"
+       }
+       timeout {
+           fail "$tnum thread print me (timeout)" 
+       }
+    }
+    return ${value_of_me}
+}
+
+### Check the values of the thread local variables in the thread.
+### Also check that info address print the right things.
+proc check_thread_local {number} {
+    set me_variable [get_me_variable $number]
+    set expected_value [compute_expected_value ${me_variable}]
+
+    gdb_test "p a_thread_local" \
+           "= $expected_value" \
+           "${number} thread local storage"
+
+    gdb_test "p another_thread_local" \
+           "= $me_variable" \
+           "${number} another thread local storage"
+
+    gdb_test "info address a_thread_local" \
+           ".*a_thread_local.*a thread-local variable at offset.*" \
+           "${number} info address a_thread_local"
+
+    gdb_test "info address another_thread_local" \
+           ".*another_thread_local.*a thread-local variable at offset.*" \
+           "${number} info address another_thread_local"
+}
+
+### Select a particular thread.
+proc select_thread {thread} {
+    global gdb_prompt
+
+    send_gdb "thread $thread\n"
+    gdb_expect {
+       -re "\\\[Switching to thread .*\\\].*\r\n$gdb_prompt $" {
+           pass "selected thread: $thread"
+       }
+       -re "$gdb_prompt $" {
+           fail "selected thread: $thread"
+       }
+       timeout {
+           fail "selected thread: $thread (timeout)"
+       }
+    }
+}
+
+### Do a backtrace for the current thread, and check that the 'spin' routine
+### is in it. This means we have one of the threads we created, rather
+### than the main thread. Record the thread in the spin_threads 
+### array. Also remember the level of the 'spin' routine in the backtrace, for 
+### later use.
+proc check_thread_stack {number spin_threads spin_threads_level} {
+    global gdb_prompt
+    global expect_out
+    global decimal
+    global hex
+    upvar $spin_threads tarr
+    upvar $spin_threads_level tarrl
+
+    select_thread $number
+    send_gdb "where\n"
+    gdb_expect {
+       -re ".*(\[0-9\]+)\[ \t\]+$hex in spin \\(vp=(0x\[0-9a-f\]+).*\r\n$gdb_prompt $" {
+           if {[info exists tarr($number)]} {
+               fail "backtrace of thread number $number in spin"
+           } else {
+               pass "backtrace of thread number $number in spin"
+                set level $expect_out(1,string)
+               set tarrl($number) $level
+               set tarr($number) 1
+           }
+       }
+       -re ".*$gdb_prompt $" {
+        set tarr($number) 0
+        set tarrl($number) 0
+        pass "backtrace of thread number $number not relevant"
+       }
+       timeout {
+           fail "backtrace of thread number $number (timeout)" 
+       }
+    }
+}
+
+gdb_exit
+gdb_start
+gdb_reinitialize_dir $srcdir/$subdir
+
+gdb_load ${binfile}
+if ![runto_main] then {
+   fail "Can't run to main"
+   return 0
+}
+
+# Set a breakpoint at the "spin" routine to
+# test the thread local's value.  
+#
+gdb_test "b [gdb_get_line_number "here we know tls value"]" \
+         ".*Breakpoint 2.*tls.*"   "set breakpoint at all threads"
+
+# Set a bp at a point where we know all threads are alive.
+#
+gdb_test "b [gdb_get_line_number "still alive"]" \
+         ".*Breakpoint 3.*tls.*" "set breakpoint at synch point"
+
+# Set a bp at the end to see if all threads are finished.
+#
+gdb_test "b [gdb_get_line_number "before exit"]" \
+         ".*Breakpoint 4.*tls.*" "set breakpoint at exit"
+
+send_gdb "continue\n"
+gdb_expect {
+    -re ".*Program received signal SIGSEGV.*a_thread_local = 0;.*$gdb_prompt $" {
+        # This is the first symptom if the gcc and binutils versions
+        # in use support TLS, but the system glibc does not.
+        unsupported "continue to first thread: system does not support TLS"
+        return -1
+    }
+    -re ".*Program exited normally.*$gdb_prompt $" {
+        fail "continue to first thread: program runaway"
+    }
+    -re ".*Pass 0 done.*Pass 1 done.*$gdb_prompt $" {
+        fail "continue to first thread: program runaway 2"
+    }
+    -re ".*Breakpoint 2.*tls value.*$gdb_prompt $" {
+        pass "continue to first thread: get to thread"
+    }
+    -re ".*$gdb_prompt $" {
+        fail "continue to first thread: no progress?"
+    }
+    timeout { fail "continue to first thread (timeout)" }
+}
+
+gdb_test "info thread" ".*Thread.*spin.*" \
+       "at least one th in spin while stopped at first th"
+
+check_thread_local "first"
+
+gdb_test "continue" ".*Breakpoint 2.*tls value.*" "continue to second thread"
+gdb_test "info thread" "Thread.*spin.*" \
+       "at least one th in spin while stopped at second th"
+
+check_thread_local "second"
+
+gdb_test "continue" ".*Breakpoint 2.*tls value.*" "continue to third thread"
+gdb_test "info thread" ".*Thread.*spin.*" \
+       "at least one th in spin while stopped at third th"
+
+check_thread_local "third"
+
+gdb_test "continue" ".*Breakpoint 3.*still alive.*" "continue to synch point"
+
+set no_of_threads 0
+send_gdb "info thread\n"
+gdb_expect {
+       -re "^info thread\[ \t\r\n\]+(\[0-9\]+) Thread.*$gdb_prompt $" {
+          set no_of_threads $expect_out(1,string)
+          pass "get number of threads"
+        }
+       -re "$gdb_prompt $" {
+           fail "get number of threads"
+       }
+       timeout {
+           fail "get number of threads (timeout)"
+       }
+}
+
+array set spin_threads {}
+unset spin_threads
+array set spin_threads_level {}
+unset spin_threads_level
+
+# For each thread check its backtrace to see if it is stopped at the
+# spin routine. 
+for {set i 1} {$i <= $no_of_threads} {incr i} {
+    check_thread_stack $i spin_threads spin_threads_level
+}
+
+### Loop through the threads and check the values of the tls variables.
+### keep track of how many threads we find in the spin routine.
+set thrs_in_spin 0
+foreach i [array names spin_threads] {
+    if {$spin_threads($i) == 1} {
+      incr thrs_in_spin
+      select_thread $i
+      set level $spin_threads_level($i)
+      gdb_test "up $level" ".*spin.*sem_wait.*" "thread $i up"
+      check_thread_local $i 
+    }
+}
+
+if {$thrs_in_spin == 0} {
+  fail "No thread backtrace reported spin (vsyscall kernel problem?)"
+}
+
+gdb_test "continue" ".*Breakpoint 4.*before exit.*" "threads exited"
+
+send_gdb "info thread\n" 
+gdb_expect {
+    -re ".* 1 Thread.*2 Thread.*$gdb_prompt $" {
+        fail "Too many threads left at end"
+    }
+    -re ".*\\\* 1 Thread.*main.*$gdb_prompt $" {
+        pass "Expect only base thread at end"
+    }
+    -re ".*No stack.*$gdb_prompt $" {
+        fail "runaway at end"
+    }
+    -re ".*$gdb_prompt $" {
+        fail "mess at end"
+    }
+    timeout { fail "at end (timeout)" }
+}
+
+# Start over and do some "info address" stuff
+#
+runto spin
+
+gdb_test "info address a_global" \
+       ".*a_global.*static storage at address.*" "info address a_global"
+
+setup_kfail "gdb/1294" "*-*-*"
+gdb_test "info address me" ".*me.*is a variable at offset.*" "info address me"
+
+# Done!
+#
+gdb_exit
+
+return 0
diff --git a/gdb/user-regs.c b/gdb/user-regs.c
new file mode 100644 (file)
index 0000000..470a518
--- /dev/null
@@ -0,0 +1,205 @@
+/* User visible, per-frame registers, for GDB, the GNU debugger.
+
+   Copyright 2002 Free Software Foundation, Inc.
+
+   Contributed by Red Hat.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#include "defs.h"
+#include "user-regs.h"
+#include "gdbtypes.h"
+#include "gdb_string.h"
+#include "gdb_assert.h"
+#include "frame.h"
+
+/* A table of user registers.
+
+   User registers have regnum's that live above of the range [0
+   .. NUM_REGS + NUM_PSEUDO_REGS) (which is controlled by the target).
+   The target should never see a user register's regnum value.
+
+   Always append, never delete.  By doing this, the relative regnum
+   (offset from NUM_REGS + NUM_PSEUDO_REGS) assigned to each user
+   register never changes.  */
+
+struct user_reg
+{
+  const char *name;
+  struct value *(*read) (struct frame_info * frame);
+  struct user_reg *next;
+};
+
+struct user_regs
+{
+  struct user_reg *first;
+  struct user_reg **last;
+};
+
+static void
+append_user_reg (struct user_regs *regs, const char *name,
+                user_reg_read_ftype *read, struct user_reg *reg)
+{
+  /* The caller is responsible for allocating memory needed to store
+     the register.  By doing this, the function can operate on a
+     register list stored in the common heap or a specific obstack.  */
+  gdb_assert (reg != NULL);
+  reg->name = name;
+  reg->read = read;
+  reg->next = NULL;
+  (*regs->last) = reg;
+  regs->last = &(*regs->last)->next;
+}
+
+/* An array of the builtin user registers.  */
+
+static struct user_regs builtin_user_regs = { NULL, &builtin_user_regs.first };
+
+void
+user_reg_add_builtin (const char *name, user_reg_read_ftype *read)
+{
+  append_user_reg (&builtin_user_regs, name, read,
+                  XMALLOC (struct user_reg));
+}
+
+/* Per-architecture user registers.  Start with the builtin user
+   registers and then, again, append.  */
+
+static struct gdbarch_data *user_regs_data;
+
+static void *
+user_regs_init (struct gdbarch *gdbarch)
+{
+  struct user_reg *reg;
+  struct user_regs *regs = GDBARCH_OBSTACK_ZALLOC (gdbarch, struct user_regs);
+  regs->last = &regs->first;
+  for (reg = builtin_user_regs.first; reg != NULL; reg = reg->next)
+    append_user_reg (regs, reg->name, reg->read,
+                    GDBARCH_OBSTACK_ZALLOC (gdbarch, struct user_reg));
+  return regs;
+}
+
+void
+user_reg_add (struct gdbarch *gdbarch, const char *name,
+                user_reg_read_ftype *read)
+{
+  struct user_regs *regs = gdbarch_data (gdbarch, user_regs_data);
+  if (regs == NULL)
+    {
+      /* ULGH, called during architecture initialization.  Patch
+         things up.  */
+      regs = user_regs_init (gdbarch);
+      set_gdbarch_data (gdbarch, user_regs_data, regs);
+    }
+  append_user_reg (regs, name, read,
+                  GDBARCH_OBSTACK_ZALLOC (gdbarch, struct user_reg));
+}
+
+int
+user_reg_map_name_to_regnum (struct gdbarch *gdbarch, const char *name,
+                            int len)
+{
+  /* Make life easy, set the len to something reasonable.  */
+  if (len < 0)
+    len = strlen (name);
+
+  /* Search register name space first - always let an architecture
+     specific register override the user registers.  */
+  {
+    int i;
+    int maxregs = (gdbarch_num_regs (gdbarch)
+                  + gdbarch_num_pseudo_regs (gdbarch));
+    for (i = 0; i < maxregs; i++)
+      {
+       const char *regname = gdbarch_register_name (gdbarch, i);
+       if (regname != NULL && len == strlen (regname)
+           && strncmp (regname, name, len) == 0)
+         {
+           return i;
+         }
+      }
+  }
+
+  /* Search the user name space.  */
+  {
+    struct user_regs *regs = gdbarch_data (gdbarch, user_regs_data);
+    struct user_reg *reg;
+    int nr;
+    for (nr = 0, reg = regs->first; reg != NULL; reg = reg->next, nr++)
+      {
+       if ((len < 0 && strcmp (reg->name, name))
+           || (len == strlen (reg->name)
+               && strncmp (reg->name, name, len) == 0))
+         return NUM_REGS + NUM_PSEUDO_REGS + nr;
+      }
+  }
+
+  return -1;
+}
+
+static struct user_reg *
+usernum_to_user_reg (struct gdbarch *gdbarch, int usernum)
+{
+  struct user_regs *regs = gdbarch_data (gdbarch, user_regs_data);
+  struct user_reg *reg;
+  for (reg = regs->first; reg != NULL; reg = reg->next)
+    {
+      if (usernum == 0)
+       return reg;
+      usernum--;
+    }
+  return NULL;
+}
+
+const char *
+user_reg_map_regnum_to_name (struct gdbarch *gdbarch, int regnum)
+{
+  int maxregs = (gdbarch_num_regs (gdbarch)
+                + gdbarch_num_pseudo_regs (gdbarch));
+  if (regnum < 0)
+    return NULL;
+  else if (regnum < maxregs)
+    return gdbarch_register_name (gdbarch, regnum);
+  else
+    {
+      struct user_reg *reg = usernum_to_user_reg (gdbarch, regnum - maxregs);
+      if (reg == NULL)
+       return NULL;
+      else
+       return reg->name;
+    }
+}
+
+struct value *
+value_of_user_reg (int regnum, struct frame_info *frame)
+{
+  struct gdbarch *gdbarch = get_frame_arch (frame);
+  int maxregs = (gdbarch_num_regs (gdbarch)
+                + gdbarch_num_pseudo_regs (gdbarch));
+  struct user_reg *reg = usernum_to_user_reg (gdbarch, regnum - maxregs);
+  gdb_assert (reg != NULL);
+  return reg->read (frame);
+}
+
+extern initialize_file_ftype _initialize_user_regs; /* -Wmissing-prototypes */
+
+void
+_initialize_user_regs (void)
+{
+  user_regs_data = register_gdbarch_data (user_regs_init);
+}
diff --git a/gdb/user-regs.h b/gdb/user-regs.h
new file mode 100644 (file)
index 0000000..d845c8a
--- /dev/null
@@ -0,0 +1,71 @@
+/* Per-frame user registers, for GDB, the GNU debugger.
+
+   Copyright 2002, 2003 Free Software Foundation, Inc.
+
+   Contributed by Red Hat.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#ifndef USER_REGS_H
+#define USER_REGS_H
+
+/* Implement both builtin, and architecture specific, per-frame user
+   visible registers.
+
+   Builtin registers apply to all architectures, where as architecture
+   specific registers are present when the architecture is selected.
+
+   These registers are assigned register numbers outside the
+   architecture's register range [0 .. NUM_REGS + NUM_PSEUDO_REGS).
+   Their values should be constructed using per-frame information.  */
+
+/* TODO: cagney/2003-06-27: Need to think more about how these
+   registers are added, read, and modified.  At present they are kind
+   of assumed to be read-only.  Should it, for instance, return a
+   register descriptor that contains all the relvent access methods.  */
+
+struct frame_info;
+struct gdbarch;
+
+/* Given an architecture, map a user visible register name onto its
+   index.  */
+
+extern int user_reg_map_name_to_regnum (struct gdbarch *gdbarch,
+                                       const char *str, int len);
+
+extern const char *user_reg_map_regnum_to_name (struct gdbarch *gdbarch,
+                                               int regnum);
+
+/* Return the value of the frame register in the specified frame.
+
+   Note; These methods return a "struct value" instead of the raw
+   bytes as, at the time the register is being added, the type needed
+   to describe the register has not bee initialized.  */
+
+typedef struct value *(user_reg_read_ftype) (struct frame_info *frame);
+extern struct value *value_of_user_reg (int regnum, struct frame_info *frame);
+
+/* Add a builtin register (present in all architectures).  */
+extern void user_reg_add_builtin (const char *name,
+                                 user_reg_read_ftype *read);
+
+/* Add a per-architecture frame register.  */
+extern void user_reg_add (struct gdbarch *gdbarch, const char *name, 
+                         user_reg_read_ftype *read);
+
+#endif
diff --git a/gdb/x86-64-linux-tdep.h b/gdb/x86-64-linux-tdep.h
new file mode 100644 (file)
index 0000000..a135cfa
--- /dev/null
@@ -0,0 +1,39 @@
+/* Target-dependent code for the x86-64.
+
+   Copyright 2003
+   Free Software Foundation, Inc.
+
+   Contributed by Michal Ludvig, SuSE AG.
+
+   This file is part of GDB.
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2 of the License, or
+   (at your option) any later version.
+
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+
+   You should have received a copy of the GNU General Public License
+   along with this program; if not, write to the Free Software
+   Foundation, Inc., 59 Temple Place - Suite 330,
+   Boston, MA 02111-1307, USA.  */
+
+#ifndef X86_64_LINUX_TDEP_H
+#define X86_64_LINUX_TDEP_H
+
+/* Fill GDB's register array with the general-purpose register values
+   in *GREGSETP.  */
+
+void x86_64_linux_supply_gregset (char *regp);
+
+/* Fill register REGNO (if it is a general-purpose register) in
+   *GREGSETPS with the value in GDB's register array.  If REGNO is -1,
+   do this for all registers.  */
+
+void x86_64_linux_fill_gregset (char *regp, int regno);
+
+#endif /* x86-64-linux-tdep.h */
diff --git a/opcodes/po/nl.po b/opcodes/po/nl.po
new file mode 100644 (file)
index 0000000..d4247c1
--- /dev/null
@@ -0,0 +1,809 @@
+# Dutch messages for the Opcodes Library.
+# Copyright (C) 1999, 2002, 2003 Free Software Foundation, Inc.
+# This file is distributed under the same license as the Opcodes package.
+# Tim Van Holder <tim.van.holder@pandora.be>, 1999, 2002, 2003.
+# 
+msgid ""
+msgstr ""
+"Project-Id-Version: opcodes 2.14rel030712\n"
+"POT-Creation-Date: 2003-07-11 13:56+0930\n"
+"PO-Revision-Date: 2003-07-18 17:17+0200\n"
+"Last-Translator: Tim Van Holder <tim.van.holder@pandora.be>\n"
+"Language-Team: Dutch <vertaling@nl.linux.org>\n"
+"MIME-Version: 1.0\n"
+"Content-Type: text/plain; charset=iso-8859-1\n"
+"Content-Transfer-Encoding: 8-bit\n"
+"Plural-Forms: nplurals=2; plural=(n != 1);\n"
+
+# misschien 'branch' vertalen (vertakking?)
+# en unaligned vertalen als 'niet uitgelijnd'?
+#: alpha-opc.c:335
+msgid "branch operand unaligned"
+msgstr "branch-operand niet uitgelijnd"
+
+#: alpha-opc.c:358 alpha-opc.c:380
+msgid "jump hint unaligned"
+msgstr "jump-hint niet uitgelijnd"
+
+#: arc-dis.c:52
+msgid "Illegal limm reference in last instruction!\n"
+msgstr "Ongeldige limm-verwijzing in de laatste instructie!\n"
+
+#: arm-dis.c:554
+msgid "<illegal precision>"
+msgstr "<ongeldige precisie>"
+
+# Hoort set bij 'name', of bij 'register name'?
+#: arm-dis.c:1162
+#, c-format
+msgid "Unrecognised register name set: %s\n"
+msgstr "Registernaam-verzameling niet herkend: %s\n"
+
+#: arm-dis.c:1169
+#, c-format
+msgid "Unrecognised disassembler option: %s\n"
+msgstr "Disassembler-optie niet herkend: %s\n"
+
+#: arm-dis.c:1343
+msgid ""
+"\n"
+"The following ARM specific disassembler options are supported for use with\n"
+"the -M switch:\n"
+msgstr ""
+"\n"
+"De volgende ARM-specifieke disassembler-opties worden ondersteund voor gebruik\n"
+"via de -M optie:\n"
+
+#: avr-dis.c:117 avr-dis.c:127
+msgid "undefined"
+msgstr "niet gedefinieerd"
+
+#: avr-dis.c:179
+msgid "Internal disassembler error"
+msgstr "Interne fout in de disassembler"
+
+# Vertaling voor constraint? 'begrenzing' misschien?
+#: avr-dis.c:227
+#, c-format
+msgid "unknown constraint `%c'"
+msgstr "onbekende constraint `%c'"
+
+#: cgen-asm.c:348 fr30-ibld.c:195 frv-ibld.c:195 ip2k-ibld.c:195
+#: iq2000-ibld.c:195 m32r-ibld.c:195 openrisc-ibld.c:195 xstormy16-ibld.c:195
+#, c-format
+msgid "operand out of range (%ld not between %ld and %ld)"
+msgstr "operand buiten bereik (%ld niet tussen %ld en %ld)"
+
+#: cgen-asm.c:369
+#, c-format
+msgid "operand out of range (%lu not between %lu and %lu)"
+msgstr "operand buiten bereik (%lu niet tussen %lu en %lu)"
+
+#: d30v-dis.c:312
+#, c-format
+msgid "<unknown register %d>"
+msgstr "<onbekend register %d>"
+
+#. Can't happen.
+#: dis-buf.c:57
+#, c-format
+msgid "Unknown error %d\n"
+msgstr "Onbekende fout %d\n"
+
+# Slecht vertaald. Wat is de geijkte vertaling voor 'out of bounds'?
+#: dis-buf.c:62
+#, c-format
+msgid "Address 0x%x is out of bounds.\n"
+msgstr "Adres 0x%x is buiten de perken.\n"
+
+# Betere vertaling voor 'parsing'?
+#: fr30-asm.c:323 frv-asm.c:626 ip2k-asm.c:574 iq2000-asm.c:460 m32r-asm.c:325
+#: openrisc-asm.c:261 xstormy16-asm.c:284
+#, c-format
+msgid "Unrecognized field %d while parsing.\n"
+msgstr "Veld %d niet herkend tijdens parsen.\n"
+
+#: fr30-asm.c:373 frv-asm.c:676 ip2k-asm.c:624 iq2000-asm.c:510 m32r-asm.c:375
+#: openrisc-asm.c:311 xstormy16-asm.c:334
+msgid "missing mnemonic in syntax string"
+msgstr "mnemonic ontbreekt in syntaxstring"
+
+#. We couldn't parse it.
+#: fr30-asm.c:509 fr30-asm.c:513 fr30-asm.c:600 fr30-asm.c:702 frv-asm.c:812
+#: frv-asm.c:816 frv-asm.c:903 frv-asm.c:1005 ip2k-asm.c:760 ip2k-asm.c:764
+#: ip2k-asm.c:851 ip2k-asm.c:953 iq2000-asm.c:646 iq2000-asm.c:650
+#: iq2000-asm.c:737 iq2000-asm.c:839 m32r-asm.c:511 m32r-asm.c:515
+#: m32r-asm.c:602 m32r-asm.c:704 openrisc-asm.c:447 openrisc-asm.c:451
+#: openrisc-asm.c:538 openrisc-asm.c:640 xstormy16-asm.c:470
+#: xstormy16-asm.c:474 xstormy16-asm.c:561 xstormy16-asm.c:663
+msgid "unrecognized instruction"
+msgstr "instructie niet herkend"
+
+#: fr30-asm.c:556 frv-asm.c:859 ip2k-asm.c:807 iq2000-asm.c:693 m32r-asm.c:558
+#: openrisc-asm.c:494 xstormy16-asm.c:517
+#, c-format
+msgid "syntax error (expected char `%c', found `%c')"
+msgstr "syntaxfout (verwachtte character `%c', maar vond `%c')"
+
+#: fr30-asm.c:566 frv-asm.c:869 ip2k-asm.c:817 iq2000-asm.c:703 m32r-asm.c:568
+#: openrisc-asm.c:504 xstormy16-asm.c:527
+#, c-format
+msgid "syntax error (expected char `%c', found end of instruction)"
+msgstr "syntaxfout (verwachtte character `%c', maar vond het einde van de instructie)"
+
+# Betere (niet-Vlaamse) vertaling voor 'junk'?
+#: fr30-asm.c:594 frv-asm.c:897 ip2k-asm.c:845 iq2000-asm.c:731 m32r-asm.c:596
+#: openrisc-asm.c:532 xstormy16-asm.c:555
+msgid "junk at end of line"
+msgstr "brol aan einde van lijn"
+
+#: fr30-asm.c:701 frv-asm.c:1004 ip2k-asm.c:952 iq2000-asm.c:838
+#: m32r-asm.c:703 openrisc-asm.c:639 xstormy16-asm.c:662
+msgid "unrecognized form of instruction"
+msgstr "instructievorm niet herkend"
+
+#: fr30-asm.c:713 frv-asm.c:1016 ip2k-asm.c:964 iq2000-asm.c:850
+#: m32r-asm.c:715 openrisc-asm.c:651 xstormy16-asm.c:674
+#, c-format
+msgid "bad instruction `%.50s...'"
+msgstr "slechte instructie `%s.50s...'"
+
+#: fr30-asm.c:716 frv-asm.c:1019 ip2k-asm.c:967 iq2000-asm.c:853
+#: m32r-asm.c:718 openrisc-asm.c:654 xstormy16-asm.c:677
+#, c-format
+msgid "bad instruction `%.50s'"
+msgstr "slechte instructie `%s.50s'"
+
+#. Default text to print if an instruction isn't recognized.
+#: fr30-dis.c:41 frv-dis.c:41 ip2k-dis.c:41 iq2000-dis.c:41 m32r-dis.c:41
+#: mmix-dis.c:284 openrisc-dis.c:41 xstormy16-dis.c:41
+msgid "*unknown*"
+msgstr "*onbekend*"
+
+#: fr30-dis.c:320 frv-dis.c:371 ip2k-dis.c:329 iq2000-dis.c:192 m32r-dis.c:251
+#: openrisc-dis.c:138 xstormy16-dis.c:171
+#, c-format
+msgid "Unrecognized field %d while printing insn.\n"
+msgstr "Veld %d niet herkend bij het afdrukken van een insn.\n"
+
+#: fr30-ibld.c:166 frv-ibld.c:166 ip2k-ibld.c:166 iq2000-ibld.c:166
+#: m32r-ibld.c:166 openrisc-ibld.c:166 xstormy16-ibld.c:166
+#, c-format
+msgid "operand out of range (%ld not between %ld and %lu)"
+msgstr "operand buiten bereik (%ld niet tussen %ld en %lu)"
+
+#: fr30-ibld.c:179 frv-ibld.c:179 ip2k-ibld.c:179 iq2000-ibld.c:179
+#: m32r-ibld.c:179 openrisc-ibld.c:179 xstormy16-ibld.c:179
+#, c-format
+msgid "operand out of range (%lu not between 0 and %lu)"
+msgstr "operand buiten bereik (%lu niet tussen 0 en %lu)"
+
+#: fr30-ibld.c:730 frv-ibld.c:829 ip2k-ibld.c:607 iq2000-ibld.c:713
+#: m32r-ibld.c:659 openrisc-ibld.c:633 xstormy16-ibld.c:678
+#, c-format
+msgid "Unrecognized field %d while building insn.\n"
+msgstr "Veld %d niet herkend bij het opbouwen van een insn.\n"
+
+#: fr30-ibld.c:937 frv-ibld.c:1121 ip2k-ibld.c:684 iq2000-ibld.c:890
+#: m32r-ibld.c:792 openrisc-ibld.c:735 xstormy16-ibld.c:826
+#, c-format
+msgid "Unrecognized field %d while decoding insn.\n"
+msgstr "Veld %d niet herkend bij het decoderen van een insn.\n"
+
+#: fr30-ibld.c:1086 frv-ibld.c:1375 ip2k-ibld.c:761 iq2000-ibld.c:1024
+#: m32r-ibld.c:902 openrisc-ibld.c:815 xstormy16-ibld.c:939
+#, c-format
+msgid "Unrecognized field %d while getting int operand.\n"
+msgstr "Veld %d niet herkend bij het ophalen van een int-operand.\n"
+
+#: fr30-ibld.c:1215 frv-ibld.c:1609 ip2k-ibld.c:818 iq2000-ibld.c:1138
+#: m32r-ibld.c:992 openrisc-ibld.c:875 xstormy16-ibld.c:1032
+#, c-format
+msgid "Unrecognized field %d while getting vma operand.\n"
+msgstr "Veld %d niet herkend bij het ophalen van een vma-operand.\n"
+
+#: fr30-ibld.c:1349 frv-ibld.c:1852 ip2k-ibld.c:880 iq2000-ibld.c:1261
+#: m32r-ibld.c:1090 openrisc-ibld.c:944 xstormy16-ibld.c:1134
+#, c-format
+msgid "Unrecognized field %d while setting int operand.\n"
+msgstr "Veld %d niet herkend bij het instellen van een int-operand.\n"
+
+#: fr30-ibld.c:1471 frv-ibld.c:2083 ip2k-ibld.c:930 iq2000-ibld.c:1372
+#: m32r-ibld.c:1176 openrisc-ibld.c:1001 xstormy16-ibld.c:1224
+#, c-format
+msgid "Unrecognized field %d while setting vma operand.\n"
+msgstr "Veld %d niet herkend bij het instellen van een vma-operand.\n"
+
+#: frv-asm.c:365
+msgid "register number must be even"
+msgstr "registernummer moet paar zijn"
+
+#: h8300-dis.c:377
+#, c-format
+msgid "Hmmmm 0x%x"
+msgstr "Hmmmm 0x%x"
+
+#: h8300-dis.c:760
+#, c-format
+msgid "Don't understand 0x%x \n"
+msgstr "Ik begrijp 0x%x niet\n"
+
+#: h8500-dis.c:143
+#, c-format
+msgid "can't cope with insert %d\n"
+msgstr "kan niet omgaan met insert %d\n"
+
+#. Couldn't understand anything.
+#: h8500-dis.c:350
+#, c-format
+msgid "%02x\t\t*unknown*"
+msgstr "%02x\t\t*onbekend*"
+
+#: i386-dis.c:1699
+msgid "<internal disassembler error>"
+msgstr "<interne fout in de disassembler>"
+
+#: ia64-gen.c:295
+#, c-format
+msgid "%s: Error: "
+msgstr "%s: Fout: "
+
+#: ia64-gen.c:308
+#, c-format
+msgid "%s: Warning: "
+msgstr "%s: Let Op: "
+
+#: ia64-gen.c:494 ia64-gen.c:728
+#, c-format
+msgid "multiple note %s not handled\n"
+msgstr "meervoudige noot %s wordt niet opgevangen\n"
+
+#: ia64-gen.c:605
+msgid "can't find ia64-ic.tbl for reading\n"
+msgstr "kan invoerbestand ia64-ic.tbl niet vinden\n"
+
+#: ia64-gen.c:810
+#, c-format
+msgid "can't find %s for reading\n"
+msgstr "kan invoerbestand %s niet vinden\n"
+
+#: ia64-gen.c:1034
+#, c-format
+msgid ""
+"most recent format '%s'\n"
+"appears more restrictive than '%s'\n"
+msgstr ""
+"het meest recente formaat '%s'\n"
+"lijkt meer beperkend dan '%s'\n"
+
+#: ia64-gen.c:1045
+#, c-format
+msgid "overlapping field %s->%s\n"
+msgstr "overlappend veld %s->%s\n"
+
+#: ia64-gen.c:1236
+#, c-format
+msgid "overwriting note %d with note %d (IC:%s)\n"
+msgstr "noot %d wordt overschreven door noot %d (IC:%s)\n"
+
+#: ia64-gen.c:1435
+#, c-format
+msgid "don't know how to specify %% dependency %s\n"
+msgstr "ik weet niet hoe ik de %%-dependency %s moet opgeven\n"
+
+#: ia64-gen.c:1457
+#, c-format
+msgid "Don't know how to specify # dependency %s\n"
+msgstr "Ik weet niet hoe ik de #-dependency %s moet opgeven\n"
+
+#: ia64-gen.c:1496
+#, c-format
+msgid "IC:%s [%s] has no terminals or sub-classes\n"
+msgstr "IC:%s [%s] heeft geen eindsymbolen of subklassen\n"
+
+#: ia64-gen.c:1499
+#, c-format
+msgid "IC:%s has no terminals or sub-classes\n"
+msgstr "IC:%s heeft geen eindsymbolen of subklassen\n"
+
+#: ia64-gen.c:1508
+#, c-format
+msgid "no insns mapped directly to terminal IC %s [%s]"
+msgstr "er zijn geen insns die rechtstreeks naar eindsymbool IC %s [%s] vertaald worden"
+
+#: ia64-gen.c:1511
+#, c-format
+msgid "no insns mapped directly to terminal IC %s\n"
+msgstr "er zijn geen insns die rechtstreeks naar eindsymbool IC %s vertaald worden\n"
+
+#: ia64-gen.c:1522
+#, c-format
+msgid "class %s is defined but not used\n"
+msgstr "klasse %s is gedefinieerd maar wordt niet gebruikt\n"
+
+#: ia64-gen.c:1533
+#, c-format
+msgid "Warning: rsrc %s (%s) has no chks%s\n"
+msgstr "Let Op: rsrc %s (%s) heeft geen chks%s\n"
+
+#: ia64-gen.c:1537
+#, c-format
+msgid "rsrc %s (%s) has no regs\n"
+msgstr "rsrc %s (%s) heeft geen regs\n"
+
+#: ia64-gen.c:2436
+#, c-format
+msgid "IC note %d in opcode %s (IC:%s) conflicts with resource %s note %d\n"
+msgstr "IC noot %d in opcode %s (IC:%s) geeft een conflict met resource %s noot %d\n"
+
+#: ia64-gen.c:2464
+#, c-format
+msgid "IC note %d for opcode %s (IC:%s) conflicts with resource %s note %d\n"
+msgstr "IC noot %d voor opcode %s (IC:%s) geeft een conflict met resource %s noot %d\n"
+
+#: ia64-gen.c:2478
+#, c-format
+msgid "opcode %s has no class (ops %d %d %d)\n"
+msgstr "opcode %s heeft geen klasse (ops %d %d %d)\n"
+
+#: ia64-gen.c:2789
+#, c-format
+msgid "unable to change directory to \"%s\", errno = %s\n"
+msgstr "kan niet naar directory \"%s\" gaan, errno = %s\n"
+
+#. We've been passed a w.  Return with an error message so that
+#. cgen will try the next parsing option.
+#: ip2k-asm.c:92
+msgid "W keyword invalid in FR operand slot."
+msgstr "keyword W is ongeldig in operand-slot FR"
+
+#. Invalid offset present.
+#: ip2k-asm.c:122
+msgid "offset(IP) is not a valid form"
+msgstr "offset(IP) is geen geldige vorm"
+
+#. Found something there in front of (DP) but it's out
+#. of range.
+#: ip2k-asm.c:175
+msgid "(DP) offset out of range."
+msgstr "(DP) offset buiten bereik"
+
+#. Found something there in front of (SP) but it's out
+#. of range.
+#: ip2k-asm.c:221
+msgid "(SP) offset out of range."
+msgstr "(SP) offset buiten bereik"
+
+#: ip2k-asm.c:241
+msgid "illegal use of parentheses"
+msgstr "ongeldig gebruik van haakjes"
+
+#: ip2k-asm.c:248
+msgid "operand out of range (not between 1 and 255)"
+msgstr "operand buiten bereik (niet tussen 1 en 255)"
+
+#. Something is very wrong. opindex has to be one of the above.
+#: ip2k-asm.c:273
+msgid "parse_addr16: invalid opindex."
+msgstr "parse_addr16: ongeldige opindex."
+
+#: ip2k-asm.c:353
+msgid "Byte address required. - must be even."
+msgstr "Byte-adres vereist. - moet paar zijn."
+
+#: ip2k-asm.c:362
+msgid "cgen_parse_address returned a symbol. Literal required."
+msgstr "cgen_parse_address gaf een symbool terug terwijl een letterlijke waarde vereist is."
+
+#: ip2k-asm.c:420
+#, c-format
+msgid "%operator operand is not a symbol"
+msgstr "operand van %operator is geen symbool"
+
+#: ip2k-asm.c:474
+msgid "Attempt to find bit index of 0"
+msgstr "Poging tot vinden van bit-index van 0"
+
+#: iq2000-asm.c:110 iq2000-asm.c:141
+msgid "immediate value cannot be register"
+msgstr "onmiddellijke waarde kan geen register zijn"
+
+# of moet 'immediate' behouden worden?
+#: iq2000-asm.c:120 iq2000-asm.c:151
+msgid "immediate value out of range"
+msgstr "onmiddellijke waarde is buiten bereik"
+
+#: iq2000-asm.c:180
+msgid "21-bit offset out of range"
+msgstr "21-bit offset is buiten bereik"
+
+#: iq2000-asm.c:205 iq2000-asm.c:235 iq2000-asm.c:272 iq2000-asm.c:305
+#: openrisc-asm.c:96 openrisc-asm.c:155
+msgid "missing `)'"
+msgstr "`)' ontbreekt"
+
+#: m10200-dis.c:199
+#, c-format
+msgid "unknown\t0x%02x"
+msgstr "onbekend\t0x%02x"
+
+#: m10200-dis.c:339
+#, c-format
+msgid "unknown\t0x%04lx"
+msgstr "onbekend\t0x%04lx"
+
+#: m10300-dis.c:766
+#, c-format
+msgid "unknown\t0x%04x"
+msgstr "onbekend\t0x%04x"
+
+#: m68k-dis.c:429
+#, c-format
+msgid "<internal error in opcode table: %s %s>\n"
+msgstr "<interne fout in opcode-tabel: %s %s>\n"
+
+#: m68k-dis.c:1007
+#, c-format
+msgid "<function code %d>"
+msgstr "<functie-code %d>"
+
+#: m88k-dis.c:746
+#, c-format
+msgid "# <dis error: %08x>"
+msgstr "# <dis fout: %08x>"
+
+#: mips-dis.c:699
+msgid "# internal error, incomplete extension sequence (+)"
+msgstr "# interne fout, onvolledige extension sequence  (+)"
+
+#: mips-dis.c:742
+#, c-format
+msgid "# internal error, undefined extension sequence (+%c)"
+msgstr "# interne fout, extension sequence (+%c) niet gedefinieerd"
+
+#: mips-dis.c:1000
+#, c-format
+msgid "# internal error, undefined modifier(%c)"
+msgstr "# interne fout, modifier(%c) niet gedefinieerd"
+
+#: mips-dis.c:1751
+#, c-format
+msgid "# internal disassembler error, unrecognised modifier (%c)"
+msgstr "# interne fout in disassembler, modifier(%c) niet herkend"
+
+#: mips-dis.c:1763
+msgid ""
+"\n"
+"The following MIPS specific disassembler options are supported for use\n"
+"with the -M switch (multiple options should be separated by commas):\n"
+msgstr ""
+"\n"
+"De volgende MIPS-specifieke disassembler-opties worden ondersteund voor gebruik\n"
+"via de -M optie (meerdere opties moeten door komma's gescheiden worden):\n"
+
+#: mips-dis.c:1767
+msgid ""
+"\n"
+"  gpr-names=ABI            Print GPR names according to  specified ABI.\n"
+"                           Default: based on binary being disassembled.\n"
+msgstr ""
+"\n"
+"  gpr-names=ABI            Druk GPR-namen af volgens de opgegeven ABI.\n"
+"                           Standaard: gebaseerd op het binair bestand dat\n"
+"                           gedesassembleerd wordt.\n"
+
+#: mips-dis.c:1771
+msgid ""
+"\n"
+"  fpr-names=ABI            Print FPR names according to specified ABI.\n"
+"                           Default: numeric.\n"
+msgstr ""
+"\n"
+"  fpr-names=ABI            Druk FPR-namen af volgens de opgegeven ABI.\n"
+"                           Standaard: numeriek.\n"
+
+#: mips-dis.c:1775
+msgid ""
+"\n"
+"  cp0-names=ARCH           Print CP0 register names according to\n"
+"                           specified architecture.\n"
+"                           Default: based on binary being disassembled.\n"
+msgstr ""
+"\n"
+"  cp0-names=ARCH           Druk CP0 registernamen af volgens de opgegeven\n"
+"                           architectuur.\n"
+"                           Standaard: gebaseerd op het binair bestand dat\n"
+"                           gedesassembleerd wordt.\n"
+
+#: mips-dis.c:1780
+msgid ""
+"\n"
+"  hwr-names=ARCH           Print HWR names according to specified \n"
+"\t\t\t   architecture.\n"
+"                           Default: based on binary being disassembled.\n"
+msgstr ""
+"\n"
+"  hwr-names=ARCH           Druk HWR-namen af volgens de opgegeven architectuur.\n"
+"                           Standaard: gebaseerd op het binair bestand dat\n"
+"                           gedesassembleerd wordt.\n"
+"\n"
+
+#: mips-dis.c:1785
+msgid ""
+"\n"
+"  reg-names=ABI            Print GPR and FPR names according to\n"
+"                           specified ABI.\n"
+msgstr ""
+"\n"
+"  reg-names=ABI            Druk GPR- en FPR-namen af volgens de opgegeven ABI.\n"
+
+#: mips-dis.c:1789
+msgid ""
+"\n"
+"  reg-names=ARCH           Print CP0 register and HWR names according to\n"
+"                           specified architecture.\n"
+msgstr ""
+"\n"
+"  reg-names=ARCH           Druk CP0 registernamen en HWR-namen af volgens de\n"
+"                           opgegeven architectuur.\n"
+
+#: mips-dis.c:1793
+msgid ""
+"\n"
+"  For the options above, the following values are supported for \"ABI\":\n"
+"   "
+msgstr ""
+"\n"
+"  Voor de bovenstaande opties zijn dit de ondersteunde waarden voor \"ABI\":\n"
+"   "
+
+#: mips-dis.c:1798 mips-dis.c:1806 mips-dis.c:1808
+msgid "\n"
+msgstr "\n"
+
+#: mips-dis.c:1800
+msgid ""
+"\n"
+"  For the options above, The following values are supported for \"ARCH\":\n"
+"   "
+msgstr ""
+"\n"
+"  Voor de bovenstaande opties zijn dit de ondersteunde waarden voor \"ARCH\":\n"
+"   "
+
+#: mmix-dis.c:34
+#, c-format
+msgid "Bad case %d (%s) in %s:%d\n"
+msgstr "Ongeldige case %d (%s) in %s:%d\n"
+
+#: mmix-dis.c:44
+#, c-format
+msgid "Internal: Non-debugged code (test-case missing): %s:%d"
+msgstr "Intern: Code niet gedebugd (test-case ontbreekt): %s:%d"
+
+#: mmix-dis.c:53
+msgid "(unknown)"
+msgstr "(onbekend)"
+
+#: mmix-dis.c:519
+#, c-format
+msgid "*unknown operands type: %d*"
+msgstr "onbekend type operanden: %d"
+
+#. I and Z are output operands and can`t be immediate
+#. * A is an address and we can`t have the address of
+#. * an immediate either. We don't know how much to increase
+#. * aoffsetp by since whatever generated this is broken
+#. * anyway!
+#.
+#: ns32k-dis.c:631
+msgid "$<undefined>"
+msgstr "$<niet gedefinieerd>"
+
+#: ppc-opc.c:781 ppc-opc.c:809
+msgid "invalid conditional option"
+msgstr "ongeldige voorwaardelijke optie"
+
+# Dit kan waarschijnlijk beter
+#: ppc-opc.c:811
+msgid "attempt to set y bit when using + or - modifier"
+msgstr "poging om y bit in te stellen wanneer + of - modifier gebruikt wordt"
+
+#: ppc-opc.c:840
+msgid "offset not a multiple of 16"
+msgstr "offset is geen veelvoud van 16"
+
+#: ppc-opc.c:860
+msgid "offset not a multiple of 2"
+msgstr "offset is geen veelvoud van 2"
+
+#: ppc-opc.c:862
+msgid "offset greater than 62"
+msgstr "offset is groter dan 62"
+
+#: ppc-opc.c:881 ppc-opc.c:927 ppc-opc.c:975
+msgid "offset not a multiple of 4"
+msgstr "offset is geen veelvoud van 4"
+
+#: ppc-opc.c:883
+msgid "offset greater than 124"
+msgstr "offset is groter dan 124"
+
+#: ppc-opc.c:902
+msgid "offset not a multiple of 8"
+msgstr "offset is geen veelvoud van 8"
+
+#: ppc-opc.c:904
+msgid "offset greater than 248"
+msgstr "offset is groter dan 248"
+
+#: ppc-opc.c:950
+msgid "offset not between -2048 and 2047"
+msgstr "offset ligt niet tussen -2048 en 2047"
+
+#: ppc-opc.c:973
+msgid "offset not between -8192 and 8191"
+msgstr "offset ligt niet tussen -8192 en 8191"
+
+#: ppc-opc.c:1011
+msgid "ignoring invalid mfcr mask"
+msgstr "ongeldig mfcr-masker wordt genegeerd"
+
+#: ppc-opc.c:1059
+msgid "ignoring least significant bits in branch offset"
+msgstr "minst significante bits worden genegeerd in branch offset"
+
+#: ppc-opc.c:1090 ppc-opc.c:1125
+msgid "illegal bitmask"
+msgstr "illegaal bitmasker"
+
+#: ppc-opc.c:1192
+msgid "value out of range"
+msgstr "waarde buiten bereik"
+
+# of is laadbereik beter?
+#: ppc-opc.c:1262
+msgid "index register in load range"
+msgstr "indexregister in load-bereik"
+
+#: ppc-opc.c:1279
+msgid "source and target register operands must be different"
+msgstr "bron- en doel-registeroperanden moeten verschillen"
+
+#: ppc-opc.c:1294
+msgid "invalid register operand when updating"
+msgstr "ongeldige register-operand bij update"
+
+#: ppc-opc.c:1335
+msgid "target register operand must be even"
+msgstr "doel-registeroperand moet paar zijn"
+
+#: ppc-opc.c:1350
+msgid "source register operand must be even"
+msgstr "bron-registeroperand moet paar zijn"
+
+#. Mark as non-valid instruction.
+#: sparc-dis.c:760
+msgid "unknown"
+msgstr "onbekend"
+
+# Looks like this is a typo (two spaces after the ':')
+#: sparc-dis.c:835
+#, c-format
+msgid "Internal error:  bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
+msgstr "Interne fout: sparch-opcode.h is verkeerd: \"%s\", %#.8lx, %#.8lx\n"
+
+#: sparc-dis.c:846
+#, c-format
+msgid "Internal error: bad sparc-opcode.h: \"%s\", %#.8lx, %#.8lx\n"
+msgstr "Interne fout: sparch-opcode.h is verkeerd: \"%s\", %#.8lx, %#.8lx\n"
+
+#: sparc-dis.c:895
+#, c-format
+msgid "Internal error: bad sparc-opcode.h: \"%s\" == \"%s\"\n"
+msgstr "Interne fout: sparch-opcode.h is verkeerd: \"%s\" == \"%s\"\n"
+
+#: v850-dis.c:221
+#, c-format
+msgid "unknown operand shift: %x\n"
+msgstr "onbekende operand-shift: %x\n"
+
+#: v850-dis.c:233
+#, c-format
+msgid "unknown pop reg: %d\n"
+msgstr "onbekend pop reg: %d\n"
+
+# Wat is een goede vertaling voor 'displacement'?
+#. The functions used to insert and extract complicated operands.
+#. Note: There is a conspiracy between these functions and
+#. v850_insert_operand() in gas/config/tc-v850.c.  Error messages
+#. containing the string 'out of range' will be ignored unless a
+#. specific command line option is given to GAS.
+#: v850-opc.c:68
+msgid "displacement value is not in range and is not aligned"
+msgstr "displacement-waarde is niet in bereik en is niet uitgelijnd"
+
+#: v850-opc.c:69
+msgid "displacement value is out of range"
+msgstr "displacement-waarde is buiten bereik"
+
+#: v850-opc.c:70
+msgid "displacement value is not aligned"
+msgstr "displacement-waarde is niet uitgelijnd"
+
+# of moet 'immediate' behouden worden?
+#: v850-opc.c:72
+msgid "immediate value is out of range"
+msgstr "onmiddellijke waarde is buiten bereik"
+
+# Repeated message..., use 'to an odd...' to merge it
+#: v850-opc.c:83
+msgid "branch value not in range and to odd offset"
+msgstr "branch-waarde niet in bereik en naar onpare offset"
+
+#: v850-opc.c:85 v850-opc.c:117
+msgid "branch value out of range"
+msgstr "branch-waarde buiten bereik"
+
+#: v850-opc.c:88 v850-opc.c:120
+msgid "branch to odd offset"
+msgstr "branch naar onpare offset"
+
+#: v850-opc.c:115
+msgid "branch value not in range and to an odd offset"
+msgstr "branch-waarde niet in bereik en naar een onpare offset"
+
+#: v850-opc.c:346
+msgid "invalid register for stack adjustment"
+msgstr "ongeldig register voor stack-aanpassing"
+
+#: v850-opc.c:370
+msgid "immediate value not in range and not even"
+msgstr "onmiddellijke waarde niet in bereik en niet paar"
+
+#: v850-opc.c:375
+msgid "immediate value must be even"
+msgstr "onmiddellijke waarde moet paar zijn"
+
+# of is laadbereik beter?
+#: xstormy16-asm.c:76
+msgid "Bad register in preincrement"
+msgstr "Ongeldig register in preincrement"
+
+#: xstormy16-asm.c:81
+msgid "Bad register in postincrement"
+msgstr "Ongeldig register in postincrement"
+
+# of is laadbereik beter?
+#: xstormy16-asm.c:83
+msgid "Bad register name"
+msgstr "Ongeldige registernaam"
+
+#: xstormy16-asm.c:87
+msgid "Label conflicts with register name"
+msgstr "Label geeft conflict met registernaam"
+
+#: xstormy16-asm.c:91
+msgid "Label conflicts with `Rx'"
+msgstr "Label geeft conflict met `Rx'"
+
+#: xstormy16-asm.c:93
+msgid "Bad immediate expression"
+msgstr "Slechte onmiddelijke expressie"
+
+# immediate what? 'value' assumed
+#: xstormy16-asm.c:115
+msgid "No relocation for small immediate"
+msgstr "Geen relocatie voor kleine onmiddelijke waarde"
+
+#: xstormy16-asm.c:125
+msgid "Small operand was not an immediate number"
+msgstr "Kleine operand was geen onmiddellijk getal"
+
+#: xstormy16-asm.c:164
+msgid "Operand is not a symbol"
+msgstr "Operand is geen symbool"
+
+#: xstormy16-asm.c:172
+msgid "Syntax error: No trailing ')'"
+msgstr "Syntaxfout: Geen sluithaakje"