Between 20161202 and 20161205, a couple of testcases started to FAIL on 32-bit Solaris/x86:
+FAIL: gcc.target/i386/pr70322-1.c scan-assembler pandn +FAIL: gcc.target/i386/pr70322-2.c scan-assembler pandn +FAIL: gcc.target/i386/pr70322-3.c scan-assembler por +FAIL: gcc.target/i386/pr70322-3.c scan-assembler pxor +FAIL: gcc.target/i386/pr70322-4.c scan-assembler por +FAIL: gcc.target/i386/pr70322-4.c scan-assembler psub This is the same issue as PR target/77483, as is the solution. The following patch implements it. Bootstrapped without regressions on i386-pc-solaris2.12 and x86_64-pc-linux-gnu (both 32 and 64-bit multilibs). Ok for mainline? Rainer -- ----------------------------------------------------------------------------- Rainer Orth, Center for Biotechnology, Bielefeld University 2016-12-06 Rainer Orth <r...@cebitec.uni-bielefeld.de> * gcc.target/i386/pr70322-1.c: Add -mno-stackrealign to dg-options. * gcc.target/i386/pr70322-2.c: Likewise. * gcc.target/i386/pr70322-3.c: Likewise. * gcc.target/i386/pr70322-4.c: Likewise.
# HG changeset patch # Parent 803dbc1539b116e06f7ec76ef3258b07ffa01b80 Compile gcc.target/i386/pr70322-?.c with -mno-stackrealign diff --git a/gcc/testsuite/gcc.target/i386/pr70322-1.c b/gcc/testsuite/gcc.target/i386/pr70322-1.c --- a/gcc/testsuite/gcc.target/i386/pr70322-1.c +++ b/gcc/testsuite/gcc.target/i386/pr70322-1.c @@ -1,6 +1,6 @@ /* PR target/70322 */ /* { dg-do compile { target ia32 } } */ -/* { dg-options "-O2 -msse2 -mstv -mbmi" } */ +/* { dg-options "-O2 -msse2 -mstv -mbmi -mno-stackrealign" } */ /* { dg-final { scan-assembler "pandn" } } */ extern long long z; diff --git a/gcc/testsuite/gcc.target/i386/pr70322-2.c b/gcc/testsuite/gcc.target/i386/pr70322-2.c --- a/gcc/testsuite/gcc.target/i386/pr70322-2.c +++ b/gcc/testsuite/gcc.target/i386/pr70322-2.c @@ -1,6 +1,6 @@ /* PR target/70322 */ /* { dg-do compile { target ia32 } } */ -/* { dg-options "-O2 -msse2 -mstv -mno-bmi" } */ +/* { dg-options "-O2 -msse2 -mstv -mno-bmi -mno-stackrealign" } */ /* { dg-final { scan-assembler "pandn" } } */ extern long long z; diff --git a/gcc/testsuite/gcc.target/i386/pr70322-3.c b/gcc/testsuite/gcc.target/i386/pr70322-3.c --- a/gcc/testsuite/gcc.target/i386/pr70322-3.c +++ b/gcc/testsuite/gcc.target/i386/pr70322-3.c @@ -1,6 +1,6 @@ /* PR target/70322 */ /* { dg-do compile { target ia32 } } */ -/* { dg-options "-O2 -msse2 -mstv" } */ +/* { dg-options "-O2 -msse2 -mstv -mno-stackrealign" } */ /* { dg-final { scan-assembler "pxor" } } */ /* { dg-final { scan-assembler "por" } } */ diff --git a/gcc/testsuite/gcc.target/i386/pr70322-4.c b/gcc/testsuite/gcc.target/i386/pr70322-4.c --- a/gcc/testsuite/gcc.target/i386/pr70322-4.c +++ b/gcc/testsuite/gcc.target/i386/pr70322-4.c @@ -1,6 +1,6 @@ /* PR target/70322 */ /* { dg-do compile { target ia32 } } */ -/* { dg-options "-O2 -msse2 -mstv" } */ +/* { dg-options "-O2 -msse2 -mstv -mno-stackrealign" } */ /* { dg-final { scan-assembler "psub" } } */ /* { dg-final { scan-assembler "por" } } */