diff options
author | Elena Zannoni <ezannoni@kwikemart.cygnus.com> | 2000-04-21 14:24:45 +0000 |
---|---|---|
committer | Elena Zannoni <ezannoni@kwikemart.cygnus.com> | 2000-04-21 14:24:45 +0000 |
commit | e9f8c07685d3eace1609c77d39247d6b59c6b646 (patch) | |
tree | 8c80c1fd3d0e67bb2928cc9b2dc6944e24a44c36 | |
parent | fe2b0d3ddc4324a2bf55a54a5724469eab99f5a1 (diff) | |
download | gdb-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/ChangeLog | 7 | ||||
-rw-r--r-- | gdb/somread.c | 8 | ||||
-rw-r--r-- | gdb/somsolib.c | 3 | ||||
-rw-r--r-- | gdb/win32-nat.c | 3 |
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 (§ion_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, §ion_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, §ion_addrs, 0, OBJF_SHARED); printf_unfiltered ("%x:%s\n", event->lpBaseOfDll, dll_name); |