From: Elena Zannoni Date: Fri, 21 Apr 2000 14:24:45 +0000 (+0000) Subject: 2000-04-21 Elena Zannoni X-Git-Url: http://git.efficios.com/?a=commitdiff_plain;h=0aa9cf965cb61e0ecd6d1614b03306b63bfe8c71;p=deliverable%2Fbinutils-gdb.git 2000-04-21 Elena Zannoni * 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. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1ff7e3a885..3819c6703b 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2000-04-21 Elena Zannoni + + * 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 * MAINTAINERS: Make Jimmy Guo TUI maintainer. diff --git a/gdb/somread.c b/gdb/somread.c index 489a33095a..bc9a3829ab 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 cde7f91d28..5d559a083c 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 0a1c4272cf..869876ea40 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); diff --git a/gdb/windows-nat.c b/gdb/windows-nat.c index 0a1c4272cf..869876ea40 100644 --- a/gdb/windows-nat.c +++ b/gdb/windows-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);