[PATCH] D83544: [DebugInfo] Support for DW_AT_associated and DW_AT_allocated.

David Blaikie via Phabricator via llvm-commits llvm-commits at lists.llvm.org
Tue Jul 14 12:39:57 PDT 2020


dblaikie added inline comments.


================
Comment at: llvm/include/llvm/IR/DebugInfoMetadata.h:945
           DIDerivedType *Discriminator, Metadata *DataLocation,
-          StorageType Storage, bool ShouldCreate = true) {
+          Metadata *Associated, Metadata *Allocated, StorageType Storage,
+          bool ShouldCreate = true) {
----------------
aprantl wrote:
> @dblaikie At some point I'm going to become concerned by the number of pointer-sized fields in DICompositeType and recommend to split it up into subclasses for C++ and Fortran. But maybe we're not there yet.
> 
> Apparently in a current Clang we have 
> 
> ```
> $ dwarfdump bin/clang.dSYM | egrep '(DW_TAG_class_type|DW_TAG_structure_type)' |wc -l
>  1011605
> ```
> 
> on the order of a million unique types, so this patch adds ~16Mb to a full LTO build of Clang. That honestly does not sound too bad.
Yeah, definitely something to keep in mind. Might be worth having a metric/buildbot/something that tests peak memory usage of an LTO selfhost build, maybe?


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D83544





More information about the llvm-commits mailing list