Created attachment 7833 [details] test case works with binutils 2.24, fails with 20141014 trunk. gold succeeds, (although didn't check the result for correctness) Starting program: /usr/bin/ld --build-id -static -m elf64ppc --hash-style=gnu --as-needed -z relro -o xvect.bin.tmp -q -n --oformat binary lowmem.o -Ttext=0x100 Program received signal SIGSEGV, Segmentation fault. 0x10036b34 in ?? () (gdb) bt #0 0x10036b34 in ?? () #1 0x10019750 in ?? () #2 0x10019750 in ?? () #3 0x10003cb4 in ?? () #4 0x0fd11314 in generic_start_main (main=0x10003610, argc=17, argv=0xffffe694, auxvec=0xffffe740, init=<optimized out>, rtld_fini=<optimized out>, stack_end=<optimized out>, fini=<optimized out>) at ../csu/libc-start.c:287 #5 0x0fd114d4 in __libc_start_main (argc=<optimized out>, argv=<optimized out>, ev=<optimized out>, auxvec=<optimized out>, rtld_fini=<optimized out>, stinfo=<optimized out>, stack_on_entry=<optimized out>) at ../sysdeps/unix/sysv/linux/powerpc/libc-start.c:94 #6 0x00000000 in ?? ()
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "gdb and binutils". The branch, master has been updated via 459609d6f8f65d4b4440385499b84cc8c1804f65 (commit) from 983037647b9ffd052df16fb8e6abfe7e3e8c0683 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=459609d6f8f65d4b4440385499b84cc8c1804f65 commit 459609d6f8f65d4b4440385499b84cc8c1804f65 Author: Alan Modra <amodra@gmail.com> Date: Thu Oct 16 09:38:09 2014 +1030 PR17488, powerpc64-linux-ld segfault For binary ouput, we don't have an ELF bfd output so can't access elf_elfheader. The elf64-ppc.c changes are really just a tidy, triggered by looking at all places where the abiversion bits are accessed. bfd/ * elf64-ppc.c (ppc64_elf_before_check_relocs): Do .opd processing even when output is not ppc64 ELF. Remove redundant tests on type of input bfd. ld/ PR 17488 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Don't attempt to access ELF header e_flags when not ppc64 ELF output. ----------------------------------------------------------------------- Summary of changes: bfd/ChangeLog | 6 ++ bfd/elf64-ppc.c | 126 ++++++++++++++++++++++------------------------ ld/ChangeLog | 6 ++ ld/emultempl/ppc64elf.em | 3 +- 4 files changed, 75 insertions(+), 66 deletions(-)
Fixed, thanks for the bug report.
This is an automated email from the git hooks/post-receive script. It was generated because a ref change was pushed to the repository containing the project "gdb and binutils". The branch, binutils-2_25-branch has been updated via 16bfc7bb18b272d5a4e40ee37ced21e4b9a8fbb4 (commit) from 986b34e134011175be26b4504ba8a4f8e38de2bf (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=16bfc7bb18b272d5a4e40ee37ced21e4b9a8fbb4 commit 16bfc7bb18b272d5a4e40ee37ced21e4b9a8fbb4 Author: Alan Modra <amodra@gmail.com> Date: Thu Oct 16 09:38:09 2014 +1030 PR17488, powerpc64-linux-ld segfault For binary ouput, we don't have an ELF bfd output so can't access elf_elfheader. The elf64-ppc.c changes are really just a tidy, triggered by looking at all places where the abiversion bits are accessed. bfd/ * elf64-ppc.c (ppc64_elf_before_check_relocs): Do .opd processing even when output is not ppc64 ELF. Remove redundant tests on type of input bfd. ld/ PR 17488 * emultempl/ppc64elf.em (gld${EMULATION_NAME}_finish): Don't attempt to access ELF header e_flags when not ppc64 ELF output. ----------------------------------------------------------------------- Summary of changes: bfd/ChangeLog | 5 ++ bfd/elf64-ppc.c | 126 ++++++++++++++++++++++------------------------ ld/ChangeLog | 8 +++ ld/emultempl/ppc64elf.em | 3 +- 4 files changed, 76 insertions(+), 66 deletions(-)