V6 [PATCH] ld: Add --export-dynamic-symbol and --export-dynamic-symbol-list

Nick Clifton nickc@redhat.com
Wed Jun 3 10:51:30 GMT 2020


Hi H.J. 

> Here is the rebased patch.  Nick, Alan, is it OK for master?  Thanks.

Short version: Approved - please apply.

Long version: The patch looks mostly fine to me.  But there is a problem: 
some regressions in the linker testsuite for various targets:

  Checking Binutils in: mips-sgi-irix6 ... 
    LD REGRESSION: -u --export-dynamic-symbol foo archive 
    LD REGRESSION: -u --export-dynamic-symbol "f*" archive 
    LD REGRESSION: -u --export-dynamic-symbol-list foo bar archive
    LD REGRESSION: -u --export-dynamic-symbol-list fstar archive 

The failures here all look like:

  extra regexps in ld/testsuite/ld-dynamic/export-dynamic-symbol-2.d starting with "^[0-9a-f]+ T +bar$"

I suspect that this is a target that can be skipped/xfailed.

Next:

  Checking Binutils in: mn10300-elf ... 
    LD REGRESSION: --export-dynamic-symbol foo archive  
    LD REGRESSION: -u --export-dynamic-symbol foo archive 
    LD REGRESSION: -u --export-dynamic-symbol "f*" archive 

These failures are from:

  ./ld-new: tmpdir/dump: error: PHDR segment not covered by LOAD segment

However this failure is showing up for a lot more tests than just your new ones,
so please ignore.  It is obviously a mn10300 specific problem.

Finally:

  Checking Binutils in: sanitize-undefined ... LD: 400  done
    LD REGRESSION: Build libdl2e.so with --export-dynamic-symbol=foo 
    LD REGRESSION: Build libdl2f.so with --dynamic-list=dlempty.list and
    LD REGRESSION: Build libdl2g.so with --export-dynamic-symbol-list=dl2.list 
    LD REGRESSION: Build libdl2h.so with --dynamic-list=dlempty.list and
    LD REGRESSION: Build libdl2i.so with -Bsymbolic and
    LD REGRESSION: Build libdl2j.so with -Bsymbolic and
    LD REGRESSION: Build libdl2k.so with --export-dynamic-symbol-list=dl2.list and

Which are all due to:

  bfd/elf64-x86-64.c:3233:8: runtime error: member access within null pointer of type 'struct elf_x86_link_hash_entry'

I remember trying to look into this before and getting nowhere.  It is however 
another generic problem for linker tests run with the undefined sanitizer enabled
so it is not something that should hold up your patch.

Cheers
  Nick



More information about the Binutils mailing list