* mips-dis.c (print_insn_arg): Handle ';' opcode completer.
authorJeff Law <law@redhat.com>
Mon, 18 May 1998 17:46:34 +0000 (17:46 +0000)
committerJeff Law <law@redhat.com>
Mon, 18 May 1998 17:46:34 +0000 (17:46 +0000)
        (_print_insn_mips): Likewise.
        * vu0.h (vopmula, vopmsub): Correctly handle opcode/operand
        completers.

opcodes/ChangeLog
opcodes/mips-dis.c
opcodes/vu0.h

index 3e17bf6ad7e7a22e091dc36ac4eee788a1b4cd29..02bfd2aef0d6492cebf112c60a48096fe5216632 100644 (file)
@@ -1,3 +1,12 @@
+start-sanitize-r5900
+Mon May 18 11:44:00 1998  Jeffrey A Law  (law@cygnus.com)
+
+       * mips-dis.c (print_insn_arg): Handle ';' opcode completer.
+       (_print_insn_mips): Likewise.
+       * vu0.h (vopmula, vopmsub): Correctly handle opcode/operand
+       completers.
+
+end-sanitize-r5900
 Fri May 15 14:58:31 1998  Doug Evans  <devans@seba.cygnus.com>
 
        * cgen-opc.c (cgen_hw_lookup_by_name): Renamed from cgen_hw_lookup.
index 424567d027f151bdc4477afecf8193ec901afde6..1541cfd40830c90d0f75b0dd9f997037df94691b 100644 (file)
@@ -1,5 +1,5 @@
 /* Print mips instructions for GDB, the GNU debugger, or for objdump.
-   Copyright 1989, 91-97, 1998 Free Software Foundation, Inc.
+   Copyright (c) 1989, 91-97, 1998 Free Software Foundation, Inc.
    Contributed by Nobuyuki Hikichi(hikichi@sra.co.jp).
 
 This file is part of GDB, GAS, and the GNU binutils.
@@ -22,6 +22,7 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #include "sysdep.h"
 #include "dis-asm.h"
 #include "opcode/mips.h"
+#include "opintl.h"
 
 /* FIXME: These are needed to figure out if this is a mips16 symbol or
    not.  It would be better to think of a cleaner way to do this.  */
@@ -87,7 +88,7 @@ print_insn_arg (d, l, pc, info)
       /* start-sanitize-r5900 */
     case '+':
     case '-':
-      /* end-santiize-r5900 */
+      /* end-sanitize-r5900 */
       (*info->fprintf_func) (info->stream, "%c", *d);
       break;
 
@@ -167,6 +168,12 @@ print_insn_arg (d, l, pc, info)
                             (l >> OP_SH_CODE) & OP_MASK_CODE);
       break;
 
+
+    case 'q':
+      (*info->fprintf_func) (info->stream, "0x%x",
+                            (l >> OP_SH_CODE2) & OP_MASK_CODE2);
+      break;
+
     case 'C':
       (*info->fprintf_func) (info->stream, "0x%x",
                             (l >> OP_SH_COPZ) & OP_MASK_COPZ);
@@ -241,6 +248,10 @@ print_insn_arg (d, l, pc, info)
     case 'K':
       break;
 
+    case ';':
+      (*info->fprintf_func) (info->stream, ".xyz\t");
+      break;
+       
     case '&':
       (*info->fprintf_func) (info->stream, ".");
       if (l & (1 << 21))
@@ -351,8 +362,10 @@ print_insn_arg (d, l, pc, info)
       /* end-sanitize-vr5400 */
 
     default:
+      /* xgettext:c-format */
       (*info->fprintf_func) (info->stream,
-                            "# internal error, undefined modifier(%c)", *d);
+                            _("# internal error, undefined modifier(%c)"),
+                            *d);
       break;
     }
 }
@@ -549,7 +562,7 @@ _print_insn_mips (memaddr, word, info)
                  /* start-sanitize-r5900 */
                  /* If this is an opcode completer, then do not emit
                     a tab after the opcode.  */
-                 if (*d != '&')
+                 if (*d != '&' && *d != ';')
                  /* end-sanitize-r5900 */
                    (*info->fprintf_func) (info->stream, "\t");
                  for (; *d != '\0'; d++)
index 67e213673d82de1768931440f12a279412d6acc4..46354128ebf3ced817a3024a176993dab85c58eb 100644 (file)
@@ -130,8 +130,8 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  *
 {"vmulay",  "&UK,2K,1#y",      0x4a0001bd, 0xfe0007ff, 0,              T5},
 {"vmulaz",  "&UK,2K,1#z",      0x4a0001be, 0xfe0007ff, 0,              T5},
 {"vnop","",            0x4a0002ff, 0xffffffff, 0,              T5},
-{"vopmula.xyz", "U,2,1", 0x4bc002fe, 0xffe007ff,       0,      T5},
-{"vopmsub.xyz", "3,2,1", 0x4bc0002e, 0xffe0003f,       0,      T5},
+{"vopmula", ";UK,2K,1K", 0x4bc002fe, 0xffe007ff,       0,      T5},
+{"vopmsub", ";3K,2K,1K", 0x4bc0002e, 0xffe0003f,       0,      T5},
 {"vrget",  "1K,X",     0x4a20043d, 0xffe0ffff, 0,              T5},
 {"vrinit", "X,8",      0x4a00043e, 0xff9f07ff, 0,              T5},
 {"vrnext",  "1K,X",    0x4a20043c, 0xffe0ffff, 0,              T5},