diff options
author | Thomas Schwinge <thomas@schwinge.name> | 2010-11-08 07:24:22 +0100 |
---|---|---|
committer | Thomas Schwinge <thomas@schwinge.name> | 2010-11-08 07:24:22 +0100 |
commit | 0b169a4afd93adb121d99c027ca1c5d484b38230 (patch) | |
tree | 7ce788516bd2381112aa8a3a06045573042aef63 /open_issues/binutils/testsuite.mdwn | |
parent | 49e004f04123e78c076d2ffe0922bc4cd7356414 (diff) |
open_issues/binutils_testsuite -> open_issues/binutils/testsuite
Diffstat (limited to 'open_issues/binutils/testsuite.mdwn')
-rw-r--r-- | open_issues/binutils/testsuite.mdwn | 148 |
1 files changed, 148 insertions, 0 deletions
diff --git a/open_issues/binutils/testsuite.mdwn b/open_issues/binutils/testsuite.mdwn new file mode 100644 index 00000000..82bd19b1 --- /dev/null +++ b/open_issues/binutils/testsuite.mdwn @@ -0,0 +1,148 @@ +[[!meta copyright="Copyright © 2010 Free Software Foundation, Inc."]] + +[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable +id="license" text="Permission is granted to copy, distribute and/or modify this +document under the terms of the GNU Free Documentation License, Version 1.2 or +any later version published by the Free Software Foundation; with no Invariant +Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license +is included in the section entitled [[GNU Free Documentation +License|/fdl]]."]]"""]] + +[[!tag open_issue_binutils]] + +Here's a log of a binutils build and testsuite run; this is from +a0fc8b2145396563ff60761d8b4ff1d3d3a92c41 (2010-11-07) +[[sources|source_repositories/binutils]], run on kepler.SCHWINGE and grubber. + + $ export LC_ALL=C + $ ../hurd/configure --prefix="$PWD".install 2>&1 | tee log_build + [...] + $ make SHELL=/bin/bash 2>&1 | tee log_build_ + [...] + +(kepler.SCHWINGE defaults to using /bin/sh for libtool, grubber to /bin/bash; +thus harmonized.) + +On grubber, this takes roughly 50 minutes. + +x86 GNU/Linux and GNU/Hurd's configurations are [[slightly +different|binutils]], thus mask out most of the differences that are due to +GNU/Linux defining `-DTRAD_CORE`, `-DHAVE_i386linux_vec` +(`-DSELECT_VECS='[...],&i386linux_vec[...]`), `-DHAVE_i386pei_vec` +(`-DSELECT_VECS='[...],&i386pei_vec[...]`). + + $ diff -wu <(ssh kepler.SCHWINGE 'cd tmp/source/binutils/hurd.build/ && cat log_build* | sed -e "s%${PWD}%[...]%g" -e s%-DTRAD_CORE%% -e s%-DHAVE_i386linux_vec%% -e s%-DHAVE_i386pei_vec%% -e s%-DSELECT_VECS=\\\('\\\''\\\?\\\)\&bfd_elf32_i386_vec,\&i386linux_vec,\&i386pei_vec,\&bfd_elf32_little_generic_vec,\&bfd_elf32_big_generic_vec'\\\''\\\?%-DSELECT_VECS=\\\1\\\&bfd_elf32_i386_vec,\\\&bfd_elf32_little_generic_vec,\\\&bfd_elf32_big_generic_vec\\\1%') <(ssh grubber 'cd tmp/binutils/hurd.build/ && cat log_build* | sed "s%${PWD}%[...]%g"') > open_issues/binutils/testsuite/log_build-diff + +[[log_build-diff]]. + + $ make -k check + [...] + +On grubber, this takes roughly 45 minutes. + + $ ssh kepler.SCHWINGE 'cd tmp/source/binutils/ && cat hurd.build/*/*.sum hurd.build/*/*/*.sum | sed "s%${PWD}%[...]%g"' > open_issues/binutils/testsuite/sum_linux + $ ssh grubber 'cd tmp/binutils/ && cat hurd.build/*/*.sum hurd.build/*/*/*.sum | sed "s%${PWD}%[...]%g"' > open_issues/binutils/testsuite/sum_hurd + +Comparing the results files, [[sum_linux]] to [[sum_hurd]]: + + $ diff -u -F ^Running open_issues/binutils/testsuite/sum_linux open_issues/binutils/testsuite/sum_hurd + --- open_issues/binutils/testsuite/sum_linux 2010-11-08 06:45:04.000000000 +0100 + +++ open_issues/binutils/testsuite/sum_hurd 2010-11-08 06:45:18.000000000 +0100 + @@ -1,5 +1,5 @@ + -Test Run By thomas on Sun Nov 7 20:20:33 2010 + -Native configuration is i686-pc-linux-gnu + +Test Run By tschwinge on Sun Nov 7 21:03:30 2010 + +Native configuration is i686-unknown-gnu0.3 + + === binutils tests === + + @@ -114,8 +114,8 @@ Running [...]/hurd/binutils/testsuite/bi + + # of expected passes 83 + # of unsupported tests 2 + -Test Run By thomas on Sun Nov 7 20:20:55 2010 + -Native configuration is i686-pc-linux-gnu + +Test Run By tschwinge on Sun Nov 7 21:10:31 2010 + +Native configuration is i686-unknown-gnu0.3 + + === ld tests === + + @@ -295,9 +295,9 @@ Running [...]/hurd/ld/testsuite/ld-elf/e + PASS: preinit array + PASS: init array + PASS: fini array + -PASS: static preinit array + -PASS: static init array + -PASS: static fini array + +XFAIL: static preinit array + +XFAIL: static init array + +XFAIL: static fini array + Running [...]/hurd/ld/testsuite/ld-elf/exclude.exp ... + PASS: ld link shared library + PASS: ld export symbols from archive + @@ -551,8 +551,8 @@ Running [...]/hurd/ld/testsuite/ld-elfwe + PASS: ELF DSO weak func last DSO + PASS: ELF weak func first + PASS: ELF weak func last + -PASS: ELF weak func first DSO + -PASS: ELF weak func last DSO + +XFAIL: ELF weak func first DSO + +XFAIL: ELF weak func last DSO + PASS: ELF DSO weak data first + PASS: ELF DSO weak data last + PASS: ELF DSO weak data first DSO + @@ -563,10 +563,10 @@ Running [...]/hurd/ld/testsuite/ld-elfwe + PASS: ELF weak data last + PASS: ELF weak data first common + PASS: ELF weak data last common + -PASS: ELF weak data first DSO + -PASS: ELF weak data last DSO + -PASS: ELF weak data first DSO common + -PASS: ELF weak data last DSO common + +XFAIL: ELF weak data first DSO + +XFAIL: ELF weak data last DSO + +XFAIL: ELF weak data first DSO common + +XFAIL: ELF weak data last DSO common + PASS: ELF DSO small bar (size) + PASS: ELF DSO foo with small bar (size) + PASS: ELF DSO big bar (size) + @@ -871,13 +871,13 @@ Running [...]/hurd/ld/testsuite/ld-xtens + + === ld Summary === + + -# of expected passes 616 + -# of expected failures 8 + +# of expected passes 607 + +# of expected failures 17 + # of untested testcases 6 + /media/data[...]/hurd.build/ld/ld-new 2.21.51.20101107 + + -Test Run By thomas on Sun Nov 7 20:20:38 2010 + -Native configuration is i686-pc-linux-gnu + +Test Run By tschwinge on Sun Nov 7 21:05:14 2010 + +Native configuration is i686-unknown-gnu0.3 + + === gas tests === + + +# Analysis + +## <a name="static">`FAIL: static [...]`</a> + +The testsuite isn't prepared for using `crt0.o` instead of `crt1.o` depending +on whether a static or dynamic executable is created. Documented in +`ld/configure.host`. Perhaps we should finally rewrite this messy code in +glibc to avoid this difference... + +## <a name="64ksec">`FAIL: ld-elf/64ksec`</a> + +On the idle grubber, this one takes a few minutes wall time to complete +successfully ([[I/O system weakness|performance/io_system/binutils_ld_64ksec]], +so assuming +some system load variation, the testsuite's timeout may trigger. + +## <a name="weak">`FAIL: ELF weak [...]`</a> + +[[I|tschwinge]] suppose this is due to us having an override w.r.t. weak symbol +handling in glibc, needed for our external [[libpthread]]. TODO: document +properly. |