[PATCH] Remove dead code from i386b-nat.c

Mark Kettenis kettenis@chello.nl
Sun Aug 18 10:29:00 GMT 2002


Not that I expect that any targets using i386b-nat.c can still be
build, but even if such a target is resurrected, I won't tolerate it
if this code was enabled again.

Committed.

Mark


Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>
	* config/i386/nm-i386bsd.h (FLOAT_INFO): Remove redundant #undef.
	* i386b-nat.c [FLOAT_INFO]: Remove dead code.

Index: i386b-nat.c
===================================================================
RCS file: /cvs/src/src/gdb/i386b-nat.c,v
retrieving revision 1.5
diff -u -p -r1.5 i386b-nat.c
--- i386b-nat.c 4 May 2001 04:15:25 -0000 1.5
+++ i386b-nat.c 18 Aug 2002 17:24:36 -0000
@@ -123,169 +123,3 @@ i386_register_u_addr (int blockend, int 
 }
 
 #endif /* !FETCH_INFERIOR_REGISTERS */
-
-#ifdef FLOAT_INFO
-#include "expression.h"
-#include "language.h"		/* for local_hex_string */
-#include "floatformat.h"
-
-#include <sys/param.h>
-#include <sys/dir.h>
-#include <signal.h>
-#include <sys/ioctl.h>
-#include <fcntl.h>
-
-#include <a.out.h>
-
-#include <sys/time.h>
-#include <sys/resource.h>
-#include <sys/uio.h>
-#define curpcb Xcurpcb		/* XXX avoid leaking declaration from pcb.h */
-#include <sys/user.h>
-#undef curpcb
-#include <sys/file.h>
-#include "gdb_stat.h"
-#include <sys/ptrace.h>
-
-extern void print_387_control_word ();	/* i387-tdep.h */
-extern void print_387_status_word ();
-
-#define	fpstate		save87
-#define	U_FPSTATE(u)	u.u_pcb.pcb_savefpu
-
-struct env387
-  {
-    unsigned short control;
-    unsigned short r0;
-    unsigned short status;
-    unsigned short r1;
-    unsigned short tag;
-    unsigned short r2;
-    unsigned long eip;
-    unsigned short code_seg;
-    unsigned short opcode;
-    unsigned long operand;
-    unsigned short operand_seg;
-    unsigned short r3;
-    unsigned char regs[8][10];
-  };
-
-static void
-print_387_status (unsigned short status, struct env387 *ep)
-{
-  int i;
-  int bothstatus;
-  int top;
-  int fpreg;
-
-  bothstatus = ((status != 0) && (ep->status != 0));
-  if (status != 0)
-    {
-      if (bothstatus)
-	printf_unfiltered ("u: ");
-      print_387_status_word ((unsigned int) status);
-    }
-
-  if (ep->status != 0)
-    {
-      if (bothstatus)
-	printf_unfiltered ("e: ");
-      print_387_status_word ((unsigned int) ep->status);
-    }
-
-  print_387_control_word ((unsigned int) ep->control);
-  printf_unfiltered ("last exception: ");
-  printf_unfiltered ("opcode %s; ", local_hex_string (ep->opcode));
-  printf_unfiltered ("pc %s:", local_hex_string (ep->code_seg));
-  printf_unfiltered ("%s; ", local_hex_string (ep->eip));
-  printf_unfiltered ("operand %s", local_hex_string (ep->operand_seg));
-  printf_unfiltered (":%s\n", local_hex_string (ep->operand));
-
-  top = (ep->status >> 11) & 7;
-
-  printf_unfiltered ("regno     tag  msb              lsb  value\n");
-  for (fpreg = 7; fpreg >= 0; fpreg--)
-    {
-      double val;
-
-      printf_unfiltered ("%s %d: ", fpreg == top ? "=>" : "  ", fpreg);
-
-      switch ((ep->tag >> (fpreg * 2)) & 3)
-	{
-	case 0:
-	  printf_unfiltered ("valid ");
-	  break;
-	case 1:
-	  printf_unfiltered ("zero  ");
-	  break;
-	case 2:
-	  printf_unfiltered ("trap  ");
-	  break;
-	case 3:
-	  printf_unfiltered ("empty ");
-	  break;
-	}
-      for (i = 9; i >= 0; i--)
-	printf_unfiltered ("%02x", ep->regs[fpreg][i]);
-
-      floatformat_to_double (&floatformat_i387_ext, (char *) ep->regs[fpreg],
-			     &val);
-      printf_unfiltered ("  %g\n", val);
-    }
-}
-
-i386_float_info (void)
-{
-  struct user u;		/* just for address computations */
-  int i;
-  /* fpstate defined in <sys/user.h> */
-  struct fpstate *fpstatep;
-  char buf[sizeof (struct fpstate) + 2 * sizeof (int)];
-  unsigned int uaddr;
-  char fpvalid;
-  unsigned int rounded_addr;
-  unsigned int rounded_size;
-  /*extern int corechan; */
-  int skip;
-
-  uaddr = (char *) &U_FPSTATE (u) - (char *) &u;
-  if (! ptid_equal (inferior_ptid, null_ptid))
-    {
-      int *ip;
-
-      rounded_addr = uaddr & -sizeof (int);
-      rounded_size = (((uaddr + sizeof (struct fpstate)) - uaddr) +
-		      sizeof (int) - 1) / sizeof (int);
-      skip = uaddr - rounded_addr;
-
-      ip = (int *) buf;
-      for (i = 0; i < rounded_size; i++)
-	{
-	  *ip++ = ptrace (PT_READ_U, PIDGET (inferior_ptid),
-	                  (caddr_t) rounded_addr, 0);
-	  rounded_addr += sizeof (int);
-	}
-    }
-  else
-    {
-      printf ("float info: can't do a core file (yet)\n");
-      return;
-#if 0
-      if (lseek (corechan, uaddr, 0) < 0)
-	perror_with_name ("seek on core file");
-      if (myread (corechan, buf, sizeof (struct fpstate)) < 0)
-	  perror_with_name ("read from core file");
-      skip = 0;
-#endif
-    }
-
-  print_387_status (0, (struct env387 *) buf);
-}
-
-int
-kernel_u_size (void)
-{
-  return (sizeof (struct user));
-}
-
-#endif
Index: config/i386/nm-i386bsd.h
===================================================================
RCS file: /cvs/src/src/gdb/config/i386/nm-i386bsd.h,v
retrieving revision 1.3
diff -u -p -r1.3 nm-i386bsd.h
--- config/i386/nm-i386bsd.h 6 Mar 2001 08:21:28 -0000 1.3
+++ config/i386/nm-i386bsd.h 18 Aug 2002 17:24:36 -0000
@@ -28,8 +28,6 @@
 #include <machine/vmparam.h>
 #define KERNEL_U_ADDR USRSTACK
 
-#undef FLOAT_INFO		/* No float info yet */
-
 #define REGISTER_U_ADDR(addr, blockend, regno) \
 	(addr) = i386_register_u_addr ((blockend),(regno));
 



More information about the Gdb-patches mailing list