[gnu.gdb.bug] small bugs in ns32k support in gdb

taylor@THINK.COM (06/01/89)

[I sent this once before, but as near as I can tell it didn't reach the
mailing list/news group.  So here it is again.  My apologies if this is
a repeat.]

I don't have a merlin, but I recently needed to disassemble some ns32k
code and using the merlin config option to gdb seemed the quickest
approach.  Doing so, I found a few bugs -- a syntax error in m-merlin.h
and both some instructions missing from ns32k-opcode.h and some
incorrect opcodes.  Also, rett takes an argument.  Here are the changes.

RCS file: RCS/m-merlin.h,v
retrieving revision 1.1
diff -c1 -r1.1 m-merlin.h
*** /tmp/,RCSt1a10032	Mon May 29 21:02:59 1989
--- m-merlin.h	Sat May 27 04:39:48 1989
***************
*** 378,380 ****
    set_current_frame (create_new_frame (read_register (FP_REGNUM),\
! 				       read_pc ()));
  }
--- 378,380 ----
    set_current_frame (create_new_frame (read_register (FP_REGNUM),\
! 				       read_pc ()));		 \
  }
===================================================================
RCS file: RCS/ns32k-opcode.h,v
retrieving revision 1.1
diff -c1 -r1.1 ns32k-opcode.h
*** /tmp/,RCSt1a10032	Mon May 29 21:03:00 1989
--- ns32k-opcode.h	Mon May 29 21:01:16 1989
***************
*** 121,122 ****
--- 121,123 ----
    { "checkd",	11,24,	0x3ee,	"2A3D1r" },
+   { "cinv",	15,24,	0x271e,	"2D1q" },
    { "cmpf",	14,24,	0x09be,	"1F2F" },
***************
*** 143,146 ****
    { "deib",	14,24,	0x2cce,	"1B2W" },
!   { "deiw",	14,24,	0x2cce,	"1W2D" },
!   { "deid",	14,24,	0x2cce,	"1D2Q" },
    { "dia",	 8,8,	0xc2,	"" },
--- 144,147 ----
    { "deib",	14,24,	0x2cce,	"1B2W" },
!   { "deiw",	14,24,	0x2dce,	"1W2D" },
!   { "deid",	14,24,	0x2fce,	"1D2Q" },
    { "dia",	 8,8,	0xc2,	"" },
***************
*** 211,214 ****
    { "movmb",	14,24,	0x00ce,	"1D2D3d" },
!   { "movmw",	14,24,	0x00de,	"1D2D3d" },
!   { "movmd",	14,24,	0x00fe,	"1D2D3d" },
    { "movqb",	 7,16,	0x5c,	"2B1q" },
--- 212,215 ----
    { "movmb",	14,24,	0x00ce,	"1D2D3d" },
!   { "movmw",	14,24,	0x01ce,	"1D2D3d" },
!   { "movmd",	14,24,	0x03ce,	"1D2D3d" },
    { "movqb",	 7,16,	0x5c,	"2B1q" },
***************
*** 259,261 ****
    { "reti",	 8,8,	0x52,	"" },
!   { "rett",	 8,8,	0x42,	"" },
    { "rotb",	14,24,	0x004e,	"1B2B" },
--- 260,262 ----
    { "reti",	 8,8,	0x52,	"" },
!   { "rett",	 8,8,	0x42,	"1d" },
    { "rotb",	14,24,	0x004e,	"1B2B" },
***************
*** 281,283 ****
    { "setcfg",	15,24,	0x0b0e,	"5D1q" },
!   { "sfsr",	14,24,	0x673e,	"5D1D" },
    { "skpsb",	16,16,	0x0c0e,	"1i" },
--- 282,284 ----
    { "setcfg",	15,24,	0x0b0e,	"5D1q" },
!   { "sfsr",	14,24,	0x373e,	"5D1D" },
    { "skpsb",	16,16,	0x0c0e,	"1i" },
***************
*** 320,321 ****
--- 321,333 ----
    { "xord",	 6,16,	0x3b,	"1D2D" },
+ 
+ #if defined(NS32381)
+   { "dotf",	14,24,  0x0dfe, "1F2F" },
+   { "dotl",	14,24,  0x0cfe, "1L2L" },
+   { "logbf",	14,24,  0x15fe, "1F2F" },
+   { "logbl",	14,24,  0x14fe, "1L2L" },
+   { "polyf",	14,24,  0x09fe, "1F2F" },
+   { "polyl",	14,24,  0x08fe, "1L2L" },
+   { "scalbf",	14,24,  0x11fe, "1F2F" },
+   { "scalbl",	14,24,  0x10fe, "1L2L" },
+ #endif
  };				/* notstrs */

David
--
David Taylor
taylor@think.com, ...!think!taylor