hanchenye-llvm-project/lld
Simon Atanasyan 2615c3846f [ELF] Do not skip relocation scanning checking if the symbol gets dynamic COPY relocation already
It is possible that the same symbol referenced by two kinds of
relocations at the same time. The first type requires say GOT entry
creation, the second type requires dynamic copy relocation. For MIPS
targets they might be R_MIPS_GOT16 and R_MIPS_HI16 relocations. For X86
target they might be R_386_GOT32 and R_386_32 respectively.

Now LLD never creates GOT entry for a symbol if this symbol already has
related copy relocation. This patch solves this problem.

Differential Revision: http://reviews.llvm.org/D18862

llvm-svn: 265910
2016-04-10 21:48:55 +00:00
..
COFF [COFF] SmallVector<char, 0> -> SmallString<0>. 2016-04-09 23:00:31 +00:00
ELF [ELF] Do not skip relocation scanning checking if the symbol gets dynamic COPY relocation already 2016-04-10 21:48:55 +00:00
cmake/modules
docs Docs: keep copyright years up-to-date. 2016-03-30 22:25:04 +00:00
include/lld Remove unused variants of make_dynamic_error_code. NFC. 2016-03-31 01:21:50 +00:00
lib [lld][MachO] Clean up some unnecessarily verbose code. NFC. 2016-04-06 17:18:55 +00:00
test [ELF] Do not skip relocation scanning checking if the symbol gets dynamic COPY relocation already 2016-04-10 21:48:55 +00:00
tools/lld Inline a trivial CMakeLists.txt. 2016-03-03 01:56:23 +00:00
unittests Fix test which failed Error migration on Windows bots. 2016-04-04 16:56:09 +00:00
.arcconfig
.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.