This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[commit] Fix some fallout from Andrew's target.h gdb_bytification


Probably all native targets don't compile with -Werror now.  This
patch fixes at least OpenBSD/i386 and FreeBSD/sparc64 native, but
probably not Linux native since Linux still uses much outdated target
vector code.

Committed as obvious,

Mark


Index: ChangeLog
from  Mark Kettenis  <kettenis@gnu.org>

	* corelow.c (core_xfer_partial): Change type of readbuf and
	writebuf to `gdb_byte *'.
	* sparc-nat.c (sparc_xfer_wcookie, sparc_xfer_partial): Change
	type of readbuf and writebuf to `gdb_byte *'.
	* bsd-uthread.c (bsd_uthread_xfer_partial): Change type of readbuf
	and writebuf to `gdb_byte *'.
	* inf-ptrace.c (inf_ptrace_xfer_partial): Change type of readbuf
	and writebuf to `gdb_byte *'.
	* bsd-kvm.c (bsd_kvm_xfer_memory): Replace.
	(bsd_kvm_xfer_partial): New function.
	(bsd_kvm_add_target): Set to_xfer_partial instead of
	to_xfer_memory.
	* bfd-target.c (target_bfd_xfer_partial): Change type of readbuf
	and writebuf to `gdb_byte *'.
	* target.c (deprecated_debug_xfer_memory): Remove prototype.
	(deprecated_debug_xfer_memory): Change type of second argument to
	`gdb_byte *'.
	* remote.c (remote_xfer_memory): Remove prototype.
	(remote_xfer_memory): Change type of second argument to `gdb_byte
	*'.
	(remote_xfer_partial): Change type of readbuf and writebuf to
	`gdb_byte *'.

