llvm-project/lld
Rafael Espindola a8631e3887 Use fewer allocators.
Instead of having 3 section allocators per file, have 3 for all files.

This is a substantial performance improvement for some cases. Linking
chromium without gc speeds up by 1.065x.

This requires using _exit in fatal since we have to avoid destructing
an InputSection if fatal is called from the constructor.

Thanks to Rui for the suggestion.

llvm-svn: 285290
2016-10-27 13:32:32 +00:00
..
COFF [CMake] Add missing dependency on intrinsics_gen 2016-10-18 00:50:39 +00:00
ELF Use fewer allocators. 2016-10-27 13:32:32 +00:00
cmake/modules
docs Update document. 2016-10-20 05:35:25 +00:00
include/lld Call _exit. 2016-10-26 18:59:00 +00:00
lib Truncate a SVN path part from --version output. 2016-10-26 03:52:06 +00:00
test [ELF] Synthetic symbol definitions for ARM static linking 2016-10-27 10:28:53 +00:00
tools/lld Call _exit. 2016-10-26 18:59:00 +00:00
unittests [Cmake] Use Cmake's default RPATH for unittest. 2016-09-12 20:44:53 +00:00
.arcconfig Upgrade all the .arcconfigs to https. 2016-07-14 13:15:37 +00:00
.clang-format
.gitignore
CMakeLists.txt Inline a trivial CMakeLists.txt. 2016-03-03 01:56:23 +00:00
CODE_OWNERS.TXT Add initial CODE_OWNERS.TXT file 2015-07-25 00:44:37 +00:00
LICENSE.TXT Update copyright year to 2016. 2016-03-30 22:40:59 +00:00
README.md

README.md

LLVM Linker (lld)

This directory and its subdirectories contain source code for the LLVM Linker, a modular cross platform linker which is built as part of the LLVM compiler infrastructure project.

lld is open source software. You may freely distribute it under the terms of the license agreement found in LICENSE.txt.