diff options
author | Rafael Espindola <rafael.espindola@gmail.com> | 2015-05-22 23:58:30 +0000 |
---|---|---|
committer | Rafael Espindola <rafael.espindola@gmail.com> | 2015-05-22 23:58:30 +0000 |
commit | 5960cee1f5299a5e7233c35fcb2518c08b761374 (patch) | |
tree | d6d0068712af0e5720d918c5c901aefb20ecb276 /clang/lib/Frontend/CompilerInvocation.cpp | |
parent | 825e258fc36fcd645d38f38bd835a60616832181 (diff) | |
download | bcm5719-llvm-5960cee1f5299a5e7233c35fcb2518c08b761374.tar.gz bcm5719-llvm-5960cee1f5299a5e7233c35fcb2518c08b761374.zip |
Produce a single string table in a ELF .o
Normally an ELF .o has two string tables, one for symbols, one for section
names.
With the scheme of naming sections like ".text.foo" where foo is a symbol,
there is a big potential saving in using a single one.
Building llvm+clang+lld with master and with this patch the results were:
master: 193,267,008 bytes
patch: 186,107,952 bytes
master non unique section names: 183,260,192 bytes
patch non unique section names: 183,118,632 bytes
So using non usique saves 10,006,816 bytes, and the patch saves 7,159,056 while
still using distinct names for the sections.
llvm-svn: 238073
Diffstat (limited to 'clang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions