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