Michael137 added a comment. In D144181#4133056 <https://reviews.llvm.org/D144181#4133056>, @Michael137 wrote:
> In D144181#4133025 <https://reviews.llvm.org/D144181#4133025>, @dblaikie > wrote: > >> Ah, accidentally posted to the lldb part of this stack... instead: >> >> Any chance we can make these work more like member functions (could the >> ctors include their mangled names, for instance)? Or is it the innate nature >> of ctors having the various C1 <https://reviews.llvm.org/C1>/C2/etc versions? > > Initially we tried that in https://reviews.llvm.org/D143652. The existence of > multiple constructor definitions which aren't linked to the `DISubprogram` > declaration makes it tough. We need to start with a pretty expensive search > through the index for all the possible definitions. But then we need to > somehow choose the right one to take the linkage name from. And that context > isn't available at the point where LLDB parses DWARF. > > I'll post some numbers of how much space this would take with Adrian's > suggestion and go from there On second thought, since there are possibly multiple ABI tags per decl and only a single attribute is allowed on a DIE we'd need to somehow encode the ABI tag strings into the single attribute. It's doable but I think the patch as proposed would be more maintainable. Debug-info size difference for `liblldb.dylib` is below (left is with the annotations, right is without). I.e., debug size difference is ~0.4% --------------------------------------------------------------------------------- file: lib/liblldb.dylib.dSYM/Contents/Resources/DWARF/liblldb.dylib --------------------------------------------------------------------------------- SECTION SIZE (b) SECTION SIZE (b) ---------------- --------- ---------------- --------- __debug_line 91828488 (8.10%) __debug_line 91828547 (8.12%) __debug_info 268703597 (23.69%) __debug_info 265011327 (23.44%) __debug_ranges 2116400 (0.19%) __debug_ranges 2116400 (0.19%) __debug_aranges 200464 (0.02%) __debug_aranges 200464 (0.02%) __debug_loc 27234 (0.00%) __debug_loc 27234 (0.00%) __debug_abbrev 14129 (0.00%) __debug_abbrev 14117 (0.00%) __debug_str 456849994 (40.28%) __debug_str 456849978 (40.41%) __apple_names 48851592 (4.31%) __apple_names 48851592 (4.32%) __apple_namespac 638616 (0.06%) __apple_namespac 638616 (0.06%) __apple_types 27153903 (2.39%) __apple_types 27153903 (2.40%) __apple_objc 36 (0.00%) __apple_objc 36 (0.00%) Total Size: 896384453 (79.04%) Total Size: 892692214 (78.97%) Total File Size: 1134157253 Total File Size: 1130465014 ---------------------------------------------------- I'll just put this behind an lldb tuning Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D144181/new/ https://reviews.llvm.org/D144181 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits