* config/m68k/delta68.m{t,h}: Use nm-delta68.h, etc. not
authorJim Kingdon <jkingdon@engr.sgi.com>
Thu, 19 Aug 1993 23:18:03 +0000 (23:18 +0000)
committerJim Kingdon <jkingdon@engr.sgi.com>
Thu, 19 Aug 1993 23:18:03 +0000 (23:18 +0000)
non-existent files nm-delta.h, etc.
* config/m68k/tm-delta68.h: Define CANNOT_STORE_REGISTER.
* delta68-nat.c: Add "[0]" in offsetof argument.
* delta68-nat.c (_initialize_kernel_u_addr): Don't try to set up
nl with initializer, just assign to it.  Check n_scnum field on
return.

gdb/ChangeLog
gdb/config/m68k/delta68.mh
gdb/config/m68k/delta68.mt
gdb/config/m68k/tm-delta68.h
gdb/delta68-nat.c

index 091d477..0e1986a 100644 (file)
@@ -1,3 +1,13 @@
+Thu Aug 19 17:58:39 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
+
+       * config/m68k/delta68.m{t,h}: Use nm-delta68.h, etc. not
+       non-existent files nm-delta.h, etc.
+       * config/m68k/tm-delta68.h: Define CANNOT_STORE_REGISTER.
+       * delta68-nat.c: Add "[0]" in offsetof argument.
+       * delta68-nat.c (_initialize_kernel_u_addr): Don't try to set up
+       nl with initializer, just assign to it.  Check n_scnum field on
+       return. 
+
 Wed Aug 18 12:03:00 1993  Jim Kingdon  (kingdon@lioth.cygnus.com)
 
        * printcmd.c (print_address), values.c (value_as_pointer): Don't
index 677cb66..6b00d59 100644 (file)
@@ -2,5 +2,5 @@
 XM_FILE= xm-delta68.h
 REGEX=regex.o
 REGEX1=regex.o
-NAT_FILE= nm-delta.h
-NATDEPFILES= infptrace.o inftarg.o fork-child.o coredep.o corelow.o delta-nat.o
+NAT_FILE= nm-delta68.h
+NATDEPFILES= infptrace.o inftarg.o fork-child.o coredep.o corelow.o delta68-nat.o
index 1de2958..c111182 100644 (file)
@@ -1,3 +1,3 @@
 # Motorola Delta Series sysV68 R3V7.1
 TDEPFILES= m68k-pinsn.o exec.o m68k-tdep.o
-TM_FILE= tm-delta.h
+TM_FILE= tm-delta68.h
index 65694fc..f0bef1f 100644 (file)
@@ -34,4 +34,8 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
 
 #define HAVE_68881
 
+/* Not sure what happens if we try to store this register, but
+   phdm@info.ucl.ac.be says we need this define.  */
+#define CANNOT_STORE_REGISTER(regno)   (regno == FPI_REGNUM)
+
 #include "m68k/tm-m68k.h"
index e032a7d..d5d0049 100644 (file)
@@ -43,7 +43,7 @@ register_addr (regno, blockend)
   if (regno >= 0 && regno < sizeof(sysv68reg) / sizeof(sysv68reg[0]))
     return blockend + sysv68reg[regno] * 4; 
   else if (regno < FPC_REGNUM)
-    return offsetof (struct user, u_fpu.regs.reg[regno - FP0_REGNUM]
+    return offsetof (struct user, u_fpu.regs.reg[regno - FP0_REGNUM][0]
   else if (regno == FPC_REGNUM)
     return offsetof (struct user, u_fpu.regs.control);
   else if (regno == FPS_REGNUM)
@@ -60,12 +60,15 @@ Internal error: invalid register number %d in REGISTER_U_ADDR\n",
 }
 
 CORE_ADDR kernel_u_addr;
-static struct nlist nl[] = {{ "_u", -1, }, { (char *) 0, }};
 
 /* Read the value of the u area from the kernel.  */
 void _initialize_kernel_u_addr ()
 {
-  if (nlist ("/sysV68", nl) == 0)
+  stuct nlist nl[2];
+
+  nl[0].n_name = "u";
+  nl[1].n_name = NULL;
+  if (nlist ("/sysV68", nl) == 0 && nl[0].n_scnum != 0)
     kernel_u_addr = nl[0].n_value;
   else
     {