llvm-6502/tools
Duncan P. N. Exon Smith 73e3fb6ba8 AsmPrinter: Convert DIE::Values to a linked list
Change `DIE::Values` to a singly linked list, where each node is
allocated on a `BumpPtrAllocator`.  In order to support `push_back()`,
the list is circular, and points at the tail element instead of the
head.  I abstracted the core list logic out to `IntrusiveBackList` so
that it can be reused for `DIE::Children`, which also cares about
`push_back()`.

This drops llc memory usage from 799 MB down to 735 MB, about 8%.

(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@240733 91177308-0d34-0410-b5e6-96231b3b80d8
2015-06-25 23:46:41 +00:00
..
bugpoint Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00
bugpoint-passes bugpoint Enhancement. 2015-04-20 23:42:22 +00:00
dsymutil AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
gold gold-plugin: save the .o when given -save-temps. 2015-06-15 13:36:27 +00:00
llc MIR Serialization: Connect the machine function analysis pass to the MIR parser. 2015-06-15 20:30:22 +00:00
lli Simplify the Mangler interface now that DataLayout is mandatory. 2015-06-23 13:59:29 +00:00
llvm-ar ArrayRef-ify libDriverMain 2015-06-21 06:31:56 +00:00
llvm-as Fix input validation issues in llvm-as/llvm-dis 2015-05-11 21:20:20 +00:00
llvm-bcanalyzer [llvm-bcanalyzer] Add -show-binary-blobs option. 2015-05-13 18:51:49 +00:00
llvm-c-test Fix build breakage caused by memory leaks in llvm-c-test 2015-01-28 18:32:31 +00:00
llvm-config Refactoring CMake CrossCompile module. 2015-03-12 17:33:34 +00:00
llvm-cov [Object] Search for architecures by name in MachOUniversalBinary::getObjectForArch() 2015-06-22 21:33:24 +00:00
llvm-cxxdump Make computeSymbolSizes never fail. 2015-06-24 19:57:32 +00:00
llvm-diff Revert "Remove the explicit SDNodeIterator::operator= in favor of the implicit default" 2015-03-03 21:18:16 +00:00
llvm-dis Use std::unique_ptr to manage the DataStreamer in bitcode parsing. 2015-06-16 23:29:49 +00:00
llvm-dwarfdump Make llvm-dwarfdump exit with non-zero exit code if error was occured. 2015-06-25 23:40:15 +00:00
llvm-extract uselistorder: Remove the global bits 2015-04-15 03:14:06 +00:00
llvm-go llvm-go: Set $GCCGO instead of putting a gccgo executable on $PATH. 2015-02-14 01:45:57 +00:00
llvm-jitlistener Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00
llvm-link Linker: Add flag to override linkage rules 2015-04-22 04:11:00 +00:00
llvm-lto add missing dependency on Target lib for tools 2015-06-03 19:07:51 +00:00
llvm-mc Use named temporaries for directional labels. 2015-06-17 16:26:47 +00:00
llvm-mcmarkup Explicitly pass ownership of the MemoryBuffer to AddNewSourceBuffer using std::unique_ptr 2014-08-21 20:44:56 +00:00
llvm-nm Add an ELFSymbolRef type. 2015-06-25 22:10:04 +00:00
llvm-objdump Add an ELFSymbolRef type. 2015-06-25 22:10:04 +00:00
llvm-pdbdump Replace push_back(Constructor(foo)) with emplace_back(foo) for non-trivial types 2015-05-29 19:43:39 +00:00
llvm-profdata modules: Move ProfileKinds to an anonymous namespace 2015-06-16 00:43:04 +00:00
llvm-readobj [Object][ELF] Add support for dumping dynamic relocations when sections are stripped. 2015-06-25 21:47:32 +00:00
llvm-rtdyld Make computeSymbolSizes never fail. 2015-06-24 19:57:32 +00:00
llvm-shlib Updating symbol wildcards one more time. 2015-04-16 21:58:22 +00:00
llvm-size Fix "the the" in comments. 2015-06-19 01:53:21 +00:00
llvm-stress [llvm-stress] Simple refactoring and better style. NFC. 2015-06-24 11:49:44 +00:00
llvm-symbolizer Use computeSymbolSizes in llvm-symbolize. 2015-06-25 15:06:38 +00:00
lto Adding the missing LTO API to lto.exports 2015-06-23 18:56:48 +00:00
macho-dump [Object, MachO] Introduce MachOObjectFile::load_commands() range iterator. 2015-06-03 22:19:36 +00:00
msbuild MSBuild integration: fix the loop in install.bat 2014-09-30 22:30:06 +00:00
obj2yaml Remove object_error::success and use std::error_code() instead 2015-06-09 15:20:42 +00:00
opt Revert "(HEAD -> master, origin/master, origin/HEAD) opt: Add option to strip or add llvm value names" 2015-06-24 20:04:26 +00:00
verify-uselistorder Move the personality function from LandingPadInst to Function 2015-06-17 20:52:32 +00:00
yaml2obj Simplify now that we always use an alignment of 2 for ELF files. 2015-06-02 12:05:27 +00:00
CMakeLists.txt [CMake] Treating LLVM_INCLUDE_TOOLS, which is a bool, as a string to change behaviors of the build is a dirty hack. We shouldn't do it. 2015-06-22 21:58:02 +00:00
LLVMBuild.txt Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00
Makefile Do not build LLD from tools/Makefile, as LLD no longer has a Makefile build. 2015-06-08 04:04:13 +00:00