]>
git.ipfire.org Git - thirdparty/binutils-gdb.git/log
Tamar Christina [Thu, 2 Jan 2020 14:06:01 +0000 (14:06 +0000)]
AArch64: Revert SEC_LINKER_CREATED for AArch64 stubs (PR/25210)
The SEC_LINKER_CREATED flag was added as a fix for PR 24753. I believe that
part of the fix in compress.c to still be correct as linker created sections
don't have a size on disk and it fixes the Arm bootstrap regression.
So I'm partially revert this change so that we don't have to manage the section
manually as implied by SEC_LINKER_CREATED as it's causing an error when both
errata workarounds are used together and it wasn't needed. This can also be
seen from that the arm bootstrap was fixed and no flag was added to it's stubs.
ld/ChangeLog:
PR 25210
PR 24753
* emultempl/aarch64elf.em (elf${ELFSIZE}_aarch64_add_stub_section):
Remove SEC_LINKER_CREATED.
* testsuite/ld-aarch64/aarch64-elf.exp: Add erratum835769-843419.
* testsuite/ld-aarch64/erratum835769-843419.d: New test.
(cherry picked from commit
0db131fb835e4c4f6a024e86743467e7e01c965e )
Signed-off-by: Tamar Christina <tamar.christina@arm.com>
GDB Administrator [Thu, 16 Jan 2020 00:02:01 +0000 (00:02 +0000)]
Automatic date update in version.in
Alan Modra [Wed, 15 Jan 2020 05:45:43 +0000 (16:15 +1030)]
Reinstate gas em=freebsd for sparc-freebsd
In commit
c9098af41e3 I over-simplified the sparc target decoding,
missing the fact that prior to that patch sparc-*-freebsd fell through
to the generic *-*-freebsd match.
* configure.tgt: Add sparc-*-freebsd case.
(cherry picked from commit
c24d0e8d4850d4913a1630a53e272c930849406d )
Alan Modra [Tue, 14 Jan 2020 10:15:53 +0000 (20:45 +1030)]
PR25384, PowerPC64 ELFv1 copy relocs against function symbols
Function symbols of course don't normally want .dynbss copies but
with some old versions of gcc they are needed to copy the function
descriptor. This patch restricts the cases where they are useful to
compilers using dot-symbols, and enables the warning regardless of
whether a PLT entry is emitted in the executable. PLTs in shared
libraries are affected by a .dynbss copy in the executable.
bfd/
PR 25384
* elf64-ppc.c (ELIMINATE_COPY_RELOCS): Update comment.
(ppc64_elf_adjust_dynamic_symbol): Don't allow .dynbss copies
of function symbols unless dot symbols are present. Do warn
whenever one is created, regardles of whether a PLT entry is
also emitted for the function symbol.
ld/
* testsuite/ld-powerpc/ambiguousv1b.d: Adjust expected output.
* testsuite/ld-powerpc/funref.s: Align func_tab.
* testsuite/ld-powerpc/funref2.s: Likewise.
* testsuite/ld-powerpc/funv1.s: Add dot symbols.
(cherry picked from commit
e1c6cf618cbeebbafd34afc5ee921fcbf7061bfa )
GDB Administrator [Wed, 15 Jan 2020 00:01:21 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 14 Jan 2020 00:01:22 +0000 (00:01 +0000)]
Automatic date update in version.in
Szabolcs Nagy [Thu, 9 Jan 2020 17:20:56 +0000 (17:20 +0000)]
[PR ld/22269] arm: Avoid dynamic relocs for undefweak symbols in static PIE
With static PIE linking undefined weak symbols are resolved to 0, so no
dynamic relocation is needed for them. The UNDEFWEAK_NO_DYNAMIC_RELOC
macro was introduced so this case can be handled easily, but it was not
applied consistently in the first attempt to fix ld/22269 for arm:
commit
95b03e4ad68e7a90f5096b47df595636344b783a
arm: Check UNDEFWEAK_NO_DYNAMIC_RELOC
This patch fixes spurious relative relocs in static PIE binaries against
GOT entries created for undefined weak symbols on arm*-*, this fixes
FAIL: pr22269-1 (static pie undefined weak)
bfd/ChangeLog:
Backported from master
2020-01-10 Szabolcs Nagy <szabolcs.nagy@arm.com>
PR ld/22269
* elf32-arm.c (elf32_arm_final_link_relocate): Use
UNDEFWEAK_NO_DYNAMIC_RELOC.
(allocate_dynrelocs_for_symbol): Likewise.
Szabolcs Nagy [Mon, 21 Oct 2019 15:59:11 +0000 (16:59 +0100)]
[ARM][gas] fix build breakage with gcc-10 by using correct enum type
Fixes
../../gas/config/tc-arm.c: In function 'parse_reg_list':
../../gas/config/tc-arm.c:1946:35: error: implicit conversion from 'enum reg_list_els' to 'enum arm_reg_type' [-Werror=enum-conversion]
1946 | reg = arm_reg_parse (&str, REGLIST_RN);
| ^~~~~~~~~~
gas/ChangeLog:
Backported from mainline.
2020-01-02 Szabolcs Nagy <szabolcs.nagy@arm.com>
* config/tc-arm.c (parse_reg_list): Use REG_TYPE_RN instead of
REGLIST_RN.
GDB Administrator [Mon, 13 Jan 2020 00:01:08 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 12 Jan 2020 00:02:49 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 11 Jan 2020 00:01:39 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 10 Jan 2020 00:01:16 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 9 Jan 2020 00:02:35 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 8 Jan 2020 00:01:14 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 7 Jan 2020 00:01:12 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 6 Jan 2020 00:01:26 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 5 Jan 2020 00:02:03 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 4 Jan 2020 00:01:15 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 3 Jan 2020 00:02:20 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 2 Jan 2020 00:01:49 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 1 Jan 2020 00:01:09 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 31 Dec 2019 00:01:31 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 30 Dec 2019 00:01:15 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 29 Dec 2019 00:02:15 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 28 Dec 2019 00:01:45 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 27 Dec 2019 00:01:50 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 26 Dec 2019 00:02:06 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 25 Dec 2019 00:01:15 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 24 Dec 2019 00:01:16 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 23 Dec 2019 00:01:16 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 22 Dec 2019 00:02:02 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 21 Dec 2019 00:01:37 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 20 Dec 2019 00:01:18 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 19 Dec 2019 00:01:33 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 18 Dec 2019 00:01:27 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 17 Dec 2019 00:01:20 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 16 Dec 2019 00:01:28 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 15 Dec 2019 00:01:52 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 14 Dec 2019 00:01:22 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 13 Dec 2019 00:01:21 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 12 Dec 2019 00:01:14 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 11 Dec 2019 00:01:19 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 10 Dec 2019 00:01:18 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 9 Dec 2019 00:01:38 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 8 Dec 2019 00:01:57 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 7 Dec 2019 00:01:30 +0000 (00:01 +0000)]
Automatic date update in version.in
Kyrylo Tkachov [Fri, 6 Dec 2019 12:00:17 +0000 (12:00 +0000)]
[gas] Implement .cfi_negate_ra_state directive
2019-12-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
Backported from mainline.
2019-12-06 Kyrylo Tkachov <kyrylo.tkachov@arm.com>
* dw2gencfi.c (cfi_pseudo_table): Add cfi_negate_ra_state.
* testsuite/gas/aarch64/pac_negate_ra_state.s: New file.
* testsuite/gas/aarch64/pac_negate_ra_state.d: Likewise.
GDB Administrator [Fri, 6 Dec 2019 00:02:23 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 5 Dec 2019 00:01:46 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 4 Dec 2019 00:02:33 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 3 Dec 2019 00:01:37 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 2 Dec 2019 00:01:24 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 1 Dec 2019 00:01:53 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 30 Nov 2019 00:01:17 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 29 Nov 2019 00:01:21 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 28 Nov 2019 00:01:23 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 27 Nov 2019 00:01:25 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 26 Nov 2019 00:01:13 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 25 Nov 2019 00:01:18 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 24 Nov 2019 00:01:52 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 23 Nov 2019 00:01:23 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 22 Nov 2019 00:01:17 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 21 Nov 2019 00:01:32 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 20 Nov 2019 00:01:46 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 19 Nov 2019 00:01:26 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 18 Nov 2019 00:01:17 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 17 Nov 2019 00:02:02 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 16 Nov 2019 00:01:10 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 15 Nov 2019 00:01:23 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 14 Nov 2019 00:01:11 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 13 Nov 2019 00:01:23 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 12 Nov 2019 00:02:21 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 11 Nov 2019 00:01:32 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 10 Nov 2019 00:02:15 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 9 Nov 2019 00:01:34 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 8 Nov 2019 00:01:13 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 7 Nov 2019 00:02:16 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 6 Nov 2019 00:01:31 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 5 Nov 2019 00:01:13 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 4 Nov 2019 00:01:17 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 3 Nov 2019 00:02:01 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 2 Nov 2019 00:01:13 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 1 Nov 2019 00:01:21 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 31 Oct 2019 00:01:35 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 30 Oct 2019 00:02:20 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 29 Oct 2019 00:02:24 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 28 Oct 2019 00:02:02 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Sun, 27 Oct 2019 00:03:10 +0000 (00:03 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 26 Oct 2019 00:02:08 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 25 Oct 2019 00:02:27 +0000 (00:02 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 24 Oct 2019 00:01:11 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Wed, 23 Oct 2019 00:01:41 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Tue, 22 Oct 2019 00:01:10 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Mon, 21 Oct 2019 00:02:13 +0000 (00:02 +0000)]
Automatic date update in version.in
John David Anglin [Sun, 20 Oct 2019 16:28:35 +0000 (12:28 -0400)]
[bfd] Provide 8-byte minimum alignment for .plt section
This change increases the default alignment for the .plt section
from 4 bytes to 8 bytes. When function descriptors are 8-byte
aligned, they can be updated atomically on 32-bit hppa. This
helps with ordering issues on SMP machines. It also ensures
that descriptors reside on the same cache line. This reduces
the probability of a double TLB miss in a call.
2019-10-20 John David Anglin <danglin@gcc.gnu.org>
* elf32-hppa.c (elf32_hppa_size_dynamic_sections): Provide 8-byte
minimum alignment for .plt section.
John David Anglin [Sun, 20 Oct 2019 16:20:01 +0000 (12:20 -0400)]
[bfd] Revise import stubs on hppa.
This commit updates the import stubs to leave the pointer to the
function descriptor in register %r22. This provides a backup
mechanism for _dl_runtime_resolve to fixup descriptors during
lazy binding.
bfd/ChangeLog
2019-10-20 John David Anglin <danglin@gcc.gnu.org>
* elf32-hppa.c: Revise import stub sequences.
(LONG_BRANCH_STUB_SIZE): Define.
(LONG_BRANCH_SHARED_STUB_SIZE): Define.
(IMPORT_STUB_SIZE): Define.
(IMPORT_SHARED_STUB_SIZE): Define.
(EXPORT_STUB_SIZE): Define.
(plt_stub): Revise to not use register %r22.
(LDO_R1_R22): Define.
(LDW_R22_R21): Define.
(LDW_R22_R19): Define.
(hppa_build_one_stub): Update stub generation and use new defines.
(hppa_size_one_stub): Likewise.
GDB Administrator [Sun, 20 Oct 2019 00:03:18 +0000 (00:03 +0000)]
Automatic date update in version.in
GDB Administrator [Sat, 19 Oct 2019 00:01:29 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Fri, 18 Oct 2019 00:01:23 +0000 (00:01 +0000)]
Automatic date update in version.in
GDB Administrator [Thu, 17 Oct 2019 00:01:30 +0000 (00:01 +0000)]
Automatic date update in version.in