https://gcc.gnu.org/bugzilla/show_bug.cgi?id=109125
--- Comment #4 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> --- > --- Comment #2 from Gaius Mulley <gaius at gcc dot gnu.org> --- [...] > Version 2 of the patch catches some more cases found in the iso libraries. I've tried that one last night and most of the failures are gone. Thanks for the super-fix patch. Some failures remain, however, both 32 and 64-bit again: +FAIL: gm2/isolib/run/pass/readreal.mod execution, -O +FAIL: gm2/isolib/run/pass/readreal.mod execution, -O -g +FAIL: gm2/isolib/run/pass/readreal.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/isolib/run/pass/readreal.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/isolib/run/pass/readreal.mod execution, -Os +FAIL: gm2/isolib/run/pass/readreal.mod execution, -g +FAIL: gm2/isolib/run/pass/real3.mod execution, -O +FAIL: gm2/isolib/run/pass/real3.mod execution, -O -g +FAIL: gm2/isolib/run/pass/real3.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/isolib/run/pass/real3.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/isolib/run/pass/real3.mod execution, -Os +FAIL: gm2/isolib/run/pass/real3.mod execution, -g +FAIL: gm2/pim/run/pass/cycles.mod execution, -O +FAIL: gm2/pim/run/pass/cycles.mod execution, -O -g +FAIL: gm2/pim/run/pass/cycles.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/pim/run/pass/cycles.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/pim/run/pass/cycles.mod execution, -Os +FAIL: gm2/pim/run/pass/cycles.mod execution, -g +FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O +FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O -g +FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -Os +FAIL: gm2/pimlib/logitech/run/pass/realconv.mod execution, -g +FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O +FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O -g +FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -Os +FAIL: gm2/pimlib/logitech/run/pass/realinput.mod execution, -g +FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O +FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O -g +FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -Os +FAIL: gm2/pimlib/logitech/run/pass/realinput2.mod execution, -g +FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O +FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O -g +FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -Os +FAIL: gm2/pimlib/logitech/run/pass/realinput3.mod execution, -g +FAIL: gm2/types/run/pass/varient4.mod execution, -O +FAIL: gm2/types/run/pass/varient4.mod execution, -O -g +FAIL: gm2/types/run/pass/varient4.mod execution, -O3 -fomit-frame-pointer +FAIL: gm2/types/run/pass/varient4.mod execution, -O3 -fomit-frame-pointer -finline-functions +FAIL: gm2/types/run/pass/varient4.mod execution, -Os +FAIL: gm2/types/run/pass/varient4.mod execution, -g I've had a look at the readreal.mod one: gm2.log shows enter a real number: RTExceptions.mod:649:35: In invalidloc RTExceptions.mod:649:35:invalid address referenced executed /var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/gm2/readreal.x0 with result fail This seems to be the same failure in all affected cases. However, when I compile that testcase manually, the exception is different: enter a real number: EXCEPTIONS.mod:65:56: In RAISE EXCEPTIONS.mod:65:56:IOChan: ChanId specified is invalid [New Thread 1 (LWP 1)] Thread 2 received signal SIGABRT, Aborted. [Switching to Thread 1 (LWP 1)] 0xfec18838 in __lwp_sigqueue () from /lib/libc.so.1 1: x/i $pc => 0xfec18838 <__lwp_sigqueue+8>: bcc,a %icc, 0xfec18848 <__lwp_sigqueue+24> 0xfec1883c <__lwp_sigqueue+12>: mov %g0, %o0 (gdb) bt #0 0xfec18838 in __lwp_sigqueue () from /lib/libc.so.1 #1 0xfeb56a54 in raise () from /lib/libc.so.1 #2 0xfeb27fe0 in abort () from /lib/libc.so.1 #3 0x0002bb60 in m2pim_M2RTS_HALT (exitcode=-1) at /vol/gcc/src/hg/master/local/libgm2/libm2pim/../../gcc/m2/gm2-libs/M2RTS.mod:238 #4 0x00037284 in m2pim_RTExceptions_DefaultErrorCatch () at /vol/gcc/src/hg/master/local/libgm2/libm2pim/../../gcc/m2/gm2-libs/RTExceptions.mod:156 #5 0x00022728 in main (argc=1, argv=0xffbfebec, envp=0xffbfebf4) at /vol/gcc/src/hg/master/local/gcc/testsuite/gm2/isolib/run/pass/readreal.mod:18 Maybe I'm missing some env variable passed in by the test framework?