This is the mail archive of the
binutils@sourceware.org
mailing list for the binutils project.
Re: [0/9] Nios II port, introduction
On 01/24/2013 01:52 PM, Joseph S. Myers wrote:
Could you describe how this port has been tested? In particular, do you
get clean test results (for the binutils, gas and ld testsuites) for at
least one Nios II target, for both 32-bit and 64-bit hosts? (It's common
for assembler ports to have issues with e.g. sign-extension of operands
that show up only for one of 32-bit and 64-bit hosts, hence it being a
good idea to test any new port for both - as well as making sure it builds
on both without any -Werror errors from recent GCC, since compiler
warnings can also depend on whether the host is 32-bit or 64-bit.)
I tested the current set of patches using our internal build
configurations with the binutils component replaced to use a mainline
checkout instead of our internal development branch. It was
cross-compiled from x86 GNU/Linux host with an older (4.3.3) version of
32-bit host GCC. I did not realize that it was expected/required to
test with both 32-bit and 64-bit hosts, but I can do that, once I figure
out how. :-S Anyway, essentially the same set of patches on our
development branch has also been tested on a 32-bit x86 Windows host.
All of this applies to both the ELF and GNU/Linux targets. In both
cases the testing uses hardware targets rather than a simulator.
The gas and binutils test results are clean, but there are a handful of
failures remaining in the ld testsuite.
For the nios2-elf toolchain:
FAIL: ld-elf/merge
FAIL: LTO 6
FAIL: PR ld/12942 (3)
FAIL: LTO 3 symbol
FAIL: LTO 9 symbol
FAIL: S-records with constructors
For the nios2-linux-gnu toolchain:
FAIL: Common symbol override test
FAIL: ld-elf/merge
FAIL: PR ld/12982
FAIL: PR ld/12942 (3)
FAIL: S-records with constructors
As I noted in my comments for part 8 of the patch series, the LTO
failures in the ELF toolchain are due to the testcases assuming that the
default linker options provide a hosted configuration, which is not the
case for that target. I haven't yet had time to triage the remaining
failures, but I noted that the non-LTO-related ones also failed with the
old 2008-era patch set against binutils 2.17.50, so they've been around
approximately forever and don't seem very serious.
I've also tested these patches on the GCC, GDB, GLIBC, etc testsuites in
conjunction with the not-yet-posted ports for those components, and the
results seem comparable to those for other targets we routinely test;
there are some scattered bugs and bad test cases, but things generally
seem to work pretty well.
-Sandra