This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [PATCH 1/2] Update _bfd_elf_symbol_refs_local_p/add UNDEFINED_WEAK_RESOLVED_TO_ZERO
On 10/9/17, H.J. Lu <hjl.tools@gmail.com> wrote:
> On 10/9/17, H.J. Lu <hjl.tools@gmail.com> wrote:
>> On 10/9/17, Alan Modra <amodra@gmail.com> wrote:
>>> On Mon, Oct 09, 2017 at 04:01:39AM -0700, H.J. Lu wrote:
>>>> On 10/9/17, Alan Modra <amodra@gmail.com> wrote:
>>>> > On Sun, Oct 08, 2017 at 09:08:30PM -0700, H.J. Lu wrote:
>>>> >> On 10/8/17, H.J. Lu <hjl.tools@gmail.com> wrote:
>>>> >> > You are right. This only works with
>>>> >> >
>>>> >> > CHECK_RELOCS_AFTER_OPEN_INPUT=yes
>>>> >> >
>>>> >> > which should also speedup check_relocs and GC. It should be set
>>>> >> > for all ELF targets.
>>>> >> >
>>>> >>
>>>> >> Here is a patch which does that.
>>>> >
>>>> > I agree in principle, but I'd like to see some test results first.
>>>> > Preferably with native targets where you can get access to hardware,
>>>> > and with cross-compiler+libc installed where not, so at least most of
>>>> > the testsuite is compiled and linked.
>>>>
>>>> I can prepare a patch and test it with cross binutils. But I need help
>>>> test non-x86 native binutils. I can fix any issues if I can reproduce
>>>> them
>>>> on x86.
>>>
>>> I'm willing to help out in the conversion too, but the patch shouldn't
>>> go in until the huge number of arm and aarch64 fails are investigated.
>>> Besides arm and aarch64, I see these:
>>>
>>> cris-elf +FAIL: ld-cris/pic-gc-72
>>> cris-elf +FAIL: ld-cris/pic-gc-73
>>> cris-elf +FAIL: ld-cris/tls-gc-68
>>> cris-elf +FAIL: ld-cris/tls-gc-69
>>> cris-elf +FAIL: ld-cris/tls-gc-70
>>> cris-elf +FAIL: ld-cris/tls-gc-71
>>> cris-elf +FAIL: ld-cris/tls-gc-75
>>> cris-elf +FAIL: ld-cris/tls-gc-79
>>> frv-linux -FAIL: ld-elf/pr13177
>>> frv-linux -FAIL: --gc-sections with multiple debug sections for a
>>> function
>>> section
>>> m68k-elf -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--undefined)
>>> m68k-elf -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--require-defined)
>>> m68k-elf -FAIL: PR ld/21233 dynamic symbols with section GC (EXTERN)
>>> m68k-linux -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--undefined)
>>> m68k-linux -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--require-defined)
>>> m68k-linux -FAIL: PR ld/21233 dynamic symbols with section GC (EXTERN)
>>> mmix +FAIL: ld-mmix/bpo-10
>>> mmix +FAIL: ld-mmix/bpo-22
>>> mn10300-elf +FAIL: ld-elf/pr12851
>>> mn10300-elf -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--undefined)
>>> mn10300-elf -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--require-defined)
>>> mn10300-elf -FAIL: PR ld/21233 dynamic symbols with section GC (EXTERN)
>>> mn10300-elf +FAIL: --gc-sections with multiple debug sections for a
>>> function section
>>> nios2-linux -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--undefined)
>>> nios2-linux -FAIL: PR ld/21233 dynamic symbols with section GC
>>> (--require-defined)
>>> nios2-linux -FAIL: PR ld/21233 dynamic symbols with section GC (EXTERN)
>>> powerpc64-linux +FAIL: PR ld/13195
>>> powerpc64-linux +FAIL: Build rdynamic-1
>>> powerpc64-linux +FAIL: Build dynamic-1
>>> score-elf +FAIL: PR ld/14170
>>> score-elf +FAIL: Build pr17068.so
>>> score-elf +FAIL: pr17068 link --as-needed lib in group
>>> score-elf +FAIL: ld link shared library
>>> score-elf +FAIL: PROVIDE_HIDDEN test (auxiliary shared object)
>>> score-elf +FAIL: pr20022
>>> score-elf +FAIL: undefined symbols in shared lib
>>>
>>
>> I will take a look at them.
>>
>
> I fixed most of arm and aarch64 regressions on users/hjl/check_relocs
> branch.
> I will investigate the rest of them later.
All arm regressions are gone and these are passed now:
FAIL: PR ld/21233 dynamic symbols with section GC (EXTERN)
FAIL: PR ld/21233 dynamic symbols with section GC (--require-defined)
FAIL: PR ld/21233 dynamic symbols with section GC (--undefined)
--
H.J.