[Committed][AArch64] Implement branch over stub section.
Marcus Shawcroft
marcus.shawcroft@arm.com
Wed Mar 25 15:23:00 GMT 2015
Ensure that injection of a stub section does not break a link where
there is an xpectation that flow of control can pass from one input
section to another simply by linking the input sections in series.
The solution here is to allow stub sections to be inserted after any
input section (existing behaviour), but inject an additional branch at
the start of each stub section such that control flow falling into the
stub section will branch over the stub section.
2015-03-25 Marcus Shawcroft <marcus.shawcroft@arm.com>
* elfnn-aarch64.c (_bfd_aarch64_resize_stubs): Adjust stub section
size for initial branch.
(elfNN_aarch64_build_stubs): Write initial branch.
_bfd_aarch64_decode_(elfNN_aarch64_output_arch_local_syms): Write
mapping symbol on initial branch.
2015-03-25 Marcus Shawcroft <marcus.shawcroft@arm.com>
* ld-aarch64/erratum835769.d: Adjust for initial branch over stub
section.
* ld-aarch64/farcall-b.d: Likewise.
* ld-aarch64/farcall-bl.d: Likewise.
* ld-aarch64/farcall-back.d: Likewise.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: 0003-AArch64-Implement-branch-over-stub-section.patch
Type: text/x-patch
Size: 7490 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20150325/c9fac602/attachment.bin>
More information about the Binutils
mailing list