Hi Gaius,
> Many thanks for all the feedback/bugs/patches.
> I've been working through some of these. The parallel build is now done.
thank you for the blazingly quick fixes.
>> * The mc output is far too verbose right now: this isn't of interest to
>> anyone but gm2 developers ;-)
>
> added --quiet to all invocations of mc on master - will apply to 9.1.0
> soon.
Perfect.
>> With the missing gm2l worked around as above, my i386-pc-solaris2.11
>> testresults are way better now:
>>
>> === gm2 Summary for unix ===
>>
>> # of expected passes 11186
>> # of unexpected failures 24
>> # of unresolved testcases 12
>
> these results are great for solaris. On the amd64/GNU/Linux I get 12
> failures (long.mod and long2.mod) run 6 times each.
Indeed: I'm pretty pleased by those results myself.
The remaining failures mostly fall in two categories:
Undefined first referenced
symbol in file
KeyBoardLEDs_SwitchScroll
/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/i386-pc-solaris2.11/./libgm2/libcor/.libs/libcor.so
ld: fatal: symbol referencing errors
collect2: error: ld returned 1 exit status
compiler exited with status 1
FAIL: gm2/coroutines/pim/run/pass/testiotransfer.mod compilation, -g
UNRESOLVED: gm2/coroutines/pim/run/pass/testiotransfer.mod execution, -g
(link failed)
The definition lives in libgm2/libcor/KeyBoardLEDs.c and is Linux-only,
requiring the KGETLED/KSETLED ioctls. An empty fallback implementation
is missing from the !linux section.
Then there's
/var/tmp//ccrqpjSdcpp:1:failed to find module name
compiler exited with status 1
FAIL: gm2/cpp/pass/cpph.mod, -g
FAIL: gm2/pim/fail/TestLong4.mod, -g
with no further indication in gm2.log what might be wrong. Will have a
look.
Most 64-bit testcases FAIL for the same reason:
Undefined first referenced
symbol in file
funcString /var/tmp//ccGNv4Zd.a(m.o)
ld: fatal: symbol referencing errors
collect2: error: ld returned 1 exit status
compiler exited with status 1
FAIL: gm2/calling-c/datatypes/unbounded/run/pass/m.mod compilation, -g
UNRESOLVED: gm2/calling-c/datatypes/unbounded/run/pass/m.mod execution, -g
(link failed)
funcString *is* defined in c.c, but that file is compiled in the .exp
file `under the hood' with exec ${XGCC} (not even visible in gm2.log)
and without the correct multilib flag.
[01m[K/vol/gcc/src/hg/trunk/solaris/gcc/testsuite/gm2/cpp/pass/subaddr.mod:32:3:[m[K
[01;31m[Kerror: [m[Kcan only CAST objects of the same size
32 | #else
| [01;31m[K^[m[K
compiler exited with status 1
FAIL: gm2/cpp/pass/subaddr.mod, -g
Haven't looked yet, but might be a generic multilib testing problem.
I also noticed that quite a number of temp files are left behind in
gcc/testsuite:
* many *_m2.s files.
* several .o files:
-rw-r--r-- 1 ro gcc 8928 Jul 9 13:45 cpp.o
-rw-r--r-- 1 ro gcc 3772 Jul 9 13:46 cvararg.o
-rw-r--r-- 1 ro gcc 5248 Jul 9 13:52 except2.o
-rw-r--r-- 1 ro gcc 4616 Jul 9 13:52 except4.o
-rw-r--r-- 1 ro gcc 4480 Jul 9 13:52 except5.o
-rw-r--r-- 1 ro gcc 6152 Jul 9 13:52 except7.o
-rw-r--r-- 1 ro gcc 5408 Jul 9 13:52 except8.o
-rw-r--r-- 1 ro gcc 2888 Jul 9 13:56 exceptiontest.o
-rw-r--r-- 1 ro gcc 1968 Jul 9 13:55 fileio.o
-rw-r--r-- 1 ro gcc 1712 Jul 9 14:19 hello.o
-rw-r--r-- 1 ro gcc 6424 Jul 9 13:45 libexcept.o
-rw-r--r-- 1 ro gcc 9780 Jul 9 13:45 mycpp.o
-rw-r--r-- 1 ro gcc 3392 Jul 9 13:56 raise.o
-rw-r--r-- 1 ro gcc 3520 Jul 9 13:57 raise2.o
-rw-r--r-- 1 ro gcc 1760 Jul 9 14:17 rangesupport.o
-rw-r--r-- 1 ro gcc 3488 Jul 9 14:14 sys.o
* a few *.x[0-5] files:
except2
except4
except5
except7
except8
exceptiontest
libexcept
raise
raise2
* 3 others:
-rw-r--r-- 1 ro gcc 4199 Jul 9 14:00 integer_m2.cpp
-rw-r--r-- 1 ro gcc 36 Jul 9 14:14 results.dat
-rw-r--r-- 1 ro gcc 26 Jul 9 13:56 test.txt
Besides, gm2.log is very full with debug output, making it hard to see
what's going on:
Stuff like
looking for
/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/i386-pc-solaris2.11/./libpim/.libs/libiso.a
even seems to run several times for the same lib!?
Same for
about to call target_compile with
/vol/gcc/src/hg/trunk/solaris/gcc/testsuite/../gm2/examples/callingC/hello.mod
/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/gcc/testsuite/hello.o
object {additional_flags= -g }
{compiler=/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/gcc/xgm2
-B/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/gcc
-I/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/i386-pc-solaris2.11/./libgm2/libpim:/vol/gcc/src/hg/trunk/solaris/gcc/testsuite/../gm2/gm2-libs
-I/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/i386-pc-solaris2.11/./libgm2/libiso:/vol/gcc/src/hg/trunk/solaris/gcc/testsuite/../gm2/gm2-libs-iso
-I/vol/gcc/src/hg/trunk/solaris/gcc/testsuite/../gm2/examples/callingC -fpim
-L/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/i386-pc-solaris2.11/./libgm2/libpim/.libs
-L/var/gcc/gcc-10.0.0-20190708/11.5-gcc-gas-gm2-no-bootstrap-j1/i386-pc-solaris2.11/./libgm2/libiso/.libs
}
They are currently written with send_log, but should use verbose instead
so they are off by default, but can be enabled if need be by running
runtest with an appropriate number of -v options.
And finally the testsuite should live in gm2.dg.
Rainer
--
-----------------------------------------------------------------------------
Rainer Orth, Center for Biotechnology, Bielefeld University