diff options
| author | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-05-23 01:45:07 +0000 |
|---|---|---|
| committer | Duncan P. N. Exon Smith <dexonsmith@apple.com> | 2015-05-23 01:45:07 +0000 |
| commit | 68b3f307782986c3ea0031e9fb9a97bb9b5a1a8c (patch) | |
| tree | 32325de212362e6219a9756654eed66e159b76a8 /llvm/lib/LineEditor | |
| parent | 7800f1f5aa04876e327f6522118bc642c1c43532 (diff) | |
| download | bcm5719-llvm-68b3f307782986c3ea0031e9fb9a97bb9b5a1a8c.tar.gz bcm5719-llvm-68b3f307782986c3ea0031e9fb9a97bb9b5a1a8c.zip | |
AsmPrinter: Remove the vtable-entry from DIEValue
Remove all virtual functions from `DIEValue`, dropping the vtable
pointer from its layout. Instead, create "impl" functions on the
subclasses, and use the `DIEValue::Type` to implement the dynamic
dispatch.
This is necessary -- obviously not sufficient -- for passing `DIEValue`s
around by value. However, this change stands on its own: we make tons
of these. I measured a drop in memory usage from 888 MB down to 860 MB,
or around 3.2%.
(I'm looking at `llc` memory usage on `verify-uselistorder.lto.opt.bc`;
see r236629 for details.)
llvm-svn: 238084
Diffstat (limited to 'llvm/lib/LineEditor')
0 files changed, 0 insertions, 0 deletions

