OSDN Git Service

Apply patch for binutils bug 806, approved by nickc@redhat.com.
authorfnf <fnf>
Sun, 3 Apr 2005 20:36:36 +0000 (20:36 +0000)
committerfnf <fnf>
Sun, 3 Apr 2005 20:36:36 +0000 (20:36 +0000)
commitf7df9459ed89cca0238a23439c05b087eec5571b
treeaf8b350357db3970764e85b24819f61da3bd92f8
parent83b800138f9946954b613bc75b8cdf47ca3d1e6e
Apply patch for binutils bug 806, approved by nickc@redhat.com.

2005-04-03  Fred Fish  <fnf@specifixinc.com>
* dwarf2.c (struct dwarf2_debug): Add dwarf_ranges_buffer and
dwarf_ranges_size members.
(struct comp_unit): Add base_address member.
(struct funcinfo): Replace low/high members with an arange.
(arange_add): Replace incoming "unit" parameter with "abfd" and
"first_arange" pointers.  Reorganize/rewrite function body.
(decode_line_info): Change arange_add call to pass bfd and arange
pointers.
(lookup_address_in_line_info_table): Use arange list instead of
individual low/high members.  Walk function's arange list to find
lowest PC in list, to test for overlapping functions.
(read_debug_ranges): New function, reads the debug_ranges section.
(lookup_address_in_function_table): Use arange list instead of
individual low/high members.  Rewrite to find smallest range that
matches.
(read_rangelist): Read a given rangelist from debug_ranges.
(scan_unit_for_functions): Use arange list instead of individual
low/high members.  Handle a DW_AT_ranges attribute.
(parse_comp_unit): Use arange list instead of individual low/high
members.  Save comp unit base address.  Handle a DW_AT_ranges
attribute.
bfd/ChangeLog
bfd/dwarf2.c