[Bug ld/18705] New: handle extern protected data
https://sourceware.org/bugzilla/show_bug.cgi?id=18705 Bug ID: 18705 Summary: handle extern protected data Product: binutils Version: unspecified Status: NEW Severity: normal Priority: P2 Component: ld Assignee: unassigned at sourceware dot org Reporter: nszabolcs at gmail dot com Target Milestone: --- Same as bug 17709 for aarch64 and arm, related to glibc bug 17711. _bfd_elf_symbol_refs_local_p should return false for protected visibility data in shared objects, so the main module with copy reloc against it will see the same address. -- 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/18705] handle extern protected data
https://sourceware.org/bugzilla/show_bug.cgi?id=18705 Szabolcs Nagy changed: What|Removed |Added Target||arm-*-*, aarch64-*-* -- 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/18628] gold IFUNC testsuite failures with GCC 5
https://sourceware.org/bugzilla/show_bug.cgi?id=18628 --- Comment #8 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by H.J. Lu : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=cd78ea777c35c497fcc0f20d162789296dc0a44d commit cd78ea777c35c497fcc0f20d162789296dc0a44d Author: H.J. Lu Date: Wed Jul 22 03:35:47 2015 -0700 Mark global with hidden attribute GCC 5 will generate a relocation for protected symbol: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=65248 when compiling for a shared library. It is undefined to access protected symbol in IFUNC selector function inside a shared library. PR gold/18628 * testsuite/ifuncdep2.c (global): Change protected to hidden. * testsuite/ifuncmod1.c (global): Likewise. * testsuite/ifuncmod5.c (global): Likewise. -- 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/18663] gold/testsuite/script_test_1.cc is incompatible with GCC 5
https://sourceware.org/bugzilla/show_bug.cgi?id=18663 --- Comment #5 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by H.J. Lu : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=5b2af7dd40a4f3b570aef71daf11b9dfce9a5d13 commit 5b2af7dd40a4f3b570aef71daf11b9dfce9a5d13 Author: H.J. Lu Date: Wed Jul 22 03:36:42 2015 -0700 Don't compare symbol addresses directly GCC 5 will fold symbol address comparison, assuming each symbol has a different address, which leads to abort. We should use separate functions to compare symbol address. PR gold/18663 * testsuite/Makefile.am (script_test_1_SOURCES): Set to script_test_1a.cc script_test_1b.cc. (script_test_11_r.o): Replace script_test_11.o with script_test_11a.o script_test_11b.o. (script_test_11.o): Removed. (script_test_11a.o): New. (script_test_11b.o): Likewise. * testsuite/Makefile.in: Regenerated. * testsuite/script_test_1.h: New file. * testsuite/script_test_1b.cc: Likewise. * testsuite/script_test_11.h: Likewise. * testsuite/script_test_11b.c: Likewise. * testsuite/script_test_1.cc: Renamed to ... * testsuite/script_test_1a.cc: This. Include "script_test_1.h". (main): Call check_int and check_ptr. * testsuite/script_test_11.c: Renamed to ... * testsuite/script_test_11a.c: This. Include "script_test_11.h". (main): Call ptr_equal. -- 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/18521] failing tests on fedora 22
https://sourceware.org/bugzilla/show_bug.cgi?id=18521 Bug 18521 depends on bug 18628, which changed state. Bug 18628 Summary: gold IFUNC testsuite failures with GCC 5 https://sourceware.org/bugzilla/show_bug.cgi?id=18628 What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED -- 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/18628] gold IFUNC testsuite failures with GCC 5
https://sourceware.org/bugzilla/show_bug.cgi?id=18628 H.J. Lu changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #9 from H.J. Lu --- Fixed. -- 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/18663] gold/testsuite/script_test_1.cc is incompatible with GCC 5
https://sourceware.org/bugzilla/show_bug.cgi?id=18663 H.J. Lu changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED Target Milestone|--- |2.26 --- Comment #6 from H.J. Lu --- Fixed. -- 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/18521] failing tests on fedora 22
https://sourceware.org/bugzilla/show_bug.cgi?id=18521 Bug 18521 depends on bug 18663, which changed state. Bug 18663 Summary: gold/testsuite/script_test_1.cc is incompatible with GCC 5 https://sourceware.org/bugzilla/show_bug.cgi?id=18663 What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED -- 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/18521] failing tests on fedora 22
https://sourceware.org/bugzilla/show_bug.cgi?id=18521 H.J. Lu changed: What|Removed |Added Status|REOPENED|RESOLVED Version|unspecified |2.26 (HEAD) Resolution|--- |FIXED Target Milestone|--- |2.26 --- Comment #7 from H.J. Lu --- Fixed. -- 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 #14 from H.J. Lu --- I created users/hjl/gold-test branch and added ld-elfvers/vers-gold.exp to run ld symbol version tests with gold: [hjl@gnu-6 ld]$ make check RUNTESTFLAGS="vers-gold.exp" ... Running /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/ld-elfvers/vers-gold.exp ... FAIL: vers1 FAIL: vers2 FAIL: vers3 FAIL: vers6 FAIL: vers8 ERROR: tcl error sourcing library file /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/lib/../ld-elfvers/vers.exp. cp: cannot stat 'tmpdir/vers1.so': No such file or directory cp: cannot stat 'tmpdir/vers1.so': No such file or directory while executing "exec cp $tmpdir/$srclib $tmpdir/$libname.so" (procedure "test_strip_vers_lib" line 11) invoked from within "test_strip_vers_lib "vers14" vers1.so vers14 vers1.ver vers1.dsym" (file "/export/gnu/import/git/sources/binutils-gdb/ld/testsuite/lib/../ld-elfvers/vers.exp" line 893) invoked from within "source /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/lib/../ld-elfvers/vers.exp" ("uplevel" body line 1) invoked from within "uplevel #0 source /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/lib/../ld-elfvers/vers.exp" invoked from within "catch "uplevel #0 source ${dir}/${initfile}" error" Makefile:3506: recipe for target 'check-DEJAGNU' failed make[3]: *** [check-DEJAGNU] Error 1 make[3]: Leaving directory '/export/build/gnu/binutils-gold/build-x86_64-linux/ld' Makefile:1852: recipe for target 'check-am' failed make[2]: *** [check-am] Error 2 make[2]: Leaving directory '/export/build/gnu/binutils-gold/build-x86_64-linux/ld' Makefile:1699: recipe for target 'check-recursive' failed make[1]: *** [check-recursive] Error 1 make[1]: Leaving directory '/export/build/gnu/binutils-gold/build-x86_64-linux/ld' Makefile:1854: recipe for target 'check' failed make: *** [check] Error 2 [hjl@gnu-6 ld]$ The first failure is: /export/build/gnu/binutils-gold/build-x86_64-linux/ld/../gold/ld-new -o tmpdir/vers1.so --shared --no-undefined-version tmpdir/vers1.o --version-script /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/ld-elfvers/vers1.map Executing on host: sh -c {/export/build/gnu/binutils-gold/build-x86_64-linux/ld/../gold/ld-new -o tmpdir/vers1.so --shared --no-undefined-version tmpdir/vers1.o --version-script /export/gnu/import/git/sources/binutils-gdb/ld/testsuite/ld-elfvers/vers1.map 2>&1} /dev/null ld.tmp (timeout = 300) spawn [open ...]^M /export/build/gnu/binutils-gold/build-x86_64-linux/ld/../gold/ld-new: error: symbol show_foo has undefined version /export/build/gnu/binutils-gold/build-x86_64-linux/ld/../gold/ld-new: error: symbol show_foo has undefined version FAIL: vers1 I don't think you can expect gold will always generate the working output when symbol version is used. -- 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/18687] GNU as segfaults when file ended by '.endr' or '.endm' directive with spaces at end of line
https://sourceware.org/bugzilla/show_bug.cgi?id=18687 --- Comment #2 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by Alan Modra : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=511b1657d2b251e529a7a0634325bb7d8f3af80d commit 511b1657d2b251e529a7a0634325bb7d8f3af80d Author: Alan Modra Date: Wed Jul 22 21:58:50 2015 +0930 gas line buffer handling This fixes a segfault when macro definitions end on the last line of a file, and that line isn't properly terminated with a newline. gas used to throw away the last line in cases like this, whereas in other cases gas added the missing newline. So I've also made gas consistently provide a missing newline. PR gas/18687 * input-scrub.c (input_scrub_next_buffer): Rearrange and simplify loop. Don't drop lines at end of file lacking a newline, add a newline instead. Ensure partial_size is zero whenever partial_where is NULL. Adjust buffer size for extra char. (input_scrub_push, input_scrub_begin): Adjust buffer size here too. -- 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/18687] GNU as segfaults when file ended by '.endr' or '.endm' directive with spaces at end of line
https://sourceware.org/bugzilla/show_bug.cgi?id=18687 Alan Modra changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #3 from Alan Modra --- Fixed -- 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/18705] handle extern protected data
https://sourceware.org/bugzilla/show_bug.cgi?id=18705 Szabolcs Nagy changed: What|Removed |Added Assignee|unassigned at sourceware dot org |nszabolcs at gmail 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
Compilation fails on Darwin 11.4.2 in darwin-nat.c
cc1: warnings being treated as errors darwin-nat.c: In function ‘darwin_ptrace’: darwin-nat.c:259: warning: format ‘%x’ expects type ‘unsigned int’, but argument 5 has type ‘caddr_t’ darwin-nat.c: In function ‘darwin_resume’: darwin-nat.c:839: warning: format ‘%x’ expects type ‘unsigned int’, but argument 4 has type ‘long int’ darwin-nat.c: In function ‘cancel_breakpoint’: darwin-nat.c:1065: warning: format ‘%x’ expects type ‘unsigned int’, but argument 3 has type ‘long int’ darwin-nat.c: In function ‘_initialize_darwin_inferior’: darwin-nat.c:2174: warning: format ‘%lx’ expects type ‘long unsigned int’, but argument 3 has type ‘mach_port_t’ patch attached, although I don't know if the change for line 259 and 2174 are the right approach. -- Joshua Kordani LSA Autonomy diff --git a/gdb/darwin-nat.c b/gdb/darwin-nat.c index e1acc05..ebfa98e 100644 --- a/gdb/darwin-nat.c +++ b/gdb/darwin-nat.c @@ -254,8 +254,8 @@ darwin_ptrace (const char *name, if (ret == -1 && errno == 0) ret = 0; - inferior_debug (4, _("ptrace (%s, %d, 0x%x, %d): %d (%s)\n"), - name, pid, arg3, arg4, ret, + inferior_debug (4, _("ptrace (%s, %d, 0x%lx, %d): %d (%s)\n"), + name, pid, (unsigned long) arg3, arg4, ret, (ret != 0) ? safe_strerror (errno) : _("no error")); return ret; } @@ -835,7 +835,7 @@ darwin_resume (ptid_t ptid, int step, enum gdb_signal signal) struct inferior *inf; inferior_debug -(2, _("darwin_resume: pid=%d, tid=0x%x, step=%d, signal=%d\n"), +(2, _("darwin_resume: pid=%d, tid=0x%ld, step=%d, signal=%d\n"), ptid_get_pid (ptid), ptid_get_tid (ptid), step, signal); if (signal == GDB_SIGNAL_0) @@ -1061,7 +1061,7 @@ cancel_breakpoint (ptid_t ptid) pc = regcache_read_pc (regcache) - gdbarch_decr_pc_after_break (gdbarch); if (breakpoint_inserted_here_p (get_regcache_aspace (regcache), pc)) { - inferior_debug (4, "cancel_breakpoint for thread 0x%x\n", + inferior_debug (4, "cancel_breakpoint for thread 0x%ld\n", ptid_get_tid (ptid)); /* Back up the PC if necessary. */ @@ -2170,7 +2170,7 @@ _initialize_darwin_inferior (void) add_target (darwin_ops); - inferior_debug (2, _("GDB task: 0x%lx, pid: %d\n"), mach_task_self (), + inferior_debug (2, _("GDB task: 0x%lx, pid: %d\n"), (unsigned long) mach_task_self (), getpid ()); add_setshow_zuinteger_cmd ("darwin", class_obscure, ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils
[Bug binutils/18708] New: integer overflow in readelf and invalid shift in objdump
https://sourceware.org/bugzilla/show_bug.cgi?id=18708 Bug ID: 18708 Summary: integer overflow in readelf and invalid shift in objdump Product: binutils Version: 2.25 Status: NEW Severity: minor Priority: P2 Component: binutils Assignee: unassigned at sourceware dot org Reporter: xiedingbao at gmail dot com Target Milestone: --- Created attachment 8450 --> https://sourceware.org/bugzilla/attachment.cgi?id=8450&action=edit inputs to trigger undefined behavior I found several undefined behavior in readelf and objdump after running afl-fuzzer for a while. To reproduce them, you need to build the source code with compiler flag '-fsanitize=undefined'. Then execute command readelf -a ubs/readelf-1 readelf -a ubs/readelf-2 readelf -a ubs/readelf-3 objdump -S ubs/objdump You will see the following error information: readelf.c:1543:39: runtime error: negation of -9223372036854775808 cannot be represented in type 'bfd_signed_vma' (aka 'long'); cast to an unsigned type to negate this value to itself readelf.c:1555:36: runtime error: negation of -9223372036854775808 cannot be represented in type 'bfd_signed_vma' (aka 'long'); cast to an unsigned type to negate this value to itself readelf.c:8374:39: runtime error: signed integer overflow: 8521 - -9223372036854775112 cannot be represented in type 'long' i386-dis.c:15277:26: runtime error: left shift of 136 by 24 places cannot be represented in type 'int' i386-dis.c:15281:26: runtime error: left shift of 136 by 24 places cannot be represented in type 'int' -- 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 #15 from Sriraman Tallam --- On Tue, Jul 21, 2015 at 5:35 PM, ccoutant at gmail dot com wrote: > https://sourceware.org/bugzilla/show_bug.cgi?id=18703 > > --- Comment #6 from Cary Coutant --- >>Another usage of the '.symver' directive is: >> .symver NAME, NAME2@@NODENAME >>In this case, the symbol NAME must exist and be defined within the >> file being assembled. It is similar to NAME2@NODENAME. The difference >> is NAME2@@NODENAME will also be used to resolve references to NAME2 by >> the linker. >> >> Linker shouldn't use foo@VERS_1.1 to resolve references to foo. > > Yes, I understand that much. The example given uses: > >.symver foo, foo@VERS_1.1 > > where the original symbol and the versioned symbol both have the same > name. This produces two symbols in the .o file named "foo": > > T foo > T foo@VERS_1.1 > > With the version script, gold sees the first of those (plain "foo") > and makes it the default version (as, I think, it should). The second > one is just seen as a second declaration, but it's already been marked > the default. > > If I change Sri's example to use ".symver orig_foo, foo@VERS_1.1" and > rename "foo" to "orig_foo", I get the following in the dynamic symbol > table: > > 6: 072511 FUNCGLOBAL DEFAULT 12 foo@VERS_1.1 > 7: 072511 FUNCGLOBAL DEFAULT 12 orig_foo > > If it's the "@@" vs. "@" that's causing the problem, then there's your fix. H.J. : Can we use Cary's idea to fix libgcc/config/i386/cpuinfo.c to make libgcc_s.so.1 do the right thing with gold too until this issue is resolved in some manner? Thanks Sri > > -cary > > -- > You are receiving this mail because: > You reported the bug. -- 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 #16 from H.J. Lu --- (In reply to Sriraman Tallam from comment #15) > > H.J. : Can we use Cary's idea to fix libgcc/config/i386/cpuinfo.c to > make libgcc_s.so.1 do the right thing with gold too until this issue > is resolved in some manner? > You can pass -fuse-ld=bfd to build libgcc_s.so.1 on Linux: diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux index 11bb46e..12aab16 100644 --- a/libgcc/config/i386/t-linux +++ b/libgcc/config/i386/t-linux @@ -3,4 +3,8 @@ # t-slibgcc-elf-ver and t-linux SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver +# Work around gold bug: +# https://sourceware.org/bugzilla/show_bug.cgi?id=18703 +SHLIB_LDFLAGS += -fuse-ld=bfd + HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER Or you have to make sure those symbols in both libgcc.a and libgcc.so.1 are correct. -- 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/18631] avx512: wrong memory size for vcvtt?ps2u?qq instructions with data broadcast
https://sourceware.org/bugzilla/show_bug.cgi?id=18631 --- Comment #9 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by H.J. Lu : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=20c2a615876bdf0d5dc8e2db86eea1312d9dc9b8 commit 20c2a615876bdf0d5dc8e2db86eea1312d9dc9b8 Author: H.J. Lu Date: Wed Jul 22 13:24:20 2015 -0700 Fix memory operand size for vcvtt?ps2u?qq instructions When disassembling AVX512 vcvtt?ps2u?q instructions with data broadcasting enabled, memory operand size should be DWORD. gas/testsuite/ PR binutils/18631 * gas/i386avx512dq-intel.d: Replace "QWORD" with "DWORD" in vcvtt?ps2u?qq instructions disassembly regexes. Add disassembly regex for new test. * gas/i386/avx512dq.d: Likewise. * gas/i386/avx512dq_vl-intel.d: Likewise. * gas/i386/avx512dq_vl.d: Likewise. * gas/i386/x86-64-avx512dq-intel.d: Likewise. * gas/i386/x86-64-avx512dq.d: Likewise. * gas/i386/x86-64-avx512dq_vl-intel.d: Likewise. * gas/i386/x86-64-avx512dq_vl.d: Likewise. * gas/i386/avx512dq.s: Add new test for Intel syntax with memory operand and broadcasting enabled. * gas/i386/avx512dq_vl.s: Likewise. * gas/i386/x86-64-avx512dq.s: Likewise. * gas/i386/x86-64-avx512dq_vl.s: Likewise. opcodes/ PR binutils/18631 * i386-dis-evex.h (EVEX_W_0F78_P_2): Replace "EXxmmq" with "EXEvexHalfBcstXmmq" for the second operand. (EVEX_W_0F79_P_2): Likewise. (EVEX_W_0F7A_P_2): Likewise. (EVEX_W_0F7B_P_2): Likewise. -- 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/18631] avx512: wrong memory size for vcvtt?ps2u?qq instructions with data broadcast
https://sourceware.org/bugzilla/show_bug.cgi?id=18631 H.J. Lu changed: What|Removed |Added Status|ASSIGNED|RESOLVED Component|gas |binutils Resolution|--- |FIXED --- Comment #10 from H.J. Lu --- Fixed. -- 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 #17 from Sriraman Tallam --- On Wed, Jul 22, 2015 at 11:24 AM, hjl.tools at gmail dot com wrote: > https://sourceware.org/bugzilla/show_bug.cgi?id=18703 > > --- Comment #16 from H.J. Lu --- > (In reply to Sriraman Tallam from comment #15) >> >> H.J. : Can we use Cary's idea to fix libgcc/config/i386/cpuinfo.c to >> make libgcc_s.so.1 do the right thing with gold too until this issue >> is resolved in some manner? >> > > You can pass -fuse-ld=bfd to build libgcc_s.so.1 on Linux: > > diff --git a/libgcc/config/i386/t-linux b/libgcc/config/i386/t-linux > index 11bb46e..12aab16 100644 > --- a/libgcc/config/i386/t-linux > +++ b/libgcc/config/i386/t-linux > @@ -3,4 +3,8 @@ > # t-slibgcc-elf-ver and t-linux > SHLIB_MAPFILES = libgcc-std.ver $(srcdir)/config/i386/libgcc-glibc.ver > > +# Work around gold bug: > +# https://sourceware.org/bugzilla/show_bug.cgi?id=18703 > +SHLIB_LDFLAGS += -fuse-ld=bfd > + > HOST_LIBGCC2_CFLAGS += -mlong-double-80 -DUSE_ELF_SYMVER > > Or you have to make sure those symbols in both libgcc.a and libgcc.so.1 > are correct. Thanks this works. However, i ran into another problem. Our GCC build does not use -fvisibility=hidden to build libgcc.a. So, __cpu_indicator_init is GLOBAL in libgcc.a and not LOCAL. Which means any shared object that references __cpu_indicator_init will still create a PLT entry for it and fail at run-time. This is not directly related to this bug but thought I would mention it here while we are fixing this problem. Thanks Sri > > -- > You are receiving this mail because: > You reported the bug. -- 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 #18 from Cary Coutant --- Another change you can make is to remove "foo" from the version script entirely. If foo.map is just this: VERS_1.1 { }; then both linkers will put "foo@VERS_1.1" into the dynamic symbol table (no default version). If you're going to use .symver to set the version, there's really no point in also using a version script to do the same thing. It just sets up a conflicting situation where different linkers might give different behaviors. -cary -- 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/18708] integer overflow in readelf and invalid shift in objdump
https://sourceware.org/bugzilla/show_bug.cgi?id=18708 Alan Modra changed: What|Removed |Added CC||amodra at gmail dot com --- Comment #1 from Alan Modra --- I believe the first two readelf ubsan errors have been fixed both in master binutils and on the 2.25 branch. The third readelf ubsan error is on this line section.sh_size = ftell (file) - section.sh_offset; ftell returns a signed type, and section.sh_offset is also a signed type, thus the ubsan error about signed integer overflow. I don't consider this sort of "error" worth fixing by adding casts or changing the type of sh_offset, since it was induced by a fuzzed binary. The i386-dis.c ubsan errors are technically correct, but in reality just so much useless noise. -- 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/18708] integer overflow in readelf and invalid shift in objdump
https://sourceware.org/bugzilla/show_bug.cgi?id=18708 --- Comment #2 from cvs-commit at gcc dot gnu.org --- The master branch has been updated by Alan Modra : https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=070fe95d07c78349f0c8f0fa90aeb92d05248483 commit 070fe95d07c78349f0c8f0fa90aeb92d05248483 Author: Alan Modra Date: Thu Jul 23 12:41:38 2015 +0930 Fix ubsan signed integer overflow IMO a fairly useless warning in this case, but technically correct. PR 18708 * i386-dis.c (get64): Avoid signed integer overflow. -- 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/18708] integer overflow in readelf and invalid shift in objdump
https://sourceware.org/bugzilla/show_bug.cgi?id=18708 Alan Modra changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #3 from Alan Modra --- Fix the "error" anyway.. -- 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
Re: Compilation fails on Darwin 11.4.2 in darwin-nat.c
> On 22 Jul 2015, at 19:41, Joshua Kordani wrote: > > cc1: warnings being treated as errors > darwin-nat.c: In function ‘darwin_ptrace’: > darwin-nat.c:259: warning: format ‘%x’ expects type ‘unsigned int’, but > argument 5 has type ‘caddr_t’ > darwin-nat.c: In function ‘darwin_resume’: > darwin-nat.c:839: warning: format ‘%x’ expects type ‘unsigned int’, but > argument 4 has type ‘long int’ > darwin-nat.c: In function ‘cancel_breakpoint’: > darwin-nat.c:1065: warning: format ‘%x’ expects type ‘unsigned int’, but > argument 3 has type ‘long int’ > darwin-nat.c: In function ‘_initialize_darwin_inferior’: > darwin-nat.c:2174: warning: format ‘%lx’ expects type ‘long unsigned int’, > but argument 3 has type ‘mach_port_t’ > > > patch attached, although I don't know if the change for line 259 and 2174 are > the right approach. Hello, the patch looks correct, but the right mailing list is gdb-patc...@sourceware.org and you need a corresponding changelog entry. Tristan. ___ bug-binutils mailing list bug-binutils@gnu.org https://lists.gnu.org/mailman/listinfo/bug-binutils