Index: corelow.c
===================================================================
RCS file: /cvs/src/src/gdb/corelow.c,v
retrieving revision 1.49
diff -u -p -r1.49 corelow.c
--- corelow.c 12 May 2005 20:21:17 -0000 1.49
+++ corelow.c 16 May 2005 16:32:59 -0000
@@ -1,8 +1,8 @@
 /* Core dump and executable file functions below target vector, for GDB.
 
    Copyright 1986, 1987, 1989, 1991, 1992, 1993, 1994, 1995, 1996,
-   1997, 1998, 1999, 2000, 2001, 2003, 2004 Free Software Foundation,
-   Inc.
+   1997, 1998, 1999, 2000, 2001, 2003, 2004, 2005
+   Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -532,8 +532,8 @@ core_files_info (struct target_ops *t)
 
 static LONGEST
 core_xfer_partial (struct target_ops *ops, enum target_object object,
-		   const char *annex, void *readbuf,
-		   const void *writebuf, ULONGEST offset, LONGEST len)
+		   const char *annex, gdb_byte *readbuf,
+		   const gdb_byte *writebuf, ULONGEST offset, LONGEST len)
 {
   switch (object)
     {
Index: sparc-nat.c
===================================================================
RCS file: /cvs/src/src/gdb/sparc-nat.c,v
retrieving revision 1.30
diff -u -p -r1.30 sparc-nat.c
--- sparc-nat.c 11 Feb 2005 18:13:53 -0000 1.30
+++ sparc-nat.c 16 May 2005 16:32:59 -0000
@@ -1,6 +1,6 @@
 /* Native-dependent code for SPARC.
 
-   Copyright 2003, 2004 Free Software Foundation, Inc.
+   Copyright 2003, 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -255,8 +255,8 @@ store_inferior_registers (int regnum)
 
 LONGEST
 sparc_xfer_wcookie (struct target_ops *ops, enum target_object object,
-		    const char *annex, void *readbuf, const void *writebuf,
-		    ULONGEST offset, LONGEST len)
+		    const char *annex, gdb_byte *readbuf,
+		    const gdb_byte *writebuf, ULONGEST offset, LONGEST len)
 {
   unsigned long wcookie = 0;
   char *buf = (char *)&wcookie;
@@ -307,13 +307,13 @@ sparc_xfer_wcookie (struct target_ops *o
 }
 
 LONGEST (*inf_ptrace_xfer_partial) (struct target_ops *, enum target_object,
-				    const char *, void *, const void *,
+				    const char *, gdb_byte *, const gdb_byte *,
 				    ULONGEST, LONGEST);
 
 static LONGEST
 sparc_xfer_partial (struct target_ops *ops, enum target_object object,
-		    const char *annex, void *readbuf, const void *writebuf,
-		    ULONGEST offset, LONGEST len)
+		    const char *annex, gdb_byte *readbuf,
+		    const gdb_byte *writebuf, ULONGEST offset, LONGEST len)
 {
   if (object == TARGET_OBJECT_WCOOKIE)
     return sparc_xfer_wcookie (ops, object, annex, readbuf, writebuf, 
Index: inf-ptrace.c
===================================================================
RCS file: /cvs/src/src/gdb/inf-ptrace.c,v
retrieving revision 1.19
diff -u -p -r1.19 inf-ptrace.c
--- inf-ptrace.c 12 Feb 2005 00:39:19 -0000 1.19
+++ inf-ptrace.c 16 May 2005 16:32:59 -0000
@@ -400,8 +400,9 @@ inf_ptrace_stop (void)
 
 static LONGEST
 inf_ptrace_xfer_partial (struct target_ops *ops, enum target_object object,
-			 const char *annex, void *readbuf,
-			 const void *writebuf, ULONGEST offset, LONGEST len)
+			 const char *annex, gdb_byte *readbuf,
+			 const gdb_byte *writebuf,
+			 ULONGEST offset, LONGEST len)
 {
   switch (object)
     {
Index: bsd-kvm.c
===================================================================
RCS file: /cvs/src/src/gdb/bsd-kvm.c,v
retrieving revision 1.12
diff -u -p -r1.12 bsd-kvm.c
--- bsd-kvm.c 11 Feb 2005 04:05:45 -0000 1.12
+++ bsd-kvm.c 16 May 2005 16:32:59 -0000
@@ -1,6 +1,6 @@
 /* BSD Kernel Data Access Library (libkvm) interface.
 
-   Copyright 2004 Free Software Foundation, Inc.
+   Copyright 2004, 2005 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -103,17 +103,33 @@ bsd_kvm_close (int quitting)
     }
 }
 
-static int
-bsd_kvm_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len,
-		    int write, struct mem_attrib *attrib,
-		    struct target_ops *ops)
+static LONGEST
+bsd_kvm_xfer_memory (CORE_ADDR addr, ULONGEST len,
+		     gdb_byte *readbuf, const gdb_byte *writebuf)
 {
-  if (write)
-    return kvm_write (core_kd, memaddr, myaddr, len);
-  else
-    return kvm_read (core_kd, memaddr, myaddr, len);
+  ssize_t nbytes = len;
+
+  if (readbuf)
+    nbytes = kvm_read (core_kd, addr, readbuf, nbytes);
+  if (writebuf && nbytes > 0)
+    nbytes = kvm_write (core_kd, addr, writebuf, nbytes);
+  return nbytes;
+}
 
-  return -1;
+static LONGEST
+bsd_kvm_xfer_partial (struct target_ops *ops, enum target_object object,
+		      const char *annex, gdb_byte *readbuf,
+		      const gdb_byte *writebuf,
+		      ULONGEST offset, LONGEST len)
+{
+  switch (object)
+    {
+    case TARGET_OBJECT_MEMORY:
+      return bsd_kvm_xfer_memory (offset, len, readbuf, writebuf);
+
+    default:
+      return -1;
+    }
 }
 
 /* Fetch process control block at address PADDR.  */
@@ -287,7 +303,7 @@ Optionally specify the filename of a cor
   bsd_kvm_ops.to_open = bsd_kvm_open;
   bsd_kvm_ops.to_close = bsd_kvm_close;
   bsd_kvm_ops.to_fetch_registers = bsd_kvm_fetch_registers;
-  bsd_kvm_ops.deprecated_xfer_memory = bsd_kvm_xfer_memory;
+  bsd_kvm_ops.to_xfer_partial = bsd_kvm_xfer_partial;
   bsd_kvm_ops.to_stratum = process_stratum;
   bsd_kvm_ops.to_has_memory = 1;
   bsd_kvm_ops.to_has_stack = 1;
Index: bfd-target.c
===================================================================
RCS file: /cvs/src/src/gdb/bfd-target.c,v
retrieving revision 1.3
diff -u -p -r1.3 bfd-target.c
--- bfd-target.c 29 Jan 2005 17:53:25 -0000 1.3
+++ bfd-target.c 16 May 2005 16:32:59 -0000
@@ -1,6 +1,6 @@
 /* Very simple "bfd" target, for GDB, the GNU debugger.
 
-   Copyright 2003 Free Software Foundation, Inc.
+   Copyright 2003, 2005 Free Software Foundation, Inc.
 
    This file is part of GDB.
 
@@ -71,8 +71,9 @@ build_target_sections_from_bfd (struct t
 LONGEST
 target_bfd_xfer_partial (struct target_ops *ops,
 			 enum target_object object,
-			 const char *annex, void *readbuf,
-			 const void *writebuf, ULONGEST offset, LONGEST len)
+			 const char *annex, gdb_byte *readbuf,
+			 const gdb_byte *writebuf,
+			 ULONGEST offset, LONGEST len)
 {
   switch (object)
     {
Index: target.c
===================================================================
RCS file: /cvs/src/src/gdb/target.c,v
retrieving revision 1.107
diff -u -p -r1.107 target.c
--- target.c 16 May 2005 04:45:43 -0000 1.107
+++ target.c 16 May 2005 16:33:01 -0000
@@ -108,10 +108,6 @@ static void debug_to_store_registers (in
 
 static void debug_to_prepare_to_store (void);
 
-static int deprecated_debug_xfer_memory (CORE_ADDR, char *, int, int,
-					 struct mem_attrib *,
-					 struct target_ops *);
-
 static void debug_to_files_info (struct target_ops *);
 
 static int debug_to_insert_breakpoint (CORE_ADDR, gdb_byte *);
@@ -2006,7 +2002,7 @@ debug_to_prepare_to_store (void)
 }
 
 static int
-deprecated_debug_xfer_memory (CORE_ADDR memaddr, char *myaddr, int len,
+deprecated_debug_xfer_memory (CORE_ADDR memaddr, bfd_byte *myaddr, int len,
 			      int write, struct mem_attrib *attrib,
 			      struct target_ops *target)
 {
Index: remote.c
===================================================================
RCS file: /cvs/src/src/gdb/remote.c,v
retrieving revision 1.189
diff -u -p -r1.189 remote.c
--- remote.c 12 May 2005 20:21:17 -0000 1.189
+++ remote.c 16 May 2005 16:33:04 -0000
@@ -72,11 +72,6 @@ static void build_remote_gdbarch_data (v
 
 static void remote_files_info (struct target_ops *ignore);
 
-static int remote_xfer_memory (CORE_ADDR memaddr, char *myaddr,
-			       int len, int should_write,
-			       struct mem_attrib *attrib,
-			       struct target_ops *target);
-
 static void remote_prepare_to_store (void);
 
 static void remote_fetch_registers (int regno);
@@ -3871,7 +3866,7 @@ remote_read_bytes (CORE_ADDR memaddr, ch
    read; 0 for error.  TARGET is unused.  */
 
 static int
-remote_xfer_memory (CORE_ADDR mem_addr, char *buffer, int mem_len,
+remote_xfer_memory (CORE_ADDR mem_addr, gdb_byte *buffer, int mem_len,
 		    int should_write, struct mem_attrib *attrib,
 		    struct target_ops *target)
 {
@@ -4954,8 +4949,8 @@ the loaded file\n"));
 
 static LONGEST
 remote_xfer_partial (struct target_ops *ops, enum target_object object,
-		     const char *annex, void *readbuf, const void *writebuf,
-		     ULONGEST offset, LONGEST len)
+		     const char *annex, gdb_byte *readbuf,
+		     const gdb_byte *writebuf, ULONGEST offset, LONGEST len)
 {
   struct remote_state *rs = get_remote_state ();
   int i;


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]