summaryrefslogtreecommitdiff
path: root/bfd/dwarf2.c
diff options
context:
space:
mode:
authorAlan Modra <amodra@bigpond.net.au>2010-01-11 08:36:18 +0000
committerAlan Modra <amodra@bigpond.net.au>2010-01-11 08:36:18 +0000
commitc67bd4c08b8708b9816616ce4002874c43c1113a (patch)
tree7e13f92644508a4319bdad94964fb5539be23d06 /bfd/dwarf2.c
parent95cf6ea14eaf8123f56dc64c26cb9e677857c90f (diff)
downloadbinutils-redhat-c67bd4c08b8708b9816616ce4002874c43c1113a.tar.gz
PR 6832
* dwarf2.c (struct comp_unit): Add sec_info_ptr. (find_abstract_instance_name): Use it. (parse_comp_unit): Set it.
Diffstat (limited to 'bfd/dwarf2.c')
-rw-r--r--bfd/dwarf2.c6
1 files changed, 5 insertions, 1 deletions
diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c
index e5eccfc19a..533534d28c 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)
{