[llvm] [DebugInfo] Add DW_TAG_property support to LLVM DebugInfo (PR #215776)

via llvm-commits llvm-commits at lists.llvm.org
Wed Aug 12 17:12:27 PDT 2026


llvmorg-github-actions[bot] wrote:


<!--LLVM PR SUMMARY COMMENT-->

@llvm/pr-subscribers-llvm-ir

Author: Piotr Jeremicz (piotrekjeremicz)

<details>
<summary>Changes</summary>

WARF v6 adds DW_TAG_property to represent an entity accessed like a
data member but implemented via an accessor, such as an Objective-C
@<!-- -->property backed by an ivar. This adds a DIProperty metadata node,
plumbs it through the IR (LLParser/AsmWriter, bitcode, DIBuilder,
Verifier), and emits DW_TAG_property/DW_AT_property_forward DIEs in
DwarfUnit, anchored on the accessor's own subprogram DIE.

This covers the LLVM IR and DWARF layers only; Clang emission and
LLDB consumption are left for follow-up patches.

Assisted-by: Claude

---
Full diff: https://github.com/llvm/llvm-project/pull/215776.diff


26 Files Affected:

- (modified) llvm/docs/LangRef.md (+14) 
- (modified) llvm/include/llvm-c/DebugInfo.h (+1) 
- (modified) llvm/include/llvm/BinaryFormat/Dwarf.def (+6) 
- (modified) llvm/include/llvm/Bitcode/LLVMBitCodes.h (+1) 
- (modified) llvm/include/llvm/IR/DIBuilder.h (+13) 
- (modified) llvm/include/llvm/IR/DebugInfoMetadata.h (+80) 
- (modified) llvm/include/llvm/IR/Metadata.def (+1) 
- (modified) llvm/lib/AsmParser/LLParser.cpp (+18) 
- (modified) llvm/lib/Bitcode/Reader/MetadataLoader.cpp (+15) 
- (modified) llvm/lib/Bitcode/Writer/BitcodeWriter.cpp (+16) 
- (modified) llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp (+1) 
- (modified) llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp (+35) 
- (modified) llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h (+5) 
- (modified) llvm/lib/DebugInfo/DWARF/DWARFDie.cpp (+5) 
- (modified) llvm/lib/DebugInfo/DWARF/DWARFVerifier.cpp (+4-1) 
- (modified) llvm/lib/IR/AsmWriter.cpp (+12) 
- (modified) llvm/lib/IR/DIBuilder.cpp (+6) 
- (modified) llvm/lib/IR/DebugInfo.cpp (+2) 
- (modified) llvm/lib/IR/DebugInfoMetadata.cpp (+15) 
- (modified) llvm/lib/IR/LLVMContextImpl.h (+25) 
- (modified) llvm/lib/IR/Verifier.cpp (+15) 
- (modified) llvm/lib/Target/DirectX/DXILWriter/DXILBitcodeWriter.cpp (+4) 
- (added) llvm/test/Assembler/diproperty.ll (+20) 
- (added) llvm/test/DebugInfo/Generic/property.ll (+59) 
- (added) llvm/test/Verifier/diproperty.ll (+18) 
- (modified) llvm/unittests/IR/MetadataTest.cpp (+38) 


``````````diff

``````````

</details>


https://github.com/llvm/llvm-project/pull/215776


More information about the llvm-commits mailing list