2003-11-03 Andrew Cagney <cagney@redhat.com>
authorAndrew Cagney <cagney@redhat.com>
Mon, 3 Nov 2003 14:44:08 +0000 (14:44 +0000)
committerAndrew Cagney <cagney@redhat.com>
Mon, 3 Nov 2003 14:44:08 +0000 (14:44 +0000)
* section.c (bfd_set_section_contents): Make the "location" buffer
constant.
* bfd-in2.h: Re-generate.

Index: gdb/ChangeLog
2003-11-03  Andrew Cagney  <cagney@redhat.com>

* exec.c (xfer_memory): Eliminate xfer_fn.

bfd/ChangeLog
bfd/bfd-in2.h
bfd/section.c
gdb/ChangeLog
gdb/exec.c

index 9307eb9..23a6049 100644 (file)
@@ -1,3 +1,9 @@
+2003-11-03  Andrew Cagney  <cagney@redhat.com>
+
+       * section.c (bfd_set_section_contents): Make the "location" buffer
+       constant.
+       * bfd-in2.h: Re-generate.
+       
 2003-10-30  Andrew Cagney  <cagney@redhat.com>
 
        * syms.c: Replace "struct symbol_cache_entry" with "struct
index 27dbca9..1d01116 100644 (file)
@@ -1483,8 +1483,8 @@ bfd_boolean bfd_set_section_size
    (bfd *abfd, asection *sec, bfd_size_type val);
 
 bfd_boolean bfd_set_section_contents
-   (bfd *abfd, asection *section, void *data, file_ptr offset,
-    bfd_size_type count);
+   (bfd *abfd, asection *section, const void *data,
+    file_ptr offset, bfd_size_type count);
 
 bfd_boolean bfd_get_section_contents
    (bfd *abfd, asection *section, void *location, file_ptr offset,
index 360d117..e99062a 100644 (file)
@@ -1132,8 +1132,8 @@ FUNCTION
 
 SYNOPSIS
        bfd_boolean bfd_set_section_contents
-         (bfd *abfd, asection *section, void *data, file_ptr offset,
-          bfd_size_type count);
+         (bfd *abfd, asection *section, const void *data,
+          file_ptr offset, bfd_size_type count);
 
 DESCRIPTION
        Sets the contents of the section @var{section} in BFD
@@ -1161,7 +1161,7 @@ DESCRIPTION
 bfd_boolean
 bfd_set_section_contents (bfd *abfd,
                          sec_ptr section,
-                         void *location,
+                         const void *location,
                          file_ptr offset,
                          bfd_size_type count)
 {
index a580602..9b2eb40 100644 (file)
@@ -1,3 +1,7 @@
+2003-11-03  Andrew Cagney  <cagney@redhat.com>
+
+       * exec.c (xfer_memory): Eliminate xfer_fn.
+
 2003-10-31  Kevin Buettner  <kevinb@redhat.com>
 
        * frv-tdep.c (gdb_assert.h, sim-regno.h, gdb/sim-frv.h)
index 8ca669e..a8ae0c0 100644 (file)
@@ -457,7 +457,6 @@ xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write,
   int res;
   struct section_table *p;
   CORE_ADDR nextsectaddr, memend;
-  int (*xfer_fn) (bfd *, sec_ptr, void *, file_ptr, bfd_size_type);
   asection *section = NULL;
 
   if (len <= 0)
@@ -471,7 +470,6 @@ xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write,
     }
 
   memend = memaddr + len;
-  xfer_fn = write ? bfd_set_section_contents : bfd_get_section_contents;
   nextsectaddr = memend;
 
   for (p = target->to_sections; p < target->to_sections_end; p++)
@@ -484,8 +482,14 @@ xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write,
          if (memend <= p->endaddr)
            {
              /* Entire transfer is within this section.  */
-             res = xfer_fn (p->bfd, p->the_bfd_section, myaddr,
-                            memaddr - p->addr, len);
+             if (write)
+               res = bfd_set_section_contents (p->bfd, p->the_bfd_section,
+                                               myaddr, memaddr - p->addr,
+                                               len);
+             else
+               res = bfd_get_section_contents (p->bfd, p->the_bfd_section,
+                                               myaddr, memaddr - p->addr,
+                                               len);
              return (res != 0) ? len : 0;
            }
          else if (memaddr >= p->endaddr)
@@ -497,8 +501,14 @@ xfer_memory (CORE_ADDR memaddr, char *myaddr, int len, int write,
            {
              /* This section overlaps the transfer.  Just do half.  */
              len = p->endaddr - memaddr;
-             res = xfer_fn (p->bfd, p->the_bfd_section, myaddr,
-                            memaddr - p->addr, len);
+             if (write)
+               res = bfd_set_section_contents (p->bfd, p->the_bfd_section,
+                                               myaddr, memaddr - p->addr,
+                                               len);
+             else
+               res = bfd_get_section_contents (p->bfd, p->the_bfd_section,
+                                               myaddr, memaddr - p->addr,
+                                               len);
              return (res != 0) ? len : 0;
            }
         }