[all-commits] [llvm/llvm-project] 5a0108: Fix -u option in dsymutil, to not emit an extra DW...

Shubham Sandeep Rastogi via All-commits all-commits at lists.llvm.org
Wed May 31 09:39:33 PDT 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 5a0108947c470a19b5cef25b084677b0dda8d8c3
      https://github.com/llvm/llvm-project/commit/5a0108947c470a19b5cef25b084677b0dda8d8c3
  Author: Shubham Sandeep Rastogi <srastogi22 at apple.com>
  Date:   2023-05-31 (Wed, 31 May 2023)

  Changed paths:
    M llvm/lib/DWARFLinker/DWARFLinker.cpp
    A llvm/test/tools/dsymutil/ARM/fat-dylib-update.test

  Log Message:
  -----------
  Fix -u option in dsymutil, to not emit an extra DW_LNE_set_address if the original line table was empty

With dsymutil's -u option, only the accelerator tables should be
updated, but with https://reviews.llvm.org/D150554 the -u option will
still re-generate the line table. If the line table was empty, that is,
it was a dummy line table, with no entries in it, dsymutil will always
generate a line table with a DW_LNE_end_sequence, a funky side effect of
this is that when the line table is re-generated, it will always emit a
DW_LNE_set_address first, which will change the line table total size.
This patch addresses this by making sure that if all the line table has
in it is a DW_LNE_end_sequence, it is the same as a dummy entry.

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




More information about the All-commits mailing list