Go to file
Peter Collingbourne 7c384ccea2 DwarfDebug: emit type units immediately.
Rather than storing type units in a vector and emitting them at the end
of code generation, emit them immediately and destroy them, reclaiming the
memory we were using for their DIEs.

In one benchmark carried out against Chromium's 50 largest (by bitcode
file size) translation units, total peak memory consumption with type units
decreased by median 17%, or by 7% when compared against disabling type units.

Tested using check-{llvm,clang}, the GDB 7.5 test suite (with
'-fdebug-types-section') and by eyeballing llvm-dwarfdump output on those
Chromium translation units with split DWARF both disabled and enabled, and
verifying that the only changes were to addresses and abbreviation ordering.

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

llvm-svn: 260578
2016-02-11 19:57:46 +00:00
clang In C11, provide macros FLT_DECIMAL_DIG, DBL_DECIMAL_DIG, and LDBL_DECIMAL_DIG in <float.h>. 2016-02-11 19:57:37 +00:00
clang-tools-extra [clang-tidy] google-runtime-int: fix a false positive in implicit code. 2016-02-11 16:22:58 +00:00
compiler-rt [LSan] Test case fix: mode debug output, synchronization instead of sleep(). 2016-02-11 19:03:09 +00:00
debuginfo-tests New round of fixes for "Always compile debuginfo-tests for the host triple" 2014-10-18 23:47:59 +00:00
libclc configure: Remove llvm 3.6 defines 2016-02-09 22:17:48 +00:00
libcxx Work around regression in glibc 2.22: request that glibc provides the correct 2016-02-11 19:40:06 +00:00
libcxxabi [libcxxabi] Teach cxa_demangle about Hexagon's long double size 2016-01-20 14:10:23 +00:00
libunwind Introduce NetBSD support 2016-02-06 18:19:29 +00:00
lld Sort includes. NFC. 2016-02-11 15:24:48 +00:00
lldb Improve ReadRegister for RegisterContextWindowsx86 2016-02-11 18:24:57 +00:00
llgo [llgo] Force exporting __morestack from llgoi 2015-11-27 04:46:46 +00:00
llvm DwarfDebug: emit type units immediately. 2016-02-11 19:57:46 +00:00
openmp Proxy task fix: task_state stack push condition on fork 2016-02-09 22:32:41 +00:00
polly Separate invariant equivalence classes by type 2016-02-07 17:30:13 +00:00