On Thu, Oct 23, 2014 at 02:58:06PM +0200, Rainer Orth wrote: > Unfortunately, I see some problems with those tests on Solaris: > > * On Solaris/x86, I get > > FAIL: gcc.dg/pr63594-2.c execution test > > for 32-bit. Any particular reason to restrict -mno-mmx to Linux/x86? > Manually building the testcase with -mno-mmx on Solaris/x86 seems to > cure the failure.
No reason, probably finger memory without lots of thinking. The reason for -mno-mmx is that the functions use floating point vectors and scalar floating point arithmetics in the same function. Feel free to change both pr63594-{1,2}.c with s/linux//g . > > * On 64-bit Solaris/SPARC, I get > > FAIL: gcc.dg/pr63594-1.c (internal compiler error) > FAIL: gcc.dg/pr63594-1.c (test for excess errors) > > /vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.dg/pr63594-1.c: In function > 'test1float1': > /vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.dg/pr63594-1.c:19:1: internal > compiler error: Bus Error > /vol/gcc/src/hg/trunk/local/gcc/testsuite/gcc.dg/pr63594-1.c:57:1: note: in > expansion of macro 'T' > 0x751c03 crash_signal > /vol/gcc/src/hg/trunk/local/gcc/toplev.c:349 > 0x44ffb4 gen_group_rtx(rtx_def*) > /vol/gcc/src/hg/trunk/local/gcc/expr.c:1624 > 0x4f8167 expand_function_start(tree_node*) > /vol/gcc/src/hg/trunk/local/gcc/function.c:4803 > 0x36278f execute > /vol/gcc/src/hg/trunk/local/gcc/cfgexpand.c:5709 Works fine on x86_64, and doesn't seem to be related to the fix in any way, it seems the ICE is related to returning or passing the vectors, so supposedly some latent Solaris/SPARC issue? Jakub