[PATCH] D94325: [DebugInfo][CodeView] Use a fancier function display name when using line tables only to better differentiate between functions.

Amy Huang via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Jan 8 11:21:17 PST 2021


akhuang created this revision.
akhuang added reviewers: rnk, dblaikie.
Herald added a subscriber: hiraditya.
akhuang requested review of this revision.
Herald added projects: clang, LLVM.
Herald added subscribers: llvm-commits, cfe-commits.

Previously we emitted the fully qualified name when using
line-tables-only; this change adds the function arguments for
the current function (as opposed to only the functions in the
scope), and lambda id.

This increases the object file and PDB sizes by quite a bit, partly
because we're storing longer names and partly because there are more
LF_FUNC_IDs now.

This change also removes a bit of code that truncates the display name
at the first '<', because it truncates qualified names too early.

  Obj files | PDB

--------------------------

Before |  833 MB | 397 MB
After  | 1074 MB | 538 MB

Bug: https://bugs.llvm.org/show_bug.cgi?id=48432


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D94325

Files:
  clang/include/clang/AST/Mangle.h
  clang/lib/AST/MicrosoftMangle.cpp
  clang/lib/CodeGen/CGDebugInfo.cpp
  clang/test/CodeGenCXX/debug-info-codeview-display-name.cpp
  llvm/lib/CodeGen/AsmPrinter/CodeViewDebug.cpp
  llvm/test/DebugInfo/COFF/function-display-name.ll

-------------- next part --------------
A non-text attachment was scrubbed...
Name: D94325.315463.patch
Type: text/x-patch
Size: 11471 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20210108/4a633879/attachment-0001.bin>


More information about the cfe-commits mailing list