llvm-project/lld
Adhemerval Zanella 668ad0ffcb [lld] [ELF/AArch64] Fix R_AARCH64_ABS64 in Shared mode
This patch fixes the R_AARCH64_ABS64 relocation when used in shared mode,
where it requires a dynamic R_AARCH64_RELATIVE relocation. To correct set
the addend on the dynamic relocation (since it will be used by the dynamic
linker), a new TargetInfo specific hook was created (getDynRelativeAddend)
to get the correct addend based on relocation type.

The patch fixes the issues when creating shared library code against
{init,fini}_array, where it issues R_AARCH64_ABS64 relocation against
local symbols.

llvm-svn: 261651
2016-02-23 16:54:40 +00:00
..
COFF Update for LLVM function name change. 2016-01-14 20:53:50 +00:00
ELF [lld] [ELF/AArch64] Fix R_AARCH64_ABS64 in Shared mode 2016-02-23 16:54:40 +00:00
cmake/modules
docs Start adding release notes for lld. 2016-02-16 13:12:55 +00:00
include/lld Use __nl_symbol_ptr instead of __got in the stubs pass on x86 archs. 2016-02-09 20:11:17 +00:00
lib Use ArrayRef instead of deep copies of CompactUnwindEntries. NFC. 2016-02-10 21:32:24 +00:00
test [lld] [ELF/AArch64] Fix R_AARCH64_ABS64 in Shared mode 2016-02-23 16:54:40 +00:00
tools Rename ld.lld2 to ld.lld since it is the default. 2015-11-18 06:11:01 +00:00
unittests Add support for export_dynamic cmdline option and behaviour. 2016-01-22 21:13:24 +00:00
.arcconfig Update Phabricator server. 2014-04-07 04:52:24 +00:00
.clang-format Remove redundant "Standard: Cpp11" tag. The LLVM style has used the 2014-07-04 12:08:03 +00:00
.gitignore Update .gitignore to ignore hidden MacOSX Finder droppings 2014-07-16 21:01:17 +00:00
CMakeLists.txt Set CMake ADDITIONAL_HEADER_DIRS on libraries with headers in /include. NFC. 2016-01-07 00:14:09 +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 2015. 2015-03-12 20:14:35 +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.