diff options
author | H.J. Lu <hjl.tools@gmail.com> | 2021-01-23 18:17:37 -0800 |
---|---|---|
committer | H.J. Lu <hjl.tools@gmail.com> | 2021-01-23 18:23:08 -0800 |
commit | 0da7136ac1a83080996247551286019066fbd0e3 (patch) | |
tree | edbbc1fb4055c7ba14948ff96a64718f23a5f556 | |
parent | 4100e6999664833defb8ee038f75812d9b85f9c7 (diff) | |
download | fsf-binutils-gdb-0da7136ac1a83080996247551286019066fbd0e3.zip fsf-binutils-gdb-0da7136ac1a83080996247551286019066fbd0e3.tar.gz fsf-binutils-gdb-0da7136ac1a83080996247551286019066fbd0e3.tar.bz2 |
DWARF-5: Fix parsing DWARF-5 line number tables
Advance rngs_ptr when parsing DW_RLE_offset_pair, which was missing in
commit c3757b583d2448a5996e83e374fb96ac7938da35
Author: Mark Wielaard <mark@klomp.org>
Date: Tue Aug 25 15:33:00 2020 +0100
Fix the linker's handling of DWARF-5 line number tables.
PR binutils/27231
* dwarf2.c (read_rnglists): Advance rngs_ptr after
_bfd_safe_read_leb128 when parsing DW_RLE_offset_pair.
(cherry picked from commit 18454c151f5824564130ba626bd90e9de30444ef)
-rw-r--r-- | bfd/ChangeLog | 6 | ||||
-rw-r--r-- | bfd/dwarf2.c | 2 |
2 files changed, 8 insertions, 0 deletions
diff --git a/bfd/ChangeLog b/bfd/ChangeLog index 4c629d4..32deed3 100644 --- a/bfd/ChangeLog +++ b/bfd/ChangeLog @@ -1,3 +1,9 @@ +2021-01-23 H.J. Lu <hongjiu.lu@intel.com> + + PR binutils/27231 + * dwarf2.c (read_rnglists): Advance rngs_ptr after + _bfd_safe_read_leb128 when parsing DW_RLE_offset_pair. + 2021-01-01 Alan Modra <amodra@gmail.com> Apply from master diff --git a/bfd/dwarf2.c b/bfd/dwarf2.c index 977bf43..1682be5 100644 --- a/bfd/dwarf2.c +++ b/bfd/dwarf2.c @@ -3252,9 +3252,11 @@ read_rnglists (struct comp_unit *unit, struct arange *arange, low_pc = base_address; low_pc += _bfd_safe_read_leb128 (abfd, rngs_ptr, &bytes_read, FALSE, rngs_end); + rngs_ptr += bytes_read; high_pc = base_address; high_pc += _bfd_safe_read_leb128 (abfd, rngs_ptr, &bytes_read, FALSE, rngs_end); + rngs_ptr += bytes_read; break; case DW_RLE_start_end: |