This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
[committed 3/5] PR ld/20828: Work around RISC-V failures
- From: "Maciej W. Rozycki" <macro at imgtec dot com>
- To: Nick Clifton <nickc at redhat dot com>, Alan Modra <amodra at gmail dot com>, Tristan Gingold <gingold at adacore dot com>, James Cowgill <James dot Cowgill at imgtec dot com>
- Cc: "Maciej W. Rozycki" <macro at linux-mips dot org>, <binutils at sourceware dot org>
- Date: Mon, 23 Jan 2017 11:36:21 +0000
- Subject: [committed 3/5] PR ld/20828: Work around RISC-V failures
- Authentication-results: sourceware.org; auth=none
- References: <bug-20828-70@http.sourceware.org/bugzilla/> <bug-20828-70-QMcZ2LkAaY@http.sourceware.org/bugzilla/> <e6ca2026-eead-8e4a-b99b-dba27c41ac0d@redhat.com> <alpine.DEB.2.00.1701191811170.6936@tp.orcam.me.uk> <alpine.DEB.2.00.1701202112480.6936@tp.orcam.me.uk>
Complement commit 81ff47b3a546 ("PR ld/20828: Fix linker script symbols
wrongly forced local with section GC") and add `.plt' to the list of
output sections created, fixing:
FAIL: PR ld/20828 dynamic symbols with section GC (auxiliary shared library)
FAIL: PR ld/20828 dynamic symbols with section GC (plain)
FAIL: PR ld/20828 dynamic symbols with section GC (version script)
failures with `riscv32-elf', `riscv32-linux', `riscv64-elf' and
`riscv64-linux' targets caused by LD crashing in the absence of such a
section.
ld/
PR ld/20828
* testsuite/ld-elf/pr20828.ld: Add `.plt'.
---
Committed as obvious and backported to 2.28.
Maciej
binutils-bfd-elf-link-assignment-forced-local-test-riscvxx-elf.diff
Index: binutils/ld/testsuite/ld-elf/pr20828.ld
===================================================================
--- binutils.orig/ld/testsuite/ld-elf/pr20828.ld 2017-01-18 23:39:05.000000000 +0000
+++ binutils/ld/testsuite/ld-elf/pr20828.ld 2017-01-20 13:52:21.319633176 +0000
@@ -13,6 +13,7 @@ SECTIONS
.shstrtab : { *(.shstrtab) }
.symtab : { *(.symtab) }
.strtab : { *(.strtab) }
+ .plt : { *(.plt) }
.got.plt : { *(.got.plt) }
.got : { *(.got) }
/DISCARD/ : { *(*) }