[all-commits] [llvm/llvm-project] 6b2829: Allow epilogue_begin to be emitted when generating...

Ariel-Burton via All-commits all-commits at lists.llvm.org
Fri Dec 9 12:20:04 PST 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 6b2829dd877292c78158e37901f9e4ca52249c24
      https://github.com/llvm/llvm-project/commit/6b2829dd877292c78158e37901f9e4ca52249c24
  Author: Ariel Burton <Ariel.Burton at ibm.com>
  Date:   2022-12-09 (Fri, 09 Dec 2022)

  Changed paths:
    M llvm/include/llvm/CodeGen/DebugHandlerBase.h
    M llvm/lib/CodeGen/AsmPrinter/DebugHandlerBase.cpp
    M llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
    M llvm/test/CodeGen/AMDGPU/no-source-locations-in-prologue.ll
    M llvm/test/CodeGen/X86/dbg-line-0-no-discriminator.ll
    M llvm/test/DebugInfo/AArch64/line-header.ll
    M llvm/test/DebugInfo/Generic/extended-loc-directive.ll
    M llvm/test/DebugInfo/Generic/multiline.ll
    M llvm/test/DebugInfo/RISCV/dwarf-riscv-relocs.ll
    M llvm/test/DebugInfo/X86/basic-block-sections_1.ll
    A llvm/test/DebugInfo/X86/multiple-epilogue.ll
    M llvm/test/DebugInfo/X86/stmt-list-multiple-compile-units.ll

  Log Message:
  -----------
  Allow epilogue_begin to be emitted when generating DWARF

We identify epilogue code by looking for instructions tagged
with FrameDestroy.

A function may have more than one epilogue, e.g., because of early
returns or code duplicated during optimization. We need only track
the current block, and emit epilogie_begin at most once per block.

We reduce the number of entries in the line table by combining
epilogue_begin with other flags instead of emitting a separate
entry just for epilogue_begin.

Reviewed By: dblaikie, aprantl

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




More information about the All-commits mailing list