From a358ecb8a8a60c20d5f9af0acad77f18f539964c Mon Sep 17 00:00:00 2001 From: Alan Modra Date: Mon, 11 Jan 2010 08:36:19 +0000 Subject: [PATCH] PR 6832 * dwarf2.c (struct comp_unit): Add sec_info_ptr. (find_abstract_instance_name): Use it. (parse_comp_unit): Set it. --- bfd/ChangeLog | 7 +++++++ bfd/dwarf2.c | 6 +++++- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/bfd/ChangeLog b/bfd/ChangeLog index e9c5e9210c8..ec184aa25e4 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,10 @@ +2010-01-11 Alan Modra + + PR 6832 + * dwarf2.c (struct comp_unit): Add sec_info_ptr. + (find_abstract_instance_name): Use it. + (parse_comp_unit): Set it. + 2010-01-09 Ralf Wildenhues * Makefile.in: Regenerate. diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c index e5eccfc19aa..533534d28c7 100644 --- a/bfd/dwarf2.c +++ b/bfd/dwarf2.c @@ -216,6 +216,9 @@ struct comp_unit by its reference. */ bfd_byte *info_ptr_unit; + /* Pointer to the start of the debug section, for DW_FORM_ref_addr. */ + bfd_byte *sec_info_ptr; + /* The offset into .debug_line of the line number table. */ unsigned long line_offset; @@ -1811,7 +1814,7 @@ find_abstract_instance_name (struct comp_unit *unit, if (!die_ref) abort (); - info_ptr = unit->stash->sec_info_ptr + die_ref; + info_ptr = unit->sec_info_ptr + die_ref; } else info_ptr = unit->info_ptr_unit + die_ref; @@ -2219,6 +2222,7 @@ parse_comp_unit (struct dwarf2_debug *stash, unit->end_ptr = end_ptr; unit->stash = stash; unit->info_ptr_unit = info_ptr_unit; + unit->sec_info_ptr = stash->sec_info_ptr; for (i = 0; i < abbrev->num_attrs; ++i) { -- 2.30.2