[all-commits] [llvm/llvm-project] 28e225: [llvm][DebugInfo] Add support for DW_OP_GNU_implic...

Thrrreeee via All-commits all-commits at lists.llvm.org
Fri Jun 6 10:56:51 PDT 2025


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 28e2256a1fa85572458981b477349ddd57e1f2f2
      https://github.com/llvm/llvm-project/commit/28e2256a1fa85572458981b477349ddd57e1f2f2
  Author: Thrrreeee <72311224+Thrrreeee at users.noreply.github.com>
  Date:   2025-06-06 (Fri, 06 Jun 2025)

  Changed paths:
    M llvm/include/llvm/BinaryFormat/Dwarf.def
    M llvm/lib/DebugInfo/DWARF/DWARFExpression.cpp
    A llvm/test/tools/llvm-dwarfdump/X86/DW_OP_GNU_implicit_pointer.yaml

  Log Message:
  -----------
  [llvm][DebugInfo] Add support for DW_OP_GNU_implicit_pointer (#142913)

This patch introduces support for the DWARF operation
`DW_OP_GNU_implicit_pointer `(value 0xf3) within LLVM's DWARF parsing
and expression evaluation infrastructure. This GNU extension is used to
describe the location of a variable that is itself a pointer, where the
value of this pointer is stored at an address derived from another DWARF
location expression plus a constant offset.
Motivation:
Compilers like GCC use `DW_OP_GNU_implicit_pointer `to represent the
location of certain variables.Without support for this opcode, debuggers
like LLDB (and other tools relying on LLVM's DWARF libraries) cannot
correctly resolve the location of such variables, leading to an
inability to inspect their values or an incorrect debugging experience.



To unsubscribe from these emails, change your notification settings at https://github.com/llvm/llvm-project/settings/notifications


More information about the All-commits mailing list