llvm-project/lld
Rafael Espindola b3bc1ed0d4 Remove LinkerScript::flush.
This patch replaces flush with a last ditch attempt at synchronizing
the section list with the linker script "AST".

The synchronization is a bit of a hack and should in time be avoided
by creating the AST earlier so that modifications can be made directly
to it instead of modifying the section list and synchronizing it back.

This is the main step for fixing
https://bugs.llvm.org/show_bug.cgi?id=32816. With this in place I
think the only missing thing would be to have processCommands assign
section indexes as dummy offsets so that the sort in
OutputSection::finalize works.

With this LinkerScript::assignAddresses becomes much simpler, which
should help with the thunk work.

llvm-svn: 301678
2017-04-28 20:22:47 +00:00
..
COFF COFF: actually synthesize CONST imports properly 2017-04-28 17:06:40 +00:00
ELF Remove LinkerScript::flush. 2017-04-28 20:22:47 +00:00
cmake/modules [lld][cmake] Fix BUILD_SHARED_LIBS installation 2017-01-24 10:41:02 +00:00
docs Recommend users use readelf instead of objdump to dump .comment contents. 2017-04-27 04:50:08 +00:00
include/lld [Core] Fix parallel_for for Linux 2017-04-07 08:11:28 +00:00
lib [MachO/X86_64] Simplify isDataInCodeTransition(). 2017-04-15 01:50:51 +00:00
test Use toString(Inputfile*) to format a file object. 2017-04-28 20:00:09 +00:00
tools/lld Accept not only lld-link but also LLD-LINK, for example. 2017-04-12 18:29:52 +00:00
unittests Fix signed/unsigned comparison warning in a unit test. This was appearing on 2017-04-07 08:48:17 +00:00
.arcconfig Upgrade all the .arcconfigs to https. 2016-07-14 13:15:37 +00:00
.clang-format
.gitignore
CMakeLists.txt [cmake] Support running tests in stand-alone builds 2017-01-31 14:10:20 +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.