[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.
From: |
hjl.tools at gmail dot com |
Subject: |
[Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1 |
Date: |
Wed, 14 Feb 2018 14:18:30 +0000 |
https://sourceware.org/bugzilla/show_bug.cgi?id=13671
--- Comment #19 from H.J. Lu <hjl.tools at gmail dot com> ---
(In reply to Rainer Orth from comment #18)
> > --- Comment #17 from H.J. Lu <hjl.tools at gmail dot com> ---
> > Please try users/hjl/solaris branch at
> >
> > https://github.com/hjl-tools/binutils-gdb
>
> Any reason not to keep that branch in the binutils-git repo on
> sourceware? That's where I looked initially, confusing the hell out of
> me ;-)
It is easier to update a branch on github.
> Fortunately, a lot of failures are gone, but still a couple remain, all
> from g++.dg/tree-prof and gcc.dg/tree-prof tests, which SEGV, e.g.
>
> FAIL: gcc.dg/tree-prof/crossmodule-indircall-1.c execution,
> -fprofile-generate -D_PROFILE_GENERATE
>
> Thread 2 received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 1 (LWP 1)]
> 0x080491c9 in __gcov_indirect_call_profiler_v2 (value=151663852,
> cur_func=0x8048f10 <add>)
> at /vol/gcc/src/hg/trunk/local/libgcc/libgcov-profiler.c:335
> 335 if (cur_func == __gcov_indirect_call_callee
> => 0x8049019 <__gcov_indirect_call_profiler_v2+41>: cmp %edx,(%eax)
> (gdb) p/x $eax
> $1 = 0x66caa44
>
> That address is indeed unmapped and below the text segment.
>
> (gdb) where
> #0 0x080491c9 in __gcov_indirect_call_profiler_v2 (value=151663852,
> cur_func=0x8048f10 <add>)
> at /vol/gcc/src/hg/trunk/local/libgcc/libgcov-profiler.c:335
> #1 0x08048f41 in add ()
> #2 0x08048e5c in main ()
>
> elfdump -r complains about the executable:
>
> crossmodule-indircall-1.x01: bad relocation entry: R_386_TLS_TPOFF:
> relocation requires symbol
> crossmodule-indircall-1.x01: bad relocation entry: R_386_TLS_TPOFF:
> relocation requires symbol
What doe Solaris ld generate?
> [3] R_386_TLS_TPOFF 0x804d22c 0x4 .got
> [4] R_386_TLS_TPOFF 0x804d230 0 .got
> [11] R_386_JMP_SLOT 0x804d1c8 0x80489f6 .got ___tls_get_addr
>
> It happens even when I build without -flto:
>
> $ ld -m elf_i386_sol2 -o crossmodule-indircall-1.x01 /usr/lib/crt1.o
> crossmodule-indircall-1.o crossmodule-indircall-1a.o -lm -lgcov -lgcc -lc
> /usr/lib/crtn.o
>
> Input files at
>
>
> https://www.cebitec.uni-bielefeld.de/~ro/files/crossmodule-indircall-1.tar.
> bz2
--
You are receiving this mail because:
You are on the CC list for the bug.
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, (continued)
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, hjl.tools at gmail dot com, 2018/02/08
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, ro at CeBiTec dot Uni-Bielefeld.DE, 2018/02/09
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, hjl.tools at gmail dot com, 2018/02/10
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, ro at CeBiTec dot Uni-Bielefeld.DE, 2018/02/11
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, ro at gcc dot gnu.org, 2018/02/11
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, hjl.tools at gmail dot com, 2018/02/11
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, ro at CeBiTec dot Uni-Bielefeld.DE, 2018/02/12
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, hjl.tools at gmail dot com, 2018/02/12
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, hjl.tools at gmail dot com, 2018/02/12
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, ro at CeBiTec dot Uni-Bielefeld.DE, 2018/02/14
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1,
hjl.tools at gmail dot com <=
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, ro at CeBiTec dot Uni-Bielefeld.DE, 2018/02/14
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, hjl.tools at gmail dot com, 2018/02/14
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, ro at CeBiTec dot Uni-Bielefeld.DE, 2018/02/15
- [Bug ld/13671] gld creates i386 relocations not supported by Solaris ld.so.1, hjl.tools at gmail dot com, 2018/02/17