[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/30957] aarch64: unnecessary bti veneer
From: |
cvs-commit at gcc dot gnu.org |
Subject: |
[Bug ld/30957] aarch64: unnecessary bti veneer |
Date: |
Thu, 09 Nov 2023 14:59:41 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=30957
--- Comment #2 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot
gnu.org> ---
The master branch has been updated by Szabolcs Nagy <nsz@sourceware.org>:
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=fc48504c7abe8eb9d9723632b2d53504927f46ff
commit fc48504c7abe8eb9d9723632b2d53504927f46ff
Author: Szabolcs Nagy <szabolcs.nagy@arm.com>
Date: Wed Oct 18 16:12:56 2023 +0100
bfd: aarch64: Avoid BTI stub for a PLT that has BTI
We decide to emit BTI stubs based on the instruction at the target
location. But PLT code is generated later than the stubs so we always
read 0 which is not a valid BTI.
Fix the logic to special case the PLT section: this is code the linker
generates so we know when it will have BTI.
This avoids BTI stubs in large executables where the PLTs have them
already. An alternative is to never emit BTI stubs for PLTs, instead
use BTI in the PLT if a library gets too big, however that may be
more tricky given the ordering of PLT sizing and stub insertion.
Related to bug 30957.
--
You are receiving this mail because:
You are on the CC list for the bug.