[PATCH] MC: Skip names of temporary symbols in object streamer

Duncan P. N. Exon Smith dexonsmith at apple.com
Wed May 6 12:36:02 PDT 2015


Don't create names for temporary symbols when using an object streamer.
The names never make it to the output anyway.  From the starting point
of r236629, my heap profile says this drops peak memory usage from 1100
MB to 1058 MB for CodeGen of `verify-uselistorder`, a savings of almost
4% on peak memory, and removes `StringMap<bool, BumpPtrAllocator...>`
from the profile entirely.

(I'm looking at `llc` memory usage on `verify-uselistorder.lto.opt.bc`;
see r236629 for details of what I'm measuring.)

This patch is pretty simple (and all the tests pass), but I'm not
entirely sure this is the best way to layer things.  I also haven't
found a reasonable way to test this (probably there just isn't one).

-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0001-MC-Skip-names-of-temporary-symbols-in-object-streame.patch
Type: application/octet-stream
Size: 2838 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20150506/6efe8944/attachment.obj>


More information about the llvm-commits mailing list