aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTristan Gingold <gingold@adacore.com>2009-12-02 11:44:35 +0000
committerTristan Gingold <gingold@adacore.com>2009-12-02 11:44:35 +0000
commitf29dff0a0940505506d27e54afbd750b8409846b (patch)
tree5173e101e9b96c9d61f96c35c4558c5300991883
parentc67a9c901aa0c78a85229ffc837a97d2589a99f8 (diff)
downloadbinutils-f29dff0a0940505506d27e54afbd750b8409846b.zip
binutils-f29dff0a0940505506d27e54afbd750b8409846b.tar.gz
binutils-f29dff0a0940505506d27e54afbd750b8409846b.tar.bz2
2009-12-02 Tristan Gingold <gingold@adacore.com>
* symfile.h (dwarf2_build_psymtabs): Remove mainline parameter in prototype. * dwarf2read.c (dwarf2_build_psymtabs): Remove mainline paramter in definition, simplify code assuming it is always 0. * coffread.c (coff_symfile_read): Adjust call. * elfread.c (elf_symfile_read): Ditto. * machoread.c (macho_symfile_read): Explicitely calls init_psymbol_list if mainline is set.
-rw-r--r--gdb/ChangeLog11
-rw-r--r--gdb/coffread.c2
-rw-r--r--gdb/dwarf2read.c6
-rw-r--r--gdb/elfread.c2
-rw-r--r--gdb/machoread.c7
-rw-r--r--gdb/symfile.h2
6 files changed, 22 insertions, 8 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index a90c40a..2bce667 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,16 @@
2009-12-02 Tristan Gingold <gingold@adacore.com>
+ * symfile.h (dwarf2_build_psymtabs): Remove mainline parameter in
+ prototype.
+ * dwarf2read.c (dwarf2_build_psymtabs): Remove mainline paramter in
+ definition, simplify code assuming it is always 0.
+ * coffread.c (coff_symfile_read): Adjust call.
+ * elfread.c (elf_symfile_read): Ditto.
+ * machoread.c (macho_symfile_read): Explicitely calls
+ init_psymbol_list if mainline is set.
+
+2009-12-02 Tristan Gingold <gingold@adacore.com>
+
* dwarf2read.c (dwarf2_build_psymtabs_easy): Remove mainline parameter.
(dwarf2_build_psymtabs_hard): Ditto.
(dwarf2_build_psymtabs): Ajust calls.
diff --git a/gdb/coffread.c b/gdb/coffread.c
index d66312b..84edfc5 100644
--- a/gdb/coffread.c
+++ b/gdb/coffread.c
@@ -641,7 +641,7 @@ coff_symfile_read (struct objfile *objfile, int mainline)
if (dwarf2_has_info (objfile))
{
/* DWARF2 sections. */
- dwarf2_build_psymtabs (objfile, mainline);
+ dwarf2_build_psymtabs (objfile);
}
dwarf2_build_frame_info (objfile);
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 0fa63a5..a92d923 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -1448,7 +1448,7 @@ dwarf2_get_section_info (struct objfile *objfile, const char *section_name,
/* Build a partial symbol table. */
void
-dwarf2_build_psymtabs (struct objfile *objfile, int mainline)
+dwarf2_build_psymtabs (struct objfile *objfile)
{
dwarf2_read_section (objfile, &dwarf2_per_objfile->info);
dwarf2_read_section (objfile, &dwarf2_per_objfile->abbrev);
@@ -1461,9 +1461,7 @@ dwarf2_build_psymtabs (struct objfile *objfile, int mainline)
dwarf2_read_section (objfile, &dwarf2_per_objfile->eh_frame);
dwarf2_read_section (objfile, &dwarf2_per_objfile->frame);
- if (mainline
- || (objfile->global_psymbols.size == 0
- && objfile->static_psymbols.size == 0))
+ if (objfile->global_psymbols.size == 0 && objfile->static_psymbols.size == 0)
{
init_psymbol_list (objfile, 1024);
}
diff --git a/gdb/elfread.c b/gdb/elfread.c
index b9e1568..d143e63 100644
--- a/gdb/elfread.c
+++ b/gdb/elfread.c
@@ -743,7 +743,7 @@ elf_symfile_read (struct objfile *objfile, int mainline)
if (dwarf2_has_info (objfile))
{
/* DWARF 2 sections */
- dwarf2_build_psymtabs (objfile, mainline);
+ dwarf2_build_psymtabs (objfile);
}
/* FIXME: kettenis/20030504: This still needs to be integrated with
diff --git a/gdb/machoread.c b/gdb/machoread.c
index ebd90c6..5e0a658 100644
--- a/gdb/machoread.c
+++ b/gdb/machoread.c
@@ -649,10 +649,15 @@ macho_symfile_read (struct objfile *objfile, int mainline)
}
}
+ /* If we are reinitializing, or if we have never loaded syms yet,
+ set table to empty. */
+ if (mainline)
+ init_psymbol_list (objfile, 0);
+
if (dwarf2_has_info (objfile))
{
/* DWARF 2 sections */
- dwarf2_build_psymtabs (objfile, mainline);
+ dwarf2_build_psymtabs (objfile);
}
/* Do not try to read .eh_frame/.debug_frame as they are not relocated
diff --git a/gdb/symfile.h b/gdb/symfile.h
index f73d22d..40f7db7 100644
--- a/gdb/symfile.h
+++ b/gdb/symfile.h
@@ -380,7 +380,7 @@ void free_symfile_segment_data (struct symfile_segment_data *data);
extern int dwarf2_has_info (struct objfile *);
-extern void dwarf2_build_psymtabs (struct objfile *, int);
+extern void dwarf2_build_psymtabs (struct objfile *);
extern void dwarf2_build_frame_info (struct objfile *);
void dwarf2_free_objfile (struct objfile *);