From patchwork Wed Jan 25 15:20:36 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Christophe Lyon X-Patchwork-Id: 719705 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3v7pfR0SFQz9s4q for ; Thu, 26 Jan 2017 02:21:00 +1100 (AEDT) Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=gcc.gnu.org header.i=@gcc.gnu.org header.b="lcyLtGGE"; dkim-atps=neutral DomainKey-Signature: a=rsa-sha1; c=nofws; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; q=dns; s=default; b=W2sV+5XjRxrXRdv bZyU1H7+Z6LewiBmyxymXYqOGFUTdcEOOTwvyvXimxPBOpvK3vGByjcqIG3ZA5A4 ngmWKfM132PznzS3qwLzYxezvrTSoKAYu8zuiPj1YlqJSCkxyFACdw57kyE/Rqdz xZsxW4os07ETD0RKZ0zJIkw+T7lQ= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=gcc.gnu.org; h=list-id :list-unsubscribe:list-archive:list-post:list-help:sender :mime-version:in-reply-to:references:from:date:message-id :subject:to:cc:content-type; s=default; bh=iBN6ffVomXIKuaUc9DpbZ Q0ofjM=; b=lcyLtGGEYTk8z70MMe7jQC1LWKt4AWMCb3dVL7Skrv5rjNQ0Uhj/j Ez1XvNKhmif4Bk5OwENgUOezCez8wH6ntUYSbIDjpbVeEbFGOC2yUlJJ1dTcRSvZ Ar6e0M3jerM0GuAUIrrvHNEccAfSlfyTvjTcudWqKa+BMsh2zWZ2hg= Received: (qmail 24290 invoked by alias); 25 Jan 2017 15:20:50 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Received: (qmail 24280 invoked by uid 89); 25 Jan 2017 15:20:49 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.4 required=5.0 tests=AWL, BAYES_00, RCVD_IN_DNSWL_NONE, RCVD_IN_SORBS_SPAM, SPF_PASS autolearn=no version=3.3.2 spammy=activates, H*i:sk:7a20326, H*f:sk:7a20326 X-HELO: mail-qt0-f171.google.com Received: from mail-qt0-f171.google.com (HELO mail-qt0-f171.google.com) (209.85.216.171) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 25 Jan 2017 15:20:39 +0000 Received: by mail-qt0-f171.google.com with SMTP id x49so22659567qtc.2 for ; Wed, 25 Jan 2017 07:20:38 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=qimIjEmE3ImQkbduCxBifX7u5mEPSI0nWjBIO+ZVlEw=; b=tE8yY7/LH2kapFjvLBk1b4EygL0YQX/Z/cQZ17gzU3Su/7fMS3kJlu+KfDVGwNYqwh uMjoBaehFgNZd8du41vemqBzZZ8lWY/cnlIAgoZLMeyG9Bmo3dFRfvs3gBrfIdOg+pPf dQy1dk0yvTs/QkiFQ0NdsG8zO3xHu3IxRjqGpv9JCn3SKrS8N20+IRz3f3UK9e80A3zj KECoKXqYI9wUPc8A7+Y2Zy41gPSxyHnTzsFuLEMPtXoIjauF4VdjiJOLuuVgJcbcgcNA m+PNqWFKSmoLEvLGYJ2WJ8V1tNx0toKNqfIBs1BKDgjSDVPxWJxpY73rJ+i9nB+xYaD1 Fysw== X-Gm-Message-State: AIkVDXK4/PhAV31w4ETEzDT2jxDR9qd3RdhMJwJ/B0bhiphLf6eUlySHwtVAHpxlq/InZNDoP9rD7okhjwI3QGjT X-Received: by 10.200.42.47 with SMTP id k44mr34031883qtk.56.1485357637153; Wed, 25 Jan 2017 07:20:37 -0800 (PST) MIME-Version: 1.0 Received: by 10.140.23.133 with HTTP; Wed, 25 Jan 2017 07:20:36 -0800 (PST) In-Reply-To: <7a203265-3bc1-b9c8-2c16-93a3bd0307f7@redhat.com> References: <889eb12d-a977-de43-22eb-6de0e14183f2@redhat.com> <20170120192414.GY30284@gate.crashing.org> <83554937-f044-fc65-8676-7529b9fea561@redhat.com> <20170124152139.GJ30284@gate.crashing.org> <58877AA6.3@foss.arm.com> <58878122.6020500@foss.arm.com> <2f769dbc-1013-277d-7bed-c45f7c2ec5e2@redhat.com> <588785C1.7060202@foss.arm.com> <8a3e6db8-a435-20b0-b7d8-2422333e5de0@redhat.com> <58886D4F.2090301@foss.arm.com> <7a203265-3bc1-b9c8-2c16-93a3bd0307f7@redhat.com> From: Christophe Lyon Date: Wed, 25 Jan 2017 16:20:36 +0100 Message-ID: Subject: Re: Improve things for PR71724, in combine/if_then_else_cond To: Bernd Schmidt Cc: Kyrill Tkachov , Segher Boessenkool , GCC Patches X-IsSubscribed: yes On 25 January 2017 at 15:55, Bernd Schmidt wrote: > On 01/25/2017 10:18 AM, Kyrill Tkachov wrote: >> >> The test is supposed to test the generation of the vsel instruction. >> I believe adding an -mcpu=cortex-a57 to the testcases would be best, as >> VSEL isn't actually available on Cortex-A5, it's just enabled by the >> -mfpu=fp-armv8 option. >> A more realistic configuration would target an ARMv8-A CPU like the >> Cortex-A57. > > > Ok, let me know if there's anything else you need from my side. > Kyrill, How about the attached patch? I've added dg-require-effective-target arm_arch_v8a_ok to make sure it's legitimate to request an armv8-class core, but force -mcpu=cortex-a57 to make sure the intended instructions are present (in case at some point add-options-for-arm-arch-v8a activates costs/arch variant that would imply not generating vsel anymore). I've noticed there are other tests adding arm_v8_vfp and not making sure to select an appriopriate cpu. As a follow-up patch? And I checked that my patch makes the tests pass again even when configuring --with-cpu=cortex-a5. Thanks, Christophe > > Bernd > gcc/testsuite/ChangeLog: 2017-01-25 Christophe Lyon * gcc.target/arm/vseleqdf.c: Require arm_arch_v8a_ok, add -mcpu=cortex-a57. * gcc.target/arm/vseleqsf.c: Likewise. * gcc.target/arm/vselgedf.c: Likewise. * gcc.target/arm/vselgesf.c: Likewise. * gcc.target/arm/vselgtdf.c: Likewise. * gcc.target/arm/vselgtsf.c: Likewise. * gcc.target/arm/vselledf.c: Likewise. * gcc.target/arm/vsellesf.c: Likewise. * gcc.target/arm/vselltdf.c: Likewise. * gcc.target/arm/vselltsf.c: Likewise. * gcc.target/arm/vselnedf.c: Likewise. * gcc.target/arm/vselnesf.c: Likewise. * gcc.target/arm/vselvcdf.c: Likewise. * gcc.target/arm/vselvcsf.c: Likewise. * gcc.target/arm/vselvsdf.c: Likewise. * gcc.target/arm/vselvssf.c: Likewise. diff --git a/gcc/testsuite/gcc.target/arm/vseleqdf.c b/gcc/testsuite/gcc.target/arm/vseleqdf.c index 86e147b..64d5784 100644 --- a/gcc/testsuite/gcc.target/arm/vseleqdf.c +++ b/gcc/testsuite/gcc.target/arm/vseleqdf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vseleqsf.c b/gcc/testsuite/gcc.target/arm/vseleqsf.c index 120f44b..b052704 100644 --- a/gcc/testsuite/gcc.target/arm/vseleqsf.c +++ b/gcc/testsuite/gcc.target/arm/vseleqsf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float diff --git a/gcc/testsuite/gcc.target/arm/vselgedf.c b/gcc/testsuite/gcc.target/arm/vselgedf.c index cea08d1..e10508f 100644 --- a/gcc/testsuite/gcc.target/arm/vselgedf.c +++ b/gcc/testsuite/gcc.target/arm/vselgedf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vselgesf.c b/gcc/testsuite/gcc.target/arm/vselgesf.c index 86f2a04..645cf5d 100644 --- a/gcc/testsuite/gcc.target/arm/vselgesf.c +++ b/gcc/testsuite/gcc.target/arm/vselgesf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float diff --git a/gcc/testsuite/gcc.target/arm/vselgtdf.c b/gcc/testsuite/gcc.target/arm/vselgtdf.c index 2c4a6ba..741b9a8 100644 --- a/gcc/testsuite/gcc.target/arm/vselgtdf.c +++ b/gcc/testsuite/gcc.target/arm/vselgtdf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vselgtsf.c b/gcc/testsuite/gcc.target/arm/vselgtsf.c index 388e74c..3042c5b 100644 --- a/gcc/testsuite/gcc.target/arm/vselgtsf.c +++ b/gcc/testsuite/gcc.target/arm/vselgtsf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float diff --git a/gcc/testsuite/gcc.target/arm/vselledf.c b/gcc/testsuite/gcc.target/arm/vselledf.c index 088dc04..dcf46a3 100644 --- a/gcc/testsuite/gcc.target/arm/vselledf.c +++ b/gcc/testsuite/gcc.target/arm/vselledf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vsellesf.c b/gcc/testsuite/gcc.target/arm/vsellesf.c index d0afdbc..38b06eb 100644 --- a/gcc/testsuite/gcc.target/arm/vsellesf.c +++ b/gcc/testsuite/gcc.target/arm/vsellesf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float diff --git a/gcc/testsuite/gcc.target/arm/vselltdf.c b/gcc/testsuite/gcc.target/arm/vselltdf.c index fbcb9ea..4d4d91c 100644 --- a/gcc/testsuite/gcc.target/arm/vselltdf.c +++ b/gcc/testsuite/gcc.target/arm/vselltdf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vselltsf.c b/gcc/testsuite/gcc.target/arm/vselltsf.c index 959dab7..ab3f77f 100644 --- a/gcc/testsuite/gcc.target/arm/vselltsf.c +++ b/gcc/testsuite/gcc.target/arm/vselltsf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float diff --git a/gcc/testsuite/gcc.target/arm/vselnedf.c b/gcc/testsuite/gcc.target/arm/vselnedf.c index cf67f29..4b0fa5e 100644 --- a/gcc/testsuite/gcc.target/arm/vselnedf.c +++ b/gcc/testsuite/gcc.target/arm/vselnedf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vselnesf.c b/gcc/testsuite/gcc.target/arm/vselnesf.c index 2e16423..4fcd5a0 100644 --- a/gcc/testsuite/gcc.target/arm/vselnesf.c +++ b/gcc/testsuite/gcc.target/arm/vselnesf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float diff --git a/gcc/testsuite/gcc.target/arm/vselvcdf.c b/gcc/testsuite/gcc.target/arm/vselvcdf.c index 7f30270..9701e11 100644 --- a/gcc/testsuite/gcc.target/arm/vselvcdf.c +++ b/gcc/testsuite/gcc.target/arm/vselvcdf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vselvcsf.c b/gcc/testsuite/gcc.target/arm/vselvcsf.c index 1bb7369..2d47f30 100644 --- a/gcc/testsuite/gcc.target/arm/vselvcsf.c +++ b/gcc/testsuite/gcc.target/arm/vselvcsf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float diff --git a/gcc/testsuite/gcc.target/arm/vselvsdf.c b/gcc/testsuite/gcc.target/arm/vselvsdf.c index 83ad5bf..54555a2 100644 --- a/gcc/testsuite/gcc.target/arm/vselvsdf.c +++ b/gcc/testsuite/gcc.target/arm/vselvsdf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ double diff --git a/gcc/testsuite/gcc.target/arm/vselvssf.c b/gcc/testsuite/gcc.target/arm/vselvssf.c index 7d76289..a37305d 100644 --- a/gcc/testsuite/gcc.target/arm/vselvssf.c +++ b/gcc/testsuite/gcc.target/arm/vselvssf.c @@ -1,6 +1,7 @@ /* { dg-do compile } */ +/* { dg-require-effective-target arm_arch_v8a_ok */ /* { dg-require-effective-target arm_v8_vfp_ok } */ -/* { dg-options "-O2" } */ +/* { dg-options "-O2 -mcpu=cortex-a57" } */ /* { dg-add-options arm_v8_vfp } */ float