diff mbox series

x86: Disable AVX on pr86722.c and pr90356.c

Message ID CAMe9rOpxxqTKr2jM2Np+HGd_3jRM_XT13+E1Z7Xso4MwL3HcMQ@mail.gmail.com
State New
Headers show
Series x86: Disable AVX on pr86722.c and pr90356.c | expand

Commit Message

H.J. Lu March 21, 2022, 9:03 p.m. UTC
On Thu, Mar 17, 2022 at 9:47 PM sunil.k.pandey via Gcc-patches
<gcc-patches@gcc.gnu.org> wrote:
>
> On Linux/x86_64,
>
> c482c28ba4c549006deb70dead90fe8ab34dcbcf is the first bad commit
> commit c482c28ba4c549006deb70dead90fe8ab34dcbcf
> Author: Roger Sayle <roger@nextmovesoftware.com>
> Date:   Thu Mar 17 21:56:32 2022 +0000
>
>     PR 90356: Use xor to load const_double 0.0 on SSE (always)
>
> caused
>
> FAIL: gcc.target/i386/pr86722.c scan-assembler-not orpd
> FAIL: gcc.target/i386/pr90356.c scan-assembler pxor
>
> with GCC configured with
>
> ../../gcc/configure --prefix=/local/skpandey/gccwork/toolwork/gcc-bisect-master/master/r12-7693/usr --enable-clocale=gnu --with-system-zlib --with-demangler-in-ld --with-fpmath=sse --enable-languages=c,c++,fortran --enable-cet --without-isl --enable-libmpx x86_64-linux --disable-bootstrap
>
> To reproduce:
>
> $ cd {build_dir}/gcc && make check RUNTESTFLAGS="i386.exp=gcc.target/i386/pr86722.c --target_board='unix{-m64\ -march=cascadelake}'"
> $ cd {build_dir}/gcc && make check RUNTESTFLAGS="i386.exp=gcc.target/i386/pr90356.c --target_board='unix{-m32\ -march=cascadelake}'"
> $ cd {build_dir}/gcc && make check RUNTESTFLAGS="i386.exp=gcc.target/i386/pr90356.c --target_board='unix{-m64\ -march=cascadelake}'"
>

I am checking in this testcase fix.
diff mbox series

Patch

From 24722f23a9d6ac4fbc3694b92585db61797a843d Mon Sep 17 00:00:00 2001
From: "H.J. Lu" <hjl.tools@gmail.com>
Date: Mon, 21 Mar 2022 13:57:31 -0700
Subject: [PATCH] x86: Disable AVX on pr86722.c and pr90356.c

SSE/SSE2 are enabled explicitly on pr86722.c and pr90356.c.  Disable AVX
to avoid AVX with -march=native.

	PR target/86722
	PR tree-optimization/90356
	* gcc.target/i386/pr86722.c: Add -mno-avx.
	* gcc.target/i386/pr90356.c: Likewise.
---
 gcc/testsuite/gcc.target/i386/pr86722.c | 3 +--
 gcc/testsuite/gcc.target/i386/pr90356.c | 2 +-
 2 files changed, 2 insertions(+), 3 deletions(-)

diff --git a/gcc/testsuite/gcc.target/i386/pr86722.c b/gcc/testsuite/gcc.target/i386/pr86722.c
index 1092c4d8035..4de2ca1a6c0 100644
--- a/gcc/testsuite/gcc.target/i386/pr86722.c
+++ b/gcc/testsuite/gcc.target/i386/pr86722.c
@@ -1,5 +1,5 @@ 
 /* { dg-do compile { target { ! ia32 } } } */
-/* { dg-options "-O2 -msse" } */
+/* { dg-options "-O2 -mno-avx -msse" } */
 
 void f(double*d,double*e){
   for(;d<e;++d)
@@ -8,4 +8,3 @@  void f(double*d,double*e){
 
 /* { dg-final { scan-assembler-not "andnpd" } } */
 /* { dg-final { scan-assembler-not "orpd" } } */
-
diff --git a/gcc/testsuite/gcc.target/i386/pr90356.c b/gcc/testsuite/gcc.target/i386/pr90356.c
index 6f852b3f671..79e0d64b0cb 100644
--- a/gcc/testsuite/gcc.target/i386/pr90356.c
+++ b/gcc/testsuite/gcc.target/i386/pr90356.c
@@ -1,5 +1,5 @@ 
 /* { dg-do compile } */
-/* { dg-options "-O2 -msse2 -mfpmath=sse" } */
+/* { dg-options "-O2 -mno-avx -msse2 -mfpmath=sse" } */
 float doit(float k){
     float c[2]={0.0};
     c[1]+=k;
-- 
2.35.1