From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3305 invoked by alias); 10 Apr 2009 00:29:49 -0000 Received: (qmail 3293 invoked by uid 22791); 10 Apr 2009 00:29:47 -0000 X-SWARE-Spam-Status: No, hits=-1.0 required=5.0 tests=AWL,BAYES_00,NO_DNS_FOR_FROM X-Spam-Check-By: sourceware.org Received: from mga09.intel.com (HELO mga09.intel.com) (134.134.136.24) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 10 Apr 2009 00:29:40 +0000 Received: from orsmga001.jf.intel.com ([10.7.209.18]) by orsmga102.jf.intel.com with ESMTP; 09 Apr 2009 17:20:44 -0700 X-ExtLoop1: 1 Received: from gnu-6.sc.intel.com ([10.3.194.111]) by orsmga001.jf.intel.com with ESMTP; 09 Apr 2009 17:28:46 -0700 Received: by gnu-6.sc.intel.com (Postfix, from userid 500) id C29C73B577F; Thu, 9 Apr 2009 17:29:11 -0700 (PDT) Date: Fri, 10 Apr 2009 00:29:00 -0000 From: "H.J. Lu" To: gcc-patches@gcc.gnu.org Subject: PATCH: PR testsuite/35621: gcc.target/i386/ssse3-*.c violates C/C++ aliasing rules Message-ID: <20090410002911.GA24346@lucon.org> Reply-To: "H.J. Lu" MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.18 (2008-05-17) Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2009-04/txt/msg00758.txt.bz2 Hi, Those AVX tests just include ssse3-*.c. They also need -fno-strict-aliasing. I am checking in this patch into trunk and 4.4 branch. Thanks. H.J. --- 2009-04-09 H.J. Lu PR testsuite/35621 * gcc.target/i386/avx-vpabsb-1.c: Add -fno-strict-aliasing. * gcc.target/i386/avx-vpabsb-1.c: Likewise. * gcc.target/i386/avx-vpabsd-1.c: Likewise. * gcc.target/i386/avx-vpabsw-1.c: Likewise. * gcc.target/i386/avx-vpalignr-1.c: Likewise. * gcc.target/i386/avx-vphaddd-1.c: Likewise. * gcc.target/i386/avx-vphaddsw-1.c: Likewise. * gcc.target/i386/avx-vphaddw-1.c: Likewise. * gcc.target/i386/avx-vphsubd-1.c: Likewise. * gcc.target/i386/avx-vphsubsw-1.c: Likewise. * gcc.target/i386/avx-vphsubw-1.c: Likewise. * gcc.target/i386/avx-vpmaddubsw-1.c: Likewise. * gcc.target/i386/avx-vpmulhrsw-1.c: Likewise. * gcc.target/i386/avx-vpshufb-1.c: Likewise. * gcc.target/i386/avx-vpsignb-1.c: Likewise. * gcc.target/i386/avx-vpsignd-1.c: Likewise. * gcc.target/i386/avx-vpsignw-1.c: Likewise. Index: gcc.target/i386/avx-vpsignd-1.c =================================================================== --- gcc.target/i386/avx-vpsignd-1.c (revision 145853) +++ gcc.target/i386/avx-vpsignd-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpabsd-1.c =================================================================== --- gcc.target/i386/avx-vpabsd-1.c (revision 145853) +++ gcc.target/i386/avx-vpabsd-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vphsubd-1.c =================================================================== --- gcc.target/i386/avx-vphsubd-1.c (revision 145853) +++ gcc.target/i386/avx-vphsubd-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vphaddd-1.c =================================================================== --- gcc.target/i386/avx-vphaddd-1.c (revision 145853) +++ gcc.target/i386/avx-vphaddd-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpsignw-1.c =================================================================== --- gcc.target/i386/avx-vpsignw-1.c (revision 145853) +++ gcc.target/i386/avx-vpsignw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vphaddsw-1.c =================================================================== --- gcc.target/i386/avx-vphaddsw-1.c (revision 145853) +++ gcc.target/i386/avx-vphaddsw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpmaddubsw-1.c =================================================================== --- gcc.target/i386/avx-vpmaddubsw-1.c (revision 145853) +++ gcc.target/i386/avx-vpmaddubsw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpabsw-1.c =================================================================== --- gcc.target/i386/avx-vpabsw-1.c (revision 145853) +++ gcc.target/i386/avx-vpabsw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vphsubw-1.c =================================================================== --- gcc.target/i386/avx-vphsubw-1.c (revision 145853) +++ gcc.target/i386/avx-vphsubw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vphaddw-1.c =================================================================== --- gcc.target/i386/avx-vphaddw-1.c (revision 145853) +++ gcc.target/i386/avx-vphaddw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vphsubsw-1.c =================================================================== --- gcc.target/i386/avx-vphsubsw-1.c (revision 145853) +++ gcc.target/i386/avx-vphsubsw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpalignr-1.c =================================================================== --- gcc.target/i386/avx-vpalignr-1.c (revision 145853) +++ gcc.target/i386/avx-vpalignr-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpmulhrsw-1.c =================================================================== --- gcc.target/i386/avx-vpmulhrsw-1.c (revision 145853) +++ gcc.target/i386/avx-vpmulhrsw-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpsignb-1.c =================================================================== --- gcc.target/i386/avx-vpsignb-1.c (revision 145853) +++ gcc.target/i386/avx-vpsignb-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpabsb-1.c =================================================================== --- gcc.target/i386/avx-vpabsb-1.c (revision 145853) +++ gcc.target/i386/avx-vpabsb-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mfpmath=sse -mavx" } */ +/* { dg-options "-O2 -mfpmath=sse -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test Index: gcc.target/i386/avx-vpshufb-1.c =================================================================== --- gcc.target/i386/avx-vpshufb-1.c (revision 145853) +++ gcc.target/i386/avx-vpshufb-1.c (working copy) @@ -1,6 +1,6 @@ /* { dg-do run } */ /* { dg-require-effective-target avx } */ -/* { dg-options "-O2 -mavx" } */ +/* { dg-options "-O2 -mavx -fno-strict-aliasing" } */ #define CHECK_H "avx-check.h" #define TEST avx_test