1
0
mirror of https://github.com/RPCS3/llvm-mirror.git synced 2024-10-26 06:22:56 +02:00
llvm-mirror/lib
Akira Hatanaka 0fb89f87e0 Reduce the size of MCRelaxableFragment.
MCRelaxableFragment previously kept a copy of MCSubtargetInfo and
MCInst to enable re-encoding the MCInst later during relaxation. A copy
of MCSubtargetInfo (instead of a reference or pointer) was needed
because the feature bits could be modified by the parser.

This commit replaces the MCSubtargetInfo copy in MCRelaxableFragment
with a constant reference to MCSubtargetInfo. The copies of
MCSubtargetInfo are kept in MCContext, and the target parsers are now
responsible for asking MCContext to provide a copy whenever the feature
bits of MCSubtargetInfo have to be toggled.
 
With this patch, I saw a 4% reduction in peak memory usage when I
compiled verify-uselistorder.lto.bc using llc.

rdar://problem/21736951

Differential Revision: http://reviews.llvm.org/D14346

llvm-svn: 253127
2015-11-14 06:35:56 +00:00
..
Analysis Revert r252990. 2015-11-13 01:44:32 +00:00
AsmParser [IR] Add support for empty tokens 2015-11-11 21:57:16 +00:00
Bitcode use range-based for loop; NFCI 2015-11-13 16:21:23 +00:00
CodeGen Reduce the size of MCRelaxableFragment. 2015-11-14 06:35:56 +00:00
DebugInfo dwarfdump: Add support for dumping the table contents of DWP indexes 2015-11-13 19:18:49 +00:00
ExecutionEngine [RuntimeDyld] Fix indentation and whitespace; NFC 2015-11-14 00:16:15 +00:00
Fuzzer [libFuzzer] make libFuzzer build even with a compiler that does not have sanitizer headers 2015-11-13 01:54:40 +00:00
IR Revert r252990. 2015-11-13 01:44:32 +00:00
IRReader Return a unique_ptr from getLazyBitcodeModule and parseBitcodeFile. NFC. 2015-06-16 22:27:55 +00:00
LibDriver [Option] Use an ArrayRef to store the Option Infos in OptTable. NFC 2015-10-21 16:30:42 +00:00
LineEditor
Linker [lib/Linker] Convert assert(false) to llvm_unreachable(). 2015-11-13 02:16:51 +00:00
LTO Add a libLTO diagnostic handler that supports lto_get_error_message API 2015-11-11 19:59:08 +00:00
MC Reduce the size of MCRelaxableFragment. 2015-11-14 06:35:56 +00:00
Object ELFYAML: Add support for parsing AMDGPU section attribute flags 2015-11-13 17:06:29 +00:00
Option [Option] Use an ArrayRef to store the Option Infos in OptTable. NFC 2015-10-21 16:30:42 +00:00
Passes [PM] Port StripDeadPrototypes to the new pass manager 2015-10-30 23:28:12 +00:00
ProfileData SamplePGO - Add dump routines for LineLocation, SampleRecord and FunctionSamples 2015-11-13 20:24:28 +00:00
Support Cull non-standard variants of ARM architectures (NFC) 2015-11-12 15:51:41 +00:00
TableGen [TblGen] ArrayRefize TGParser. No functional change intended. 2015-10-24 12:46:45 +00:00
Target Reduce the size of MCRelaxableFragment. 2015-11-14 06:35:56 +00:00
Transforms Don't recompute LCSSA after loop-unrolling when possible. 2015-11-14 05:51:41 +00:00
CMakeLists.txt LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00
LLVMBuild.txt Wrap some long lines in LLVMBuild files. NFC 2015-06-12 18:44:57 +00:00
Makefile LibDriver, llvm-lib: introduce. 2015-06-09 21:50:22 +00:00