2000-04-21 Elena Zannoni <ezannoni@kwikemart.cygnus.com>
authorElena Zannoni <ezannoni@kwikemart.cygnus.com>
Fri, 21 Apr 2000 14:24:45 +0000 (14:24 +0000)
committerElena Zannoni <ezannoni@kwikemart.cygnus.com>
Fri, 21 Apr 2000 14:24:45 +0000 (14:24 +0000)
* 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.

gdb/ChangeLog
gdb/somread.c
gdb/somsolib.c
gdb/win32-nat.c
gdb/windows-nat.c

index 1ff7e3a8853c567fbb090ede48dc19d8675b9df0..3819c6703bcf7a1b1f5f39fef35794e62b6ccbde 100644 (file)
@@ -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.
index 489a33095aba5393346cd7c0c72f882308d76828..bc9a3829abbe61d66932114e973f839363806252 100644 (file)
@@ -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;
     }
 }
 
index cde7f91d28632c526033c854d5ec04f34f1443ee..5d559a083cd909f32e3c23d853d3da75dc50ca80 100644 (file)
@@ -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;
 
index 0a1c4272cf6feeefb272f82039eec894398b1cb1..869876ea40f4b0ee82459cf67912864b6295a2aa 100644 (file)
@@ -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);
 
index 0a1c4272cf6feeefb272f82039eec894398b1cb1..869876ea40f4b0ee82459cf67912864b6295a2aa 100644 (file)
@@ -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);