llvm-6502/lib
Duncan P. N. Exon Smith b5f8c9b2ec 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.)

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@238084 91177308-0d34-0410-b5e6-96231b3b80d8
2015-05-23 01:45:07 +00:00
..
Analysis [InstSimplify] Handle some overflow intrinsics in InstSimplify 2015-05-22 03:56:46 +00:00
AsmParser IR / debug info: Add a DWOId field to DICompileUnit, 2015-05-21 20:37:30 +00:00
Bitcode IR / debug info: Add a DWOId field to DICompileUnit, 2015-05-21 20:37:30 +00:00
CodeGen AsmPrinter: Remove the vtable-entry from DIEValue 2015-05-23 01:45:07 +00:00
DebugInfo Make it easier to use DwarfContext with MCJIT 2015-05-21 21:24:32 +00:00
ExecutionEngine Stop resetting NoFramePointerElim in TargetMachine::resetTargetOptions. 2015-05-23 01:14:08 +00:00
Fuzzer [lib/Fuzzer] fully get rid of std::cerr in libFuzzer 2015-05-23 01:22:35 +00:00
IR Simplify and rename function overrideFunctionAttributes. NFC. 2015-05-23 01:12:26 +00:00
IRReader
LineEditor
Linker While in GlobalValue fix the function(s) that don't follow the 2015-05-15 18:20:14 +00:00
LTO LTO: Add API to choose whether to embed uselists 2015-04-27 23:38:54 +00:00
MC Produce a single string table in a ELF .o 2015-05-22 23:58:30 +00:00
Object Stop inventing symbol sizes. 2015-05-22 15:43:00 +00:00
Option Option parsing: properly handle flag aliases for joined options (PR23394) 2015-05-04 18:00:13 +00:00
Passes
ProfileData InstrProf: Treat functions with a coverage map but no profile as unreached 2015-05-13 22:03:04 +00:00
Support Reinforce ARMTargetParser::getCanonicalArchName validation 2015-05-22 20:43:30 +00:00
TableGen [TableGen] Resolve complex def names inside multiclasses 2015-05-21 04:32:56 +00:00
Target Stop resetting NoFramePointerElim in TargetMachine::resetTargetOptions. 2015-05-23 01:14:08 +00:00
Transforms Extend EarlyCSE to handle basic cases from JumpThreading and CVP 2015-05-22 23:53:24 +00:00
CMakeLists.txt
LLVMBuild.txt Reflow long lines of some LLVMBuild files 2015-05-14 15:38:27 +00:00
Makefile