Rainer Orth <r...@cebitec.uni-bielefeld.de> writes: > Jakub Jelinek <ja...@redhat.com> writes: > >> 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 . > > Ok, will do and commit after Linux and Solaris testing.
Here's what I've checked in after i686-unknown-linux-gnu, x86_64-unknown-linux-gnu, and i386-pc-solaris2.11 testing: 2014-10-24 Rainer Orth <r...@cebitec.uni-bielefeld.de> * gcc.dg/pr63594-1.c: Apply -mno-mmx to all i?86-*-* and x86_64-*-* targets. * gcc.dg/pr63594-2.c: Likewise.
diff --git a/gcc/testsuite/gcc.dg/pr63594-1.c b/gcc/testsuite/gcc.dg/pr63594-1.c --- a/gcc/testsuite/gcc.dg/pr63594-1.c +++ b/gcc/testsuite/gcc.dg/pr63594-1.c @@ -1,7 +1,7 @@ /* PR target/63594 */ /* { dg-do compile } */ /* { dg-options "-O2 -Wno-psabi" } */ -/* { dg-additional-options "-mno-mmx" { target i?86-*-linux* x86_64-*-linux* } } */ +/* { dg-additional-options "-mno-mmx" { target i?86-*-* x86_64-*-* } } */ #define C1 c #define C2 C1, C1 diff --git a/gcc/testsuite/gcc.dg/pr63594-2.c b/gcc/testsuite/gcc.dg/pr63594-2.c --- a/gcc/testsuite/gcc.dg/pr63594-2.c +++ b/gcc/testsuite/gcc.dg/pr63594-2.c @@ -1,7 +1,7 @@ /* PR target/63594 */ /* { dg-do run } */ /* { dg-options "-O2 -Wno-psabi" } */ -/* { dg-additional-options "-mno-mmx" { target i?86-*-linux* x86_64-*-linux* } } */ +/* { dg-additional-options "-mno-mmx" { target i?86-*-* x86_64-*-* } } */ #define C1 c #define C2 C1, C1
>>> * 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? > > Ok, I'll file a PR and Cc Eric. This seems to be the same issue as PR target/61535. Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University