llvm-project/llvm/lib/CodeGen/AsmPrinter
Duncan P. N. Exon Smith 4fb1f9cda6 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.)

llvm-svn: 240733
2015-06-25 23:46:41 +00:00
..
ARMException.cpp [AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr. 2015-04-24 19:11:51 +00:00
AddressPool.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
AddressPool.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
AsmPrinter.cpp [AsmPrinter] Fix crash in handleIndirectSymViaGOTPCRel 2015-06-25 15:17:23 +00:00
AsmPrinterDwarf.cpp AsmPrinter: Cleanup DIEValue::EmitValue() API, NFC 2015-06-24 18:48:11 +00:00
AsmPrinterHandler.h Print jump tables before exception tables. 2015-03-09 18:29:12 +00:00
AsmPrinterInlineAsm.cpp MC: Add target hook to control symbol quoting 2015-06-09 00:31:39 +00:00
ByteStreamer.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
CMakeLists.txt AsmPrinter: Don't emit empty .debug_loc entries 2015-06-21 16:54:56 +00:00
DIE.cpp AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
DIEHash.cpp AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
DIEHash.h AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
DbgValueHistoryCalculator.cpp IR: Give 'DI' prefix to debug info metadata 2015-04-29 16:38:44 +00:00
DbgValueHistoryCalculator.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DebugLocEntry.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DebugLocStream.cpp AsmPrinter: Don't emit empty .debug_loc entries 2015-06-21 16:54:56 +00:00
DebugLocStream.h AsmPrinter: Don't emit empty .debug_loc entries 2015-06-21 16:54:56 +00:00
DwarfAccelTable.cpp MC: Clean up MCExpr naming. NFC. 2015-05-30 01:25:56 +00:00
DwarfAccelTable.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DwarfCFIException.cpp [AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr. 2015-04-24 19:11:51 +00:00
DwarfCompileUnit.cpp AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
DwarfCompileUnit.h AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
DwarfDebug.cpp AsmPrinter: Don't emit empty .debug_loc entries 2015-06-21 16:54:56 +00:00
DwarfDebug.h AsmPrinter: Rewrite initialization of DbgVariable, NFC 2015-06-21 16:50:43 +00:00
DwarfException.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
DwarfExpression.cpp Revert "[DWARF] Fix a few corner cases in expression emission" 2015-06-09 18:01:51 +00:00
DwarfExpression.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DwarfFile.cpp AsmPrinter: Cleanup DIEValue::EmitValue() API, NFC 2015-06-24 18:48:11 +00:00
DwarfFile.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DwarfStringPool.cpp AsmPrinter: Avoid creating symbols in DwarfStringPool 2015-05-24 16:58:59 +00:00
DwarfStringPool.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
DwarfUnit.cpp AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
DwarfUnit.h AsmPrinter: Convert DIE::Values to a linked list 2015-06-25 23:46:41 +00:00
EHStreamer.cpp Move alignment from MCSectionData to MCSection. 2015-05-21 19:20:38 +00:00
EHStreamer.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
ErlangGCPrinter.cpp [AsmPrinter] Make AsmPrinter's OutStreamer member a unique_ptr. 2015-04-24 19:11:51 +00:00
LLVMBuild.txt Add proper dependencies to LLVMBuild.txt in llvm/lib. 2013-12-10 05:39:34 +00:00
Makefile
OcamlGCPrinter.cpp Simplify the Mangler interface now that DataLayout is mandatory. 2015-06-23 13:59:29 +00:00
WinCodeViewLineTables.cpp Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00
WinCodeViewLineTables.h Use 'override/final' instead of 'virtual' for overridden methods 2015-04-11 02:11:45 +00:00
WinException.cpp [WinEH] Put finally pointers in the handler scope table field 2015-06-11 23:37:18 +00:00
WinException.h Revert r240137 (Fixed/added namespace ending comments using clang-tidy. NFC) 2015-06-23 09:49:53 +00:00