[PATCH] D94639: [DebugInfo][CodeView] Change in line tables only mode to emit type informationfor function scopes, rather than using the qualified name.

Amy Huang via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Wed Jan 13 16:11:38 PST 2021


akhuang added a comment.

In D94639#2496892 <https://reviews.llvm.org/D94639#2496892>, @dblaikie wrote:

> What parts of this are motivated by CodeView requirements (do functions have to have unique names in CV?)?
> It'd be a bit unfortunate if we have divergence in -gmlt behavior between DWARF and CodeView due to different usage requirements, rather than format requirements - gmlt in DWARF I think uses only the unqualified name, though eventually combined with -fdebug-info-for-profiling which put the mangled name on such functions to make it clear for profilers. (though the unqualified name only behavior is still handy for the sanitizers - where the unqualified/ambiguous name is a "good enough" point for size V accuracy)

This was kind of motivated by the issue in https://bugs.llvm.org/show_bug.cgi?id=48432, even though this patch doesn't solve that particular bug. I guess the general issue is that in CV the only way to make the functions unique is by their display name or type. So previously we were going in the direction of differentiating functions by the display name (like using the qualified name), but it seems like it's more size-efficient to use types instead, which is what this patch does.


Repository:
  rG LLVM Github Monorepo

CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D94639/new/

https://reviews.llvm.org/D94639



More information about the llvm-commits mailing list