[PATCH] D32500: Optimize ItaniumDemangle by using an arena allocator
Scott Smith via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Apr 25 11:49:46 PDT 2017
scott.smith created this revision.
Use an arena allocator to reduce the number of allocations and frees. Individual allocations become extremely cheap, and individual frees are free. Change from std::string to a custom string implementation that is a reference to immutable data, so that substr and copies are free. Remove the null terminator so that strings can be appended without copying the base.
Repository:
rL LLVM
https://reviews.llvm.org/D32500
Files:
lib/Demangle/ItaniumDemangle.cpp
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D32500.96613.patch
Type: text/x-patch
Size: 29788 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20170425/be537963/attachment.bin>
More information about the llvm-commits
mailing list