Go to file
Rui Ueyama 5fa0d6e4a2 [COFF] Process /EXPORT option in fastpath
Patch by Takuto Ikuta.

This patch reduces lld link time of chromium's blink_core.dll in
component build.

Total size of input argument in .directives become nearly 300MB in the
build and almost all its content are /EXPORT.

To reduce time of parsing too many /EXPORT option in the build, I
introduce fastpath for /EXPORT in ArgParser::parseDirectives.

On my desktop machine, 4 times stats of the link time are like below.
Improved around 20%.

This patch
TotalSeconds : 8.6217627
TotalSeconds : 8.5402175
TotalSeconds : 8.6855853
TotalSeconds : 8.3624441
Ave : 8.5525024

master
TotalSeconds : 10.9975031
TotalSeconds : 11.3409428
TotalSeconds : 10.6332897
TotalSeconds : 10.7650687
Ave : 10.934201075

llvm-svn: 322117
2018-01-09 20:36:42 +00:00
clang [OPENMP] Fix directive kind on stand-alone target data directives, NFC. 2018-01-09 19:59:25 +00:00
clang-tools-extra Try to fix build failure caused by r322097 2018-01-09 20:26:49 +00:00
compiler-rt o -fsanitize=function warning when calling noexcept function through non-noexcept pointer in C++17 2018-01-05 07:57:24 +00:00
debuginfo-tests [debuginfo-tests] Support moving debuginfo-tests to llvm/projects 2017-12-12 16:54:20 +00:00
libclc configure.py: Add gfx900 (Vega, Raven) 2017-11-27 11:14:06 +00:00
libcxx [libcxx] Support the use of compiler-rt in lit tests 2018-01-08 23:36:53 +00:00
libcxxabi Update version to 7.0.0svn 2018-01-03 15:42:34 +00:00
libunwind [libunwind][MIPS]: Rename Registers_mips_n64 to Registers_mips_newabi. 2018-01-09 17:07:18 +00:00
lld [COFF] Process /EXPORT option in fastpath 2018-01-09 20:36:42 +00:00
lldb [test] Fix tests to use more portable LLVM_ENABLE_ZLIB 2018-01-09 14:44:04 +00:00
llgo irgen: Create functions instead of global variables for builtin hash and equal algorithms. 2017-06-04 22:11:28 +00:00
llvm [COFF] Process /EXPORT option in fastpath 2018-01-09 20:36:42 +00:00
openmp Fix type mismatch in omp_control_tool() implementation that makes it run incorrectly on 32-bit machines. 2018-01-09 10:54:06 +00:00
parallel-libs [Axccel] Remove -Wno-missing-braces in build 2016-12-19 21:34:07 +00:00
polly Docs, release notes: update version to 7.0.0 2018-01-03 15:54:54 +00:00
README.md Add an svn project to contain the files that appear at the root of the 2017-10-19 21:09:49 +00:00

README.md

Low Level Virtual Machine (LLVM)

This directory and its subdirectories contain source code for LLVM, a toolkit for the construction of highly optimized compilers, optimizers, and runtime environments.