[llvm-dev] [DebugInfo] Enabling constructor homing by default in clang

Adrian Prantl via llvm-dev llvm-dev at lists.llvm.org
Thu Jul 15 16:55:45 PDT 2021


Then there's no concern for Darwin. Let's do it! 

-- adrian

> On Jul 15, 2021, at 4:51 PM, Amy Huang <akhuang at google.com> wrote:
> 
> Yep, it would happen with -flimit-debug-info (-fno-standalone-debug) but won't affect -fstandalone-debug.
> 
> 
> 
> On Thu, Jul 15, 2021 at 4:47 PM Adrian Prantl <aprantl at apple.com <mailto:aprantl at apple.com>> wrote:
> Thanks for letting us know. Is my understanding correct that "enabling by default" means when -flimit-debuginfo would be used, or would it also affect -fstandalone-debuginfo?
> 
> As always, please watch the https://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake <https://green.lab.llvm.org/green/view/LLDB/job/lldb-cmake> bot after making debug info changes.
> 
> thanks,
> adrian
> 
>> On Jul 15, 2021, at 11:14 AM, David Blaikie <dblaikie at gmail.com <mailto:dblaikie at gmail.com>> wrote:
>> 
>> Thanks Amy! + a few folks to highlight this.
>> 
>> On Thu, Jul 15, 2021 at 11:06 AM Amy Huang via llvm-dev <llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>> wrote:
>> A while back I tried turning on constructor homing (-debug-info-kind=constructor) by default in clang. Ctor homing is a debug info optimization that reduces the amount of debug info that is emitted for class types.
>> 
>> The main blocker was that for some libc++ types we avoid calling the constructor. Since then I've added a attribute for classes that ignores ctor homing (`__attribute__((standlone_debug))`) and added it to the libc++ types (7c2f58278e66). 
>> 
>> I think at this point we can try enabling it by default in Clang -- it's currently being used in chromium and google codebases. Thought I'd email the llvm-dev list in case people have thoughts/opinions/concerns about this. (patch is at https://reviews.llvm.org/D106084 <https://reviews.llvm.org/D106084>)
>> 
>> _______________________________________________
>> LLVM Developers mailing list
>> llvm-dev at lists.llvm.org <mailto:llvm-dev at lists.llvm.org>
>> https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev <https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev>
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20210715/4050c947/attachment.html>


More information about the llvm-dev mailing list