Add aarch64-specific --no-apply-dynamic-relocs option.
authorCary Coutant <ccoutant@gmail.com>
Thu, 5 Nov 2015 20:24:14 +0000 (12:24 -0800)
committerCary Coutant <ccoutant@gmail.com>
Thu, 5 Nov 2015 20:24:14 +0000 (12:24 -0800)
commit0eccf19f96d6218dd7c2f8d13f0546c2b942cc08
tree92d0c3a126be527683ecbbe4200d82d29e9fc15b
parentc86a40c6c2902b73ec6f601176820c760524afd2
Add aarch64-specific --no-apply-dynamic-relocs option.

With --no-apply-dynamic-relocs on aarch64 targets, gold will not apply
link-time values for absolute relocations that become dynamic relocations.
This provides a workaround for broken Android dynamic linkers that use
the link-time value as an extra addend to the relocation.

gold/
PR gold/19163
* aarch64.cc (Target_aarch64::Relocate::relocate): Don't apply
certain relocations if --no-apply-dynamic-relocs is set.
* options.h (--apply-dynamic-relocs): New aarch64-specific option.
gold/ChangeLog
gold/aarch64.cc
gold/options.h