[Lldb-commits] [PATCH] Use the DWARF linkage name when importing C++ methods

Nelson Elhage via lldb-commits lldb-commits at lists.llvm.org
Sun Nov 19 22:33:54 PST 2017


When importing C++ methods into clang AST nodes from the DWARF symbol
table, preserve the DW_AT_linkage_name and use it as the linker ("asm")
name for the symbol.

Concretely, this enables `expression` to call into names that use the GNU
`abi_tag` extension, and enables lldb to call into code using std::string
or std::list from recent versions of libstdc++. See
https://bugs.llvm.org/show_bug.cgi?id=35310 . It also seems broadly more
robust than relying on the DWARF->clang->codegen pipeline to roundtrip
properly, but I'm not immediately aware of any other cases in which it
makes a difference.

- Nelson
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20171120/049553b1/attachment.html>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: bug35310.diff
Type: text/x-patch
Size: 4268 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20171120/049553b1/attachment.bin>


More information about the lldb-commits mailing list