Go to file
George Rimar 343e8227b7 [ELF] - Stop using SectionKey for creating output sections.
Stop using SectionKey for creating output sections.

Initially SectionKey was designed because we merged section with
use of Flags and Alignment fields. Currently LLD merges them by name only,
except the case when -relocatable output is produced. In that case
we still merge sections only with the same flags and alignment.
There is probably no issue at all to stop using Flags and Alignment for -r and
just disable the merging in that case.

After doing that change we can get rid of using SectionKey. That is not only
simplifies the code, but also gives some perfomance boost.

I tried to link chrome and mozilla, results are next:
* chrome link time goes from 1,666750355s to 1,551585364s, that is about 7%.
* mozilla time changes from 3,210261947 to 3,153782940, or about 2%.

Differential revision: https://reviews.llvm.org/D39594

llvm-svn: 317406
2017-11-04 09:11:27 +00:00
clang CodeGenCXX: no default dllimport storage for mingw 2017-11-04 02:15:49 +00:00
clang-tools-extra Use ToolExecutor framework in the sample tool-template. 2017-11-03 16:03:56 +00:00
compiler-rt Fix CMake definitions of tsan runtime to make it installed by "install-compiler-rt" 2017-11-04 00:07:20 +00:00
debuginfo-tests Revert r313600 due to bot failures on Green Dragon. 2017-09-19 14:51:37 +00:00
libclc tgamma: Use unary_decl instead of custom inc file 2017-11-02 19:49:00 +00:00
libcxx Change a bunch of comments from C++1z to C++17. NFC 2017-11-02 15:03:25 +00:00
libcxxabi Fix ASAN build with older compiler-rt versions. 2017-09-14 22:37:34 +00:00
libunwind Fix building for ARM with dwarf exception handling 2017-11-02 08:16:16 +00:00
lld [ELF] - Stop using SectionKey for creating output sections. 2017-11-04 09:11:27 +00:00
lldb Remove ProcessGdbRemote::m_flags 2017-11-03 22:12:50 +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 llvm/test/lit.cfg.py: Don't set the feature "llvm-64-bits" if -m32 is specified. 2017-11-04 06:55:55 +00:00
openmp Revert "Rename fields of ompt_frame_t" 2017-11-03 18:28:25 +00:00
parallel-libs
polly [ZoneAlgo/ForwardOpTree] Normalize PHIs to their known incoming values. 2017-10-31 16:11:46 +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.