aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog8
-rw-r--r--gdb/dwarfread.c3
-rw-r--r--gdb/elfread.c37
-rw-r--r--gdb/somread.c3
4 files changed, 23 insertions, 28 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index c3081fb..88fde5e 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,11 @@
+Thu Jul 14 14:22:12 1994 Stan Shebs (shebs@andros.cygnus.com)
+
+ * dbxread.c: Don't include libbfd.h.
+ * dwarfread.c, elfread.c somread.c: Don't include libbfd.h,
+ <time.h>, or <sys/types.h>.
+ * elfread.c (elf_symfile_read): Use only standard BFD functions to
+ collect information about the stab and stab string sections.
+
Thu Jul 14 13:17:39 1994 Kung Hsu (kung@x1.cygnus.com)
* stabsread.c (read_huge_number): handle large unsigned number
diff --git a/gdb/dwarfread.c b/gdb/dwarfread.c
index 15d2988..96196f5 100644
--- a/gdb/dwarfread.c
+++ b/gdb/dwarfread.c
@@ -44,9 +44,6 @@ other things to work on, if you get bored. :-)
#include "gdbtypes.h"
#include "symfile.h"
#include "objfiles.h"
-#include <time.h> /* For time_t in libbfd.h. */
-#include <sys/types.h> /* For time_t, if not in time.h. */
-#include "libbfd.h" /* FIXME Secret Internal BFD stuff (bfd_read) */
#include "elf/dwarf.h"
#include "buildsym.h"
#include "demangle.h"
diff --git a/gdb/elfread.c b/gdb/elfread.c
index 7b87cb2..214197c 100644
--- a/gdb/elfread.c
+++ b/gdb/elfread.c
@@ -20,9 +20,7 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "defs.h"
#include "bfd.h"
-#include <time.h> /* For time_t in libbfd.h. */
-#include <sys/types.h> /* For time_t, if not in time.h. */
-#include "libbfd.h" /* For bfd_elf_find_section */
+#include <string.h>
#include "libelf.h"
#include "elf/mips.h"
#include "symtab.h"
@@ -32,7 +30,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "stabsread.h"
#include "gdb-stabs.h"
#include "complaints.h"
-#include <string.h>
#include "demangle.h"
/* The struct elfinfo is available only during ELF symbol table and
@@ -579,25 +576,21 @@ elf_symfile_read (objfile, section_offsets, mainline)
}
if (ei.stabsect)
{
- /* STABS sections */
-
- /* FIXME: Sun didn't really know how to implement this well.
- They made .stab sections that don't point to the .stabstr
- section with the sh_link field. BFD doesn't make string table
- sections visible to the caller. So we have to search the
- ELF section table, not the BFD section table, for the string
- table. */
- struct elf32_internal_shdr *elf_sect;
-
- elf_sect = bfd_elf_find_section (abfd, ".stabstr");
- if (elf_sect)
+ asection *str_sect;
+
+ /* Stab sections have an associated string table that looks like
+ a separate section. */
+ str_sect = bfd_get_section_by_name (abfd, ".stabstr");
+
+ /* FIXME should probably warn about a stab section without a stabstr. */
+ if (str_sect)
elfstab_build_psymtabs (objfile,
- section_offsets,
- mainline,
- ei.stabsect->filepos, /* .stab offset */
- bfd_get_section_size_before_reloc (ei.stabsect),/* .stab size */
- (file_ptr) elf_sect->sh_offset, /* .stabstr offset */
- elf_sect->sh_size); /* .stabstr size */
+ section_offsets,
+ mainline,
+ ei.stabsect->filepos,
+ bfd_section_size (abfd, ei.stabsect),
+ str_sect->filepos,
+ bfd_section_size (abfd, str_sect));
}
if (ei.mdebugsect)
{
diff --git a/gdb/somread.c b/gdb/somread.c
index 0a2dc8b..d991019 100644
--- a/gdb/somread.c
+++ b/gdb/somread.c
@@ -20,9 +20,6 @@ Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. */
#include "defs.h"
#include "bfd.h"
-#include <time.h> /* For time_t in libbfd.h. */
-#include <sys/types.h> /* For time_t, if not in time.h. */
-#include "libbfd.h"
#include "som.h"
#include "libhppa.h"
#include <syms.h>