Skip to content

Commit 69caaa8

Browse files
committed
gold: Skip address size and segment selector for DWARF5
The .debug_line secton in DWARF5 has a byte for address size and a byte for segment selector after DWARF version. Skip them for DWARF5. PR gold/27246 * dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog): Skip address size and segment selector for DWARF5. (cherry picked from commit 0318cca)
1 parent 5e7a8f4 commit 69caaa8

File tree

2 files changed

+10
-0
lines changed

2 files changed

+10
-0
lines changed

gold/ChangeLog

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
2021-01-28 H.J. Lu <hongjiu.lu@intel.com>
2+
3+
PR gold/27246
4+
* dwarf_reader.cc (Sized_dwarf_line_info::read_header_prolog):
5+
Skip address size and segment selector for DWARF5.
6+
17
2021-01-24 Nick Clifton <nickc@redhat.com>
28

39
This is the 2.36 release.

gold/dwarf_reader.cc

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1658,6 +1658,10 @@ Sized_dwarf_line_info<size, big_endian>::read_header_prolog(
16581658
header_.version = elfcpp::Swap_unaligned<16, big_endian>::readval(lineptr);
16591659
lineptr += 2;
16601660

1661+
// Skip address size and segment selector for DWARF5.
1662+
if (header_.version >= 5)
1663+
lineptr += 2;
1664+
16611665
if (header_.offset_size == 4)
16621666
header_.prologue_length = elfcpp::Swap_unaligned<32, big_endian>::readval(lineptr);
16631667
else

0 commit comments

Comments
 (0)