[PATCH] D119177:  [demangler] Fix buffer growth
    Nathan Sidwell via Phabricator via llvm-commits 
    llvm-commits at lists.llvm.org
       
    Wed Feb  9 08:36:33 PST 2022
    
    
  
urnathan added inline comments.
================
Comment at: libcxxabi/src/demangle/Utility.h:42
+      if (Need > BufferCapacity) {
+        if (!BufferCapacity && Need < 100)
+          // Avoid many reallocations during startup
----------------
ChuanqiXu wrote:
> What's the meaning of the magic number 100? Generally we should make it configurable or at least we should give a name to it.
It seems dramatically over-engineering to make this configurable. You just want a number high enough for many symbols in one go, and big enough that larger symbols don't keep reallocating.  But not so big that one allocates a tremendously excessive amount.  The demangler Nodes themselves are probably the largest component?
100 seemed a good enough value.  It's better than the current [non-configurable] zero :)  I notice the demangler's node allocator (BumpPointerAllocator) allocates [unconfigurable] 4096 byte blocks.  So let's go with 1024 here, ok?
CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D119177/new/
https://reviews.llvm.org/D119177
    
    
More information about the llvm-commits
mailing list