2003-11-03 Andrew Cagney <cagney@redhat.com>

* 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.
This commit is contained in:
Andrew Cagney 2003-11-03 14:44:08 +00:00
parent 794cd17b28
commit 8530209598
5 changed files with 31 additions and 11 deletions

View 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

View 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,

View 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)
{

View 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)

View 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;
}
}