Reland [DwarfDebug] Support emitting function-local declaration for a lexical block
authorKristina Bessonova <kbessonova@accesssoftek.com>
Sat, 4 Dec 2021 15:12:47 +0000 (17:12 +0200)
committerKristina Bessonova <kbessonova@accesssoftek.com>
Sun, 5 Dec 2021 11:56:45 +0000 (13:56 +0200)
commit75b622a7959479ccdb758ebe0973061b7b4fcacd
treed5e5e9e4e90feadcbfc8584e574dc78a2ee337b1
parent0ac75e82fff93a80ca401d3db3541e8d1d9098f9
Reland [DwarfDebug] Support emitting function-local declaration for a lexical block

This is another attempt to make function-local declarations
(like static variables, structs/classes and other) be correctly
emitted within a lexical (bracketed) block.

Fixes https://bugs.llvm.org/show_bug.cgi?id=19238.

Reviewed By: dblaikie

Differential Revision: https://reviews.llvm.org/D113741
14 files changed:
llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.cpp
llvm/lib/CodeGen/AsmPrinter/DwarfCompileUnit.h
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.cpp
llvm/lib/CodeGen/AsmPrinter/DwarfDebug.h
llvm/lib/CodeGen/AsmPrinter/DwarfFile.h
llvm/lib/CodeGen/AsmPrinter/DwarfUnit.cpp
llvm/lib/CodeGen/AsmPrinter/DwarfUnit.h
llvm/test/DebugInfo/Generic/import-inlined-declaration.ll [new file with mode: 0644]
llvm/test/DebugInfo/Generic/imported-name-inlined.ll
llvm/test/DebugInfo/Generic/inlined-local-type.ll [new file with mode: 0644]
llvm/test/DebugInfo/Generic/inlined-static-var.ll [new file with mode: 0644]
llvm/test/DebugInfo/Generic/lexical_block_static.ll [new file with mode: 0644]
llvm/test/DebugInfo/Generic/lexical_block_types.ll [new file with mode: 0644]
llvm/test/DebugInfo/Generic/namespace.ll