[all-commits] [llvm/llvm-project] 8eb464: [DebugInfo] Allow parsing line tables aligned to 4...

Benjamin Maxwell via All-commits all-commits at lists.llvm.org
Wed Mar 22 09:31:08 PDT 2023

  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 8eb464f5433ae65bec3536ddb1195e5ff5c46af0
  Author: Benjamin Maxwell <benjamin.maxwell at arm.com>
  Date:   2023-03-22 (Wed, 22 Mar 2023)

  Changed paths:
    M llvm/include/llvm/DebugInfo/DWARF/DWARFDebugLine.h
    M llvm/lib/DebugInfo/DWARF/DWARFDebugLine.cpp
    A llvm/test/tools/llvm-dwarfdump/ARM/aligned_line_tables.s

  Log Message:
  [DebugInfo] Allow parsing line tables aligned to 4 or 8-byte boundaries

This allows the DWARFDebugLine::SectionParser to try parsing line tables
at 4 or 8-byte boundaries if the unaligned offset appears invalid. If
aligning the offset does not reduce errors the offset is used unchanged.

This is needed for llvm-dwarfdump to be able to extract the line tables
(with --debug-lines) from binaries produced by certain compilers that
like to align each line table in the .debug_line section. Note that this
alignment does not seem to be invalid since the units do point to the
correct line table offsets via the DW_AT_stmt_list attribute.

Differential Revision: https://reviews.llvm.org/D143513

More information about the All-commits mailing list