|
From: | cvs-commit at gcc dot gnu.org |
Subject: | [Bug ld/19319] Regression: ld.bfd: 2.25.90.20151125 assertion fail ../../bfd/elf32-i386.c:5297 |
Date: | Tue, 01 Dec 2015 22:58:43 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=19319 --- Comment #21 from cvs-commit at gcc dot gnu.org <cvs-commit at gcc dot gnu.org> --- The master branch has been updated by H.J. Lu <address@hidden>: https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=ead3d5427a2df5e33316d4ad045510c1d2078c2a commit ead3d5427a2df5e33316d4ad045510c1d2078c2a Author: H.J. Lu <address@hidden> Date: Tue Dec 1 14:45:51 2015 -0800 Properly check symbol defined by assignment in linker script Symbol defined by a linker assignment may have type bfd_link_hash_new or bfd_link_hash_undefined. And h->def_regular is always set. elf_i386_convert_load and elf_x86_64_convert_load should check h->def_regular as well as bfd_link_hash_undefined and bfd_link_hash_new to see if a symbol is defined by a linker script. bfd/ PR ld/19319 * elf32-i386.c (elf_i386_convert_load): Check h->def_regular instead of bfd_link_hash_new. * elf64-x86-64.c (elf_x86_64_convert_load): Likewise. Skip relocation overflow for bfd_link_hash_undefined and bfd_link_hash_new if h->def_regular is set. ld/testsuite/ PR ld/19319 * ld-i386/i386.exp: Run pr19319 test. * ld-x86-64/x86-64.exp: Likewise. * ld-i386/pr19319.dd: New file. * ld-i386/pr19319a.S: Likewise. * ld-i386/pr19319b.S: Likewise. * ld-x86-64/pr19319.dd: Likewise. * ld-x86-64/pr19319a.S: Likewise. * ld-x86-64/pr19319b.S: Likewise. -- You are receiving this mail because: You are on the CC list for the bug.
[Prev in Thread] | Current Thread | [Next in Thread] |