* elfread.c (elf_symfile_read): Update ELF structure and routine
authorKen Raeburn <raeburn@cygnus>
Tue, 25 May 1993 20:21:06 +0000 (20:21 +0000)
committerKen Raeburn <raeburn@cygnus>
Tue, 25 May 1993 20:21:06 +0000 (20:21 +0000)
names to specify 32-bit versions.
(elf_symtab_read): Retrieve size field directly from symbol,
instead of using old kludge.

gdb/elfread.c

index eebd0e3f99f218a08da48acce65700ef5927d705..a0345f8358fd4c958044bca37c33be326fe23201 100644 (file)
@@ -33,11 +33,9 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
  ************************************************************************/
 
 #include "defs.h"
-#include "elf/common.h"
-#include "elf/external.h"
-#include "elf/internal.h"
 #include "bfd.h"
 #include "libbfd.h"            /* For bfd_elf_find_section */
+#include "libelf.h"
 #include "symtab.h"
 #include "symfile.h"
 #include "objfiles.h"
@@ -283,8 +281,12 @@ elf_symtab_read (abfd, addr, objfile)
                  continue;             /* Skip this symbol. */
                }
              /* Pass symbol size field in via BFD.  FIXME!!!  */
-             record_minimal_symbol_and_info ((char *) sym -> name,
-                        symaddr, ms_type, sym->udata, objfile);
+             {
+               elf32_symbol_type *esym = (elf32_symbol_type *) sym;
+               unsigned long size = esym->internal_elf_sym.st_size;
+               record_minimal_symbol_and_info ((char *) sym -> name, symaddr,
+                                               ms_type, (PTR) size, objfile);
+             }
            }
 
          /* See if this is a debugging symbol that helps Solaris
@@ -436,9 +438,9 @@ elf_symfile_read (objfile, section_offsets, mainline)
         sections visible to the caller.  So we have to search the
         ELF section table, not the BFD section table, for the string
         table.  */
-      struct elf_internal_shdr *elf_sect;
+      struct elf32_internal_shdr *elf_sect;
 
-      elf_sect = bfd_elf_find_section (abfd, ".stabstr");
+      elf_sect = bfd_elf32_find_section (abfd, ".stabstr");
       if (elf_sect)
        elfstab_build_psymtabs (objfile,
          section_offsets,