llvm-project/lld
Rui Ueyama 17cc6f6ad9 Speeds up CU vector creation.
We used to use std::set to uniquify CU vector elements, but as we know,
std::set is pretty slow. Fortunately we didn't actually have to use a
std::set here. This patch replaces it with std::vector.

With this patch, lld's -gdb-index overhead when linking a clang debug
build is now about 1 second (8.65 seconds without -gdb-index vs 9.60
seconds with -gdb-index). Since gold takes more than 6 seconds to create
a .gdb_index for the same output, our number isn't that bad.

llvm-svn: 314094
2017-09-25 04:55:27 +00:00
..
COFF Update for llvm change. 2017-09-21 23:13:40 +00:00
ELF Speeds up CU vector creation. 2017-09-25 04:55:27 +00:00
MinGW Accept not only --foo but also -foo. 2017-09-14 18:33:21 +00:00
cmake/modules [lld][cmake] Fix BUILD_SHARED_LIBS installation 2017-01-24 10:41:02 +00:00
docs Update the monorepo URL in a lld's document. 2017-09-15 21:04:43 +00:00
include/lld LLD: Introduce a GNU LD style driver for COFF 2017-09-11 17:02:59 +00:00
lib [MACH-O] Fix the ASM code generated for __stub_helpers section 2017-08-24 23:51:40 +00:00
test Fix off-by-one error. 2017-09-25 03:40:45 +00:00
tools/lld LLD: Introduce a GNU LD style driver for COFF 2017-09-11 17:02:59 +00:00
unittests Move Object format code to lib/BinaryFormat. 2017-06-07 03:48:56 +00:00
.arcconfig Upgrade all the .arcconfigs to https. 2016-07-14 13:15:37 +00:00
.clang-format
.gitignore
CMakeLists.txt LLD: Introduce a GNU LD style driver for COFF 2017-09-11 17:02:59 +00:00
CODE_OWNERS.TXT
LICENSE.TXT Update copyright year to 2016. 2016-03-30 22:40:59 +00:00
README.md Test commit 2017-06-24 21:16:41 +00:00

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.