[PATCH] RISC-V: Disable shared library support for embedded elf.

Jim Wilson jimw@sifive.com
Sat Jan 6 02:07:00 GMT 2018

On Fri, Jan 5, 2018 at 2:31 PM, Jim Wilson <jimw@sifive.com> wrote:
> This was tested with riscv{32,64}-{elf,linux} targets on check-binutils,
> check-gas, and check-ld.  There were no changes to the linux results.  The
> elf ld results dropped by over 150 and the other testsuites had no change.

I goofed here.  I originally wrote a patch for the binutils-2.29
branch and carefully tested it.  I then had to rewrite it as the
check_shared_library_support routine was changed, and no longer has an
explicit list of non-shared targets.  I was a little less careful in
testing the rewrite.  I saw the failures drop by over 150 and assumed
it worked.  But in fact I have 4 regressions for the embedded elf

There is one riscv specific test using -shared unnecessarily which is
easy to fix.

There are two riscv specific tests using -shared deliberately, I need
to conditionalize them on check_shared_library_support which is easy.

There is one generic elf test for --eh-frame-hdr that is failing.
This is ld-elf/eh-frame-hdr.d, and this is a little more complicated.
The --eh-frame-hdr option only exists if shared libraries are
supported, but the test is being run unconditionally.  I see that it
has an explicit list of xfail targets which is incomplete and
unscalable.  It should be run from shared.exp instead of from elf.exp,
as shared.exp calls check_shared_library_support.  However, elf.exp
has a glob on *.d, which means the test needs to be renamed and then
fit into shared.exp somehow which may require a little rewriting.


More information about the Binutils mailing list