[Bug gold/18865] New: ICF --keep-unique doesn't work correctly
https://sourceware.org/bugzilla/show_bug.cgi?id=18865 Bug ID: 18865 Summary: ICF --keep-unique doesn't work correctly Product: binutils Version: 2.26 (HEAD) Status: NEW Severity: normal Priority: P2 Component: gold Assignee: ccoutant at gmail dot com Reporter: mail at tzik dot jp CC: ian at airs dot com Target Milestone: --- ICF --keep-unique doesn't work correctly when a symbol is folded *into* the --keep-unique'ed symbol. A repro case is below: $ cat > foo.c < 00400580 T f > 00400580 T g Where the address of f is expected to be unique. I think this is due to the implementation of Icf::unfold_section. It prevents a section (f) is folded into another section (g), though doesn't prevents opposite, another section (g) is folded into the specified section (f). -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18865] ICF --keep-unique doesn't work correctly
https://sourceware.org/bugzilla/show_bug.cgi?id=18865 mail at tzik dot jp changed: What|Removed |Added CC||tmsriram at google dot com, ||tzik at chromium dot org -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18865] ICF --keep-unique doesn't work correctly
https://sourceware.org/bugzilla/show_bug.cgi?id=18865 Cary Coutant changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|ccoutant at gmail dot com |tmsriram at google dot com -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/18842] sparc64-sun-solaris2.9: error: implicit declaration of function ‘asprintf’
https://sourceware.org/bugzilla/show_bug.cgi?id=18842 Nick Clifton changed: What|Removed |Added CC||nickc at redhat dot com --- Comment #1 from Nick Clifton --- Created attachment 8546 --> https://sourceware.org/bugzilla/attachment.cgi?id=8546&action=edit Replace asprintf with malloc + sprintf -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/18842] sparc64-sun-solaris2.9: error: implicit declaration of function ‘asprintf’
https://sourceware.org/bugzilla/show_bug.cgi?id=18842 Nick Clifton changed: What|Removed |Added Attachment #8546|0 |1 is obsolete|| --- Comment #2 from Nick Clifton --- Created attachment 8547 --> https://sourceware.org/bugzilla/attachment.cgi?id=8547&action=edit Add asprintf to the functions checked by configure -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/18842] sparc64-sun-solaris2.9: error: implicit declaration of function ‘asprintf’
https://sourceware.org/bugzilla/show_bug.cgi?id=18842 Nick Clifton changed: What|Removed |Added Status|NEW |ASSIGNED --- Comment #3 from Nick Clifton --- Hi Marcin, Please could you try out the uploaded patch which should fix this problem. The issue was that the configure script was not checking for the presence of the asprintf function in the standard haeaders, which meant that the alternative definition provided by libiberty was not being used. Cheers Nick -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/18854] assertion fail efd/elf.c:1796 and 1731
https://sourceware.org/bugzilla/show_bug.cgi?id=18854 --- Comment #2 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by Nick Clifton : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=16ad13eca4a18139cd1dec214ec83fdc7c47ffda commit 16ad13eca4a18139cd1dec214ec83fdc7c47ffda Author: Nick Clifton Date: Tue Aug 25 17:48:20 2015 +0100 Replace assertions with warning messages about ELF binaries containing multiple symbol tables. PR binutils/18854 * elf.c (bfd_section_from_shdr): Replace assertions with warnings about multiple symbol tables. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/18854] assertion fail efd/elf.c:1796 and 1731
https://sourceware.org/bugzilla/show_bug.cgi?id=18854 Nick Clifton changed: What|Removed |Added Status|NEW |RESOLVED CC||nickc at redhat dot com Resolution|--- |FIXED --- Comment #3 from Nick Clifton --- Hi Fabian, Thank you for reporting these problems. I have checked in a patch which replaces the assertions with warning messages, so that objdump can now run properly. Cheers Nick -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] New: internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 Bug ID: 18866 Summary: internal error in is_default, symtab.h:134 Product: binutils Version: 2.26 (HEAD) Status: NEW Severity: normal Priority: P2 Component: gold Assignee: ccoutant at gmail dot com Reporter: hjl.tools at gmail dot com CC: ian at airs dot com Target Milestone: --- Created attachment 8548 --> https://sourceware.org/bugzilla/attachment.cgi?id=8548&action=edit A testcase With today's llvm/clang on Linux/x86-64, I got [hjl@gnu-mic-2 bin]$ ./clang -fuse-ld=gold -flto -fsanitize=safe-stack lto.bc/usr/local/bin/ld.gold: internal error in is_default, at /net/gnu-6/export/linux/src/binutils/binutils/gold/symtab.h:134 clang-3.8: error: linker command failed with exit code 1 (use -v to see invocation) [hjl@gnu-mic-2 bin]$ ./clang -fuse-ld=bfd -flto -fsanitize=safe-stack lto.bc [hjl@gnu-mic-2 bin]$ -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 --- Comment #1 from H.J. Lu --- -fsanitize=safe-stack triggers the problem. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 --- Comment #2 from H.J. Lu --- It may be related to PR 18698. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug ld/17666] ld -r may create reloc sections with unordered relocs
https://sourceware.org/bugzilla/show_bug.cgi?id=17666 Mike Frysinger changed: What|Removed |Added Blocks||18867 Referenced Bugs: https://sourceware.org/bugzilla/show_bug.cgi?id=18867 [Bug 18867] ld reloc sorting causes glibc to crash on alpha -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug ld/18867] New: ld reloc sorting causes glibc to crash on alpha
https://sourceware.org/bugzilla/show_bug.cgi?id=18867 Bug ID: 18867 Summary: ld reloc sorting causes glibc to crash on alpha Product: binutils Version: unspecified Status: NEW Severity: normal Priority: P2 Component: ld Assignee: amodra at gmail dot com Reporter: vapier at gentoo dot org CC: rth at twiddle dot net Depends on: 17666 Target Milestone: --- Target: alphaev68-unknown-linux-gnu we noticed that binutils-2.25.1 causes glibc to segfault when exiting: we tracked it back to this commit: https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=53df40a43c968f4d97754226d62775d1fe665459 and current master also breaks (going back to the original commit): https://sourceware.org/git/?p=binutils-gdb.git;a=commitdiff;h=28dbcedc7b1282b93c3f25c4e42ae71b44e8e2a8 if i take current master and force sort=false (the equiv of defining sort_relocs_p for the alpha backend and having it always return false), then glibc links & runs just fine. i don't know if we should disable sorting for the alpha backend all the time, or if there's a change to reloc processing in glibc that we can make. Referenced Bugs: https://sourceware.org/bugzilla/show_bug.cgi?id=17666 [Bug 17666] ld -r may create reloc sections with unordered relocs -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/18401] MIPS -march=xlp results in inconsistent ISA markers
https://sourceware.org/bugzilla/show_bug.cgi?id=18401 Matthew Fortune changed: What|Removed |Added Attachment #8311|0 |1 is obsolete|| --- Comment #5 from Matthew Fortune --- Created attachment 8550 --> https://sourceware.org/bugzilla/attachment.cgi?id=8550&action=edit Initial proposed fix This patch is at least the start of a fix for this issue. The problem with the XLP is that it is described as an 'XLR' in the e_flags machine info which is a MIPS64 not a MIPS64R2 but the abiflags correctly represents the fact it is a MIPS64R2. Similar things happen for octeon+ where it has no e_flags representation (only octeon) but is correctly reported in abiflags. The solution I propose is that we allow the abiflags information to represent the same or newer isa/arch than can be inferred from the e_flags data. This glosses over the subtle inconsistencies here and allows for future extensions to eventually migrate to abiflags. There are however a few other options for fixing this issue such as adding new BFD mach entries for the inconsistent ISAs and adding more EF_MACH entries. There is a limit to how far this scales though as we will run out of EF_MACH values eventually so the proposed fix still stands. I have not done any new tests for this but we need at the very least a simple single object test for every supported arch and ideally a dual input link test to combine all pairs of architectures that are related by ISA extension. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gas/18842] sparc64-sun-solaris2.9: error: implicit declaration of function ‘asprintf’
https://sourceware.org/bugzilla/show_bug.cgi?id=18842 --- Comment #4 from Marcin Cieślak --- Thank you Nick - - now I'm getting #define HAVE_DECL_ASPRINTF 0 and gas compiles fine under -Werror Didn't check re-creation of ./configure with autoconf, though. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 --- Comment #3 from Cary Coutant --- I have absolutely no idea what to do with that attachment. HJ, what is it? It downloads as "lto.bc", and contains random garbage. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 --- Comment #4 from Cary Coutant --- > I have absolutely no idea what to do with that attachment. HJ, what is it? > It downloads as "lto.bc", and contains random garbage. Oh, I see it's a bitcode file. I need .o files, please. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/14187] gold incorrectly requires hexadecimals to start with 0x with -Ttext/-Tdata/-Tbss
https://sourceware.org/bugzilla/show_bug.cgi?id=14187 --- Comment #3 from Cary Coutant --- We've discussed fixing this before, but we now have legacy scripts that invoke gold with decimal values, and changing it would break them. We could certainly peek at the number and treat it as hex if it has any A-F digits, but that still wouldn't catch options like -Ttext=1. We could further favor hex over decimal unless it looks like a power of two when treated as decimal (or an integer multiple of some large power of two), but that's straying into dangerously unpredictable territory. The bottom line is that I don't have a good idea for how to fix this to match the Gnu ld documentation without breaking something. What's difficult about adding the "0x" so that it works with both linkers? -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 --- Comment #6 from H.J. Lu --- Comment on attachment 8548 --> https://sourceware.org/bugzilla/attachment.cgi?id=8548 A testcase This isn't needed. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 --- Comment #5 from H.J. Lu --- [hjl@gnu-6 pr18866]$ cat foo.c int pthread_create (void) { return 0; } [hjl@gnu-6 pr18866]$ cat main.c int main() { return 0; } [hjl@gnu-6 pr18866]$ make gcc -B./ -g -Wall -c -o foo.o foo.c ar rv libfoo.a foo.o ar: creating libfoo.a a - foo.o gcc -B./ -g -Wall -c -o main.o main.c gcc -B./ -o main -Wl,-whole-archive libfoo.a -Wl,-no-whole-archive main.o -lpthread -lrt ./ld: internal error in is_default, at /export/gnu/import/git/sources/binutils-gdb/gold/symtab.h:134 collect2: error: ld returned 1 exit status Makefile:20: recipe for target 'main' failed make: *** [main] Error 1 [hjl@gnu-6 pr18866]$ -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 H.J. Lu changed: What|Removed |Added Attachment #8548|0 |1 is obsolete|| -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 --- Comment #7 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by Cary Coutant : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3ac0a36c297a7bb3325c6efa75640572dbdb commit 3ac0a36c297a7bb3325c6efa75640572dbdb Author: Cary Coutant Date: Tue Aug 25 17:53:53 2015 -0700 Fix regression introduced by fix for PR 18703. When a user object overrides a versioned definition in a shared object, it's possible to trigger an internal error because the versioned definition we saw didn't override the unversioned definition. This was introduced by the fix for PR 18703. This patch fixes the problem by reordering the tests so that we do not check ret->is_default() until we're confident that the symbol is in fact versioned. gold/ PR gold/18866 PR gold/18703 * symtab.cc (Symbol_table): Reorder conditions to avoid internal error. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18703] Symbol version and Version script incompatibility with BFD ld
https://sourceware.org/bugzilla/show_bug.cgi?id=18703 --- Comment #22 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by Cary Coutant : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=3ac0a36c297a7bb3325c6efa75640572dbdb commit 3ac0a36c297a7bb3325c6efa75640572dbdb Author: Cary Coutant Date: Tue Aug 25 17:53:53 2015 -0700 Fix regression introduced by fix for PR 18703. When a user object overrides a versioned definition in a shared object, it's possible to trigger an internal error because the versioned definition we saw didn't override the unversioned definition. This was introduced by the fix for PR 18703. This patch fixes the problem by reordering the tests so that we do not check ret->is_default() until we're confident that the symbol is in fact versioned. gold/ PR gold/18866 PR gold/18703 * symtab.cc (Symbol_table): Reorder conditions to avoid internal error. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18866] internal error in is_default, symtab.h:134
https://sourceware.org/bugzilla/show_bug.cgi?id=18866 Cary Coutant changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #8 from Cary Coutant --- Fixed on master. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/14746] ld: internal error in address, at gold/output.h:72 while building Linux kvm tool
https://sourceware.org/bugzilla/show_bug.cgi?id=14746 --- Comment #9 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by Cary Coutant : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=1757d35c8a35d77fd631705589024456c6030966 commit 1757d35c8a35d77fd631705589024456c6030966 Author: Cary Coutant Date: Tue Aug 25 17:41:19 2015 -0700 Fix internal error in gold when script uses section address in assignment. When processing assignment expressions in a linker script, gold processes absolute assignments early, but when one of those assignments involves the address of a section that has not yet been finalized, we get an internal error in address. This patch fixes the problem by gracefully returning from expression evaluation even if the address is not yet valid, and deferring the assignment in such a case. gold/ PR gold/14746 * expression.cc (Expression::Expression_eval_info): Add is_valid_pointer field. (Expression::eval_maybe_dot): Add is_valid_pointer parameter. Adjust all callers. (Addr_expression::value_from_output_section): Check whether address is valid. * script.cc (Symbol_assignment::set_if_absolute): Defer assignment if evaluation failed due to address that is not yet valid. * script.h: (Expression::eval_maybe_dot): Add is_valid_pointer parameter. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18859] Gold linker does not fully respect -no-as-needed
https://sourceware.org/bugzilla/show_bug.cgi?id=18859 --- Comment #5 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by Cary Coutant : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=4bfacfd359a1f8d026d1a350f56f2f5d70b6cb65 commit 4bfacfd359a1f8d026d1a350f56f2f5d70b6cb65 Author: Cary Coutant Date: Fri Aug 21 12:32:33 2015 -0700 Fix --no-as-needed when shared library is listed twice on the command line. When a shared library is listed twice on the command line, the linker ignores the second mention. If the first mention is in the scope of an --as-needed option, and the second one is under the scope of a --no-as-needed option, the --no-as-needed should take effect, but doesn't. This patch keeps track of the objects we've already seen, and updates the --as-needed flag so that if a shared object is ever seen with --no-as-needed, it will be marked as such. gold/ PR gold/18859 * object.cc (Input_objects::add_object): Store objects in a map, indexed by soname; update as-needed flag when necessary. * object.h (Object::clear_as_needed): New method. (Input_objects::so_names_): Change from set to map. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/18859] Gold linker does not fully respect -no-as-needed
https://sourceware.org/bugzilla/show_bug.cgi?id=18859 Cary Coutant changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution|--- |FIXED --- Comment #6 from Cary Coutant --- Fixed on master. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug ld/18867] ld reloc sorting causes glibc to crash on alpha
https://sourceware.org/bugzilla/show_bug.cgi?id=18867 Alan Modra changed: What|Removed |Added Status|NEW |ASSIGNED --- Comment #1 from Alan Modra --- I see from the alpha backend binutils code that some relocs are expected in certain order. That means I can't use qsort, which is unstable. Argh! In fact, even on powerpc we have marker relocs at the same r_offset as other relocs, eg. on __tls_get_addr calls, and they're expected in a certain order or TLS optimisation will be disabled. I need to change that qsort to a stable sort. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug gold/14187] gold incorrectly requires hexadecimals to start with 0x with -Ttext/-Tdata/-Tbss
https://sourceware.org/bugzilla/show_bug.cgi?id=14187 --- Comment #4 from Mike Frysinger --- (In reply to Cary Coutant from comment #3) if something has to break, why not just break gold users ? the bfd behavior has been around way longer than gold. -- You are receiving this mail because: You are on the CC list for the bug. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils