This is the mail archive of the
archer@sourceware.org
mailing list for the Archer project.
[delayed-symfile] [commit] Fix a regression on delayed retrievingof the unwinding debug info.
- From: Jan Kratochvil <jan dot kratochvil at redhat dot com>
- To: Tom Tromey <tromey at redhat dot com>
- Cc: archer at sourceware dot org
- Date: Wed, 25 Feb 2009 00:14:29 +0100
- Subject: [delayed-symfile] [commit] Fix a regression on delayed retrievingof the unwinding debug info.
commit 6a37c2b9962258ecf9299cc34a650e64a06acaa5
There was a regression on gdb.base/savedregs.exp.
quick_addrmap/require_partial_symbols should be used even for the unwind debug
info checking as its load has been also delayed by this branch.
Disputable is whether the delayed reading of partial symtabs and unwind info
should not be split in half and read separately on their specific demand.
Assuming their current load together has been decided for the GDB code
simplicity and it has no real performance impact.
* dwarf2-frame.c: Include addrmap.h.
(dwarf2_frame_find_fde): Check quick_addrmap, call
require_partial_symbols.
---
gdb/dwarf2-frame.c | 9 +++++++++
1 files changed, 9 insertions(+), 0 deletions(-)
diff --git a/gdb/dwarf2-frame.c b/gdb/dwarf2-frame.c
index ce11d89..eaa6a13 100644
--- a/gdb/dwarf2-frame.c
+++ b/gdb/dwarf2-frame.c
@@ -38,6 +38,7 @@
#include "complaints.h"
#include "dwarf2-frame.h"
+#include "addrmap.h"
struct comp_unit;
@@ -1499,6 +1500,14 @@ dwarf2_frame_find_fde (CORE_ADDR *pc)
struct dwarf2_fde *fde;
CORE_ADDR offset;
+ if (objfile->quick_addrmap)
+ {
+ if (!addrmap_find (objfile->quick_addrmap, *pc))
+ continue;
+ }
+ /* FIXME: Read-in only .debug_frame/.eh_frame without .debug_info? */
+ require_partial_symbols (objfile);
+
fde = objfile_data (objfile, dwarf2_frame_objfile_data);
if (fde == NULL)
continue;
--
1.6.0.6