summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorElena Zannoni <ezannoni@kwikemart.cygnus.com>2000-04-21 14:24:45 +0000
committerElena Zannoni <ezannoni@kwikemart.cygnus.com>2000-04-21 14:24:45 +0000
commite9f8c07685d3eace1609c77d39247d6b59c6b646 (patch)
tree8c80c1fd3d0e67bb2928cc9b2dc6944e24a44c36
parentfe2b0d3ddc4324a2bf55a54a5724469eab99f5a1 (diff)
downloadgdb-e9f8c07685d3eace1609c77d39247d6b59c6b646.tar.gz
2000-04-21 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
* win32-nat.c (handle_load_dll): Don't treat .text as a special section anymore. * somread.c (som_symfile_offsets): Ditto. * somsolib.c (som_solib_add_solib_objfile): Ditto.
-rw-r--r--gdb/ChangeLog7
-rw-r--r--gdb/somread.c8
-rw-r--r--gdb/somsolib.c3
-rw-r--r--gdb/win32-nat.c3
4 files changed, 18 insertions, 3 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 1ff7e3a8853..3819c6703bc 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,10 @@
+2000-04-21 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
+
+ * win32-nat.c (handle_load_dll): Don't treat .text as a special
+ section anymore.
+ * somread.c (som_symfile_offsets): Ditto.
+ * somsolib.c (som_solib_add_solib_objfile): Ditto.
+
Fri Apr 21 16:14:38 2000 Andrew Cagney <cagney@b1.cygnus.com>
* MAINTAINERS: Make Jimmy Guo TUI maintainer.
diff --git a/gdb/somread.c b/gdb/somread.c
index 489a33095ab..bc9a3829abb 100644
--- a/gdb/somread.c
+++ b/gdb/somread.c
@@ -465,6 +465,7 @@ som_symfile_offsets (objfile, addrs)
struct section_addr_info *addrs;
{
int i;
+ CORE_ADDR text_addr;
objfile->num_sections = SECT_OFF_MAX;
objfile->section_offsets = (struct section_offsets *)
@@ -474,8 +475,13 @@ som_symfile_offsets (objfile, addrs)
offsets from the library, else get them from addrs. */
if (!som_solib_section_offsets (objfile, objfile->section_offsets))
{
+ for (i = 0; i < SECT_OFF_MAX && addrs->other[i].name; i++)
+ if (strcmp (addrs->other[i].name, ".text") == 0)
+ break;
+ text_addr = addrs->other[i].addr;
+
for (i = 0; i < SECT_OFF_MAX; i++)
- ANOFFSET (objfile->section_offsets, i) = addrs -> text_addr;
+ ANOFFSET (objfile->section_offsets, i) = text_addr;
}
}
diff --git a/gdb/somsolib.c b/gdb/somsolib.c
index cde7f91d286..5d559a083cd 100644
--- a/gdb/somsolib.c
+++ b/gdb/somsolib.c
@@ -290,7 +290,8 @@ som_solib_add_solib_objfile (so, name, from_tty, text_addr)
struct section_addr_info section_addrs;
memset (&section_addrs, 0, sizeof (section_addrs));
- section_addrs.text_addr = text_addr;
+ section_addrs.other[0].name = ".text";
+ section_addrs.other[0].addr = text_addr;
so->objfile = symbol_file_add (name, from_tty, &section_addrs, 0, OBJF_SHARED);
so->abfd = so->objfile->obfd;
diff --git a/gdb/win32-nat.c b/gdb/win32-nat.c
index 0a1c4272cf6..869876ea40f 100644
--- a/gdb/win32-nat.c
+++ b/gdb/win32-nat.c
@@ -558,7 +558,8 @@ handle_load_dll (PTR dummy)
the offset from 0 of the first byte in an image - because
of the file header and the section alignment. */
- section_addrs.text_addr = (int) event->lpBaseOfDll + 0x1000;
+ section_addrs.other[0].name = ".text";
+ section_addrs.other[0].addr = (int) event->lpBaseOfDll + 0x1000;
safe_symbol_file_add (dll_name, 0, &section_addrs, 0, OBJF_SHARED);
printf_unfiltered ("%x:%s\n", event->lpBaseOfDll, dll_name);