Message ID | 20231107120927.1675589-1-juzhe.zhong@rivai.ai |
---|---|
State | Accepted |
Headers |
Return-Path: <gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org> Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:aa0b:0:b0:403:3b70:6f57 with SMTP id k11csp192308vqo; Tue, 7 Nov 2023 04:18:53 -0800 (PST) X-Google-Smtp-Source: AGHT+IHlGNOF6eoTAXHgjA8l3RoyxuaaOoNUjQ5oY+HLHofh8RvlL9RapH8o5TGv/p77163j9VtM X-Received: by 2002:ad4:5baa:0:b0:66d:6869:5e62 with SMTP id 10-20020ad45baa000000b0066d68695e62mr32807698qvq.46.1699359533675; Tue, 07 Nov 2023 04:18:53 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1699359533; cv=pass; d=google.com; s=arc-20160816; b=0icFffPl5IbqfItMoTsFY/hAAuNAashojbVNddmBbdHZ3OjQ860ieT8gH30ceYNiQx r4jkzt+rWAVwp9Wf3XC0m1fbv9gXJ6xZ5+SODmAZExk8Fd4LbQEPrctAIQj8JSwc3sU+ NtMJKAH+4/8duZxC9igIJyvAGpzNnuwi4Onw/YbseCrt+MTpKWtmypH6lTFBfisq53lM f6EQFxoneO06yZX21YXsiTlcYEe6Yawo0VdncAHT3awc0S9IfrhQfCLYvclrLdk92omd DMIPY8+sX4iUu5xoUDMVdyVdxAJESkU5GatZWKIVG5jl6llaLloIe6eXBBKjNC3yQfH7 wjFA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=errors-to:list-subscribe:list-help:list-post:list-archive :list-unsubscribe:list-id:precedence:feedback-id :content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:arc-filter:dmarc-filter:delivered-to; bh=a2VhCtLoHlMV++12nUFlMBONn2yY4oX7oNmat7SqY7E=; fh=Ytz0BgUryGxSKnlvo5iIYZYov/AuWMbdn9WUJJDE2rE=; b=pNSEMF4YhgPHdl4JfnKutttgfi27GhXGT7bheUKe/Zu5jqmKyuRkzY6ww4nTDUnbNp u2u3TGtpbQ7XvG4C08nyVSkv9HMpeClTZqB0CD7Nbg+3922xsE+O4ogO+mOtPC1RA8pv kmzNiwaU9uErZSAxPs2iKO6kRIV992TBzQuIz3Hgcg5RapGEWLRgFZrYseE5Y5nzuYLx LbvqsgywnrBDMf+nF++ukpCImKsZ7Ku123F08t7oAIxMW5IMEFP3ZSHNDK5lecYbZqka 8j3a66ki59iauOOjJLdBfsSu6avc1viKo6in73gaAeoCUyjdfQhw6IZ2UPPLVfC4qiIP OGwg== ARC-Authentication-Results: i=2; mx.google.com; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (server2.sourceware.org. [2620:52:3:1:0:246e:9693:128c]) by mx.google.com with ESMTPS id x17-20020a0ce791000000b006587b5f54aesi6947693qvn.24.2023.11.07.04.18.53 for <ouuuleilei@gmail.com> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 07 Nov 2023 04:18:53 -0800 (PST) Received-SPF: pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) client-ip=2620:52:3:1:0:246e:9693:128c; Authentication-Results: mx.google.com; arc=pass (i=1); spf=pass (google.com: domain of gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org designates 2620:52:3:1:0:246e:9693:128c as permitted sender) smtp.mailfrom="gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org" Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 71ACB385783F for <ouuuleilei@gmail.com>; Tue, 7 Nov 2023 12:18:53 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from smtpbgau2.qq.com (smtpbgau2.qq.com [54.206.34.216]) by sourceware.org (Postfix) with ESMTPS id 5B1BB3858CDB for <gcc-patches@gcc.gnu.org>; Tue, 7 Nov 2023 12:18:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 5B1BB3858CDB Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=rivai.ai Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=rivai.ai ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 5B1BB3858CDB Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=54.206.34.216 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699359508; cv=none; b=hJDgioCMS84Fu6fXdL0eAW4JToygmzWJTHUKjrsURHYg8941Un49sGKG/DGWQCd9NxrAFvIzApMaI6WOqlQWY2ha4mbmHRD62KgHkRw83fYk7MvI8YyMWGlibzR1PHi9y0g2zNnyVXp6q9eYmszRPvoL/idlONDzLXvfz19IOWk= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1699359508; c=relaxed/simple; bh=PpCBUrSFnZ9eTCKGGfm/lY8ecKL0ckWBNB/RXpH29p0=; h=From:To:Subject:Date:Message-Id:MIME-Version; b=ldzCqcxtEGD9hF2+e9la4jtJjS+7ebp0/m7q2OQksmyJ9hX1OcEdeRk+nelGYwGVvO9Ovc7v+CfZhAdokhQiDObU5dTuoxHJaSn0QPXaF1TrDWHo4HyCNopmP5ebc6j3bMLLj8suQrYtO07xI+16WlPUc7HL7xEsNEaH2tJW2gw= ARC-Authentication-Results: i=1; server2.sourceware.org X-QQ-mid: bizesmtp80t1699358969ta8l1wmm Received: from rios-cad122.hadoop.rioslab.org ( [58.60.1.26]) by bizesmtp.qq.com (ESMTP) with id ; Tue, 07 Nov 2023 20:09:28 +0800 (CST) X-QQ-SSF: 01400000000000G0V000000A0000000 X-QQ-FEAT: CR3LFp2JE4mWmXHhnXPGt5K/IGvm9/D+/LyCo/ft9a7OXFxdKe9DNNdqzpg4B 8UZIx1XWL8zdUSU5oDl4yRCW/I3ANJC5Lpdd1k+sx04IaWj+0Tu1xqGOwOooGhadaP+7epN rzid3kT+L04XN7nB6drRXQ2wfHuZLvlLryepdFUXHuK7Eoncus4w9c7ceOkhkjDDOZh8HSj Zvgcb7Dqod4OfZP9JpapqAB8C96uBJmU6nh6ElZn5rVHgNeAu5mtfCFS+KVrmuJEcWDEheV 0McCp4YcMKaWoNeTjOEkedmwUezkLkQcUWNe5OSwym52M9liiPY8HnHgK6sVgBb7TdlT7BU YpWZ1Y1O8gAbu/rRD1dCNlA/Gmemr8njstm2cpDwfpMUrMxsrgf515kfHtHjozhGvXfz+EX Nta0r+eoyiPurrnFK2Hr+A== X-QQ-GoodBg: 2 X-BIZMAIL-ID: 16036820858829968355 From: Juzhe-Zhong <juzhe.zhong@rivai.ai> To: gcc-patches@gcc.gnu.org Cc: rguenther@suse.de, jeffreyalaw@gmail.com, Juzhe-Zhong <juzhe.zhong@rivai.ai> Subject: [PATCH V2] test: Fix FAIL of pr97428.c for RVV Date: Tue, 7 Nov 2023 20:09:27 +0800 Message-Id: <20231107120927.1675589-1-juzhe.zhong@rivai.ai> X-Mailer: git-send-email 2.36.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-QQ-SENDSIZE: 520 Feedback-ID: bizesmtp:rivai.ai:qybglogicsvrgz:qybglogicsvrgz7a-one-0 X-Spam-Status: No, score=-10.4 required=5.0 tests=BAYES_00, GIT_PATCH_0, KAM_DMARC_STATUS, RCVD_IN_BARRACUDACENTRAL, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, SPF_HELO_PASS, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list <gcc-patches.gcc.gnu.org> List-Unsubscribe: <https://gcc.gnu.org/mailman/options/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=unsubscribe> List-Archive: <https://gcc.gnu.org/pipermail/gcc-patches/> List-Post: <mailto:gcc-patches@gcc.gnu.org> List-Help: <mailto:gcc-patches-request@gcc.gnu.org?subject=help> List-Subscribe: <https://gcc.gnu.org/mailman/listinfo/gcc-patches>, <mailto:gcc-patches-request@gcc.gnu.org?subject=subscribe> Errors-To: gcc-patches-bounces+ouuuleilei=gmail.com@gcc.gnu.org X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1781890430121331357 X-GMAIL-MSGID: 1781907622272249253 |
Series |
[V2] test: Fix FAIL of pr97428.c for RVV
|
|
Checks
Context | Check | Description |
---|---|---|
snail/gcc-patch-check | success | Github commit url |
Commit Message
juzhe.zhong@rivai.ai
Nov. 7, 2023, 12:09 p.m. UTC
This test shows vectorizing stmts using SLP 4 times instead of 2 for RVV. The reason is RVV has 512 bit vector. Here is comparison between RVV ans ARM SVE: https://godbolt.org/z/xc5KE5rPs Confirm GCN also matches 4 SLP. This patch is passed on both GCN and RVV. Ok for trunk ? gcc/testsuite/ChangeLog: * gcc.dg/vect/pr97428.c: Adapt for RVV and GCN. --- gcc/testsuite/gcc.dg/vect/pr97428.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
Comments
On Tue, 7 Nov 2023, Juzhe-Zhong wrote: > This test shows vectorizing stmts using SLP 4 times instead of 2 for RVV. > The reason is RVV has 512 bit vector. > Here is comparison between RVV ans ARM SVE: > https://godbolt.org/z/xc5KE5rPs > > Confirm GCN also matches 4 SLP. This patch is passed on both GCN and RVV. > > Ok for trunk ? Does --param vect-epilogues-nomask=0 help? > gcc/testsuite/ChangeLog: > > * gcc.dg/vect/pr97428.c: Adapt for RVV and GCN. > > --- > gcc/testsuite/gcc.dg/vect/pr97428.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/gcc/testsuite/gcc.dg/vect/pr97428.c b/gcc/testsuite/gcc.dg/vect/pr97428.c > index ad6416096aa..f77adb1be97 100644 > --- a/gcc/testsuite/gcc.dg/vect/pr97428.c > +++ b/gcc/testsuite/gcc.dg/vect/pr97428.c > @@ -43,5 +43,6 @@ void foo_i2(dcmlx4_t dst[], const dcmlx_t src[], int n) > /* { dg-final { scan-tree-dump "Detected interleaving store of size 16" "vect" } } */ > /* We're not able to peel & apply re-aligning to make accesses well-aligned for !vect_hw_misalign, > but we could by peeling the stores for alignment and applying re-aligning loads. */ > -/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { xfail { ! vect_hw_misalign } } } } */ > +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { target { { vect_hw_misalign } && { ! vect512 } } } } } */ > +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 4 "vect" { target { vect512 } } } } */ > /* { dg-final { scan-tree-dump-not "gap of 6 elements" "vect" } } */ >
Yes! Thanks a lot. Fix as you suggested in V3: https://gcc.gnu.org/pipermail/gcc-patches/2023-November/635591.html juzhe.zhong@rivai.ai From: Richard Biener Date: 2023-11-07 21:50 To: Juzhe-Zhong CC: gcc-patches; jeffreyalaw Subject: Re: [PATCH V2] test: Fix FAIL of pr97428.c for RVV On Tue, 7 Nov 2023, Juzhe-Zhong wrote: > This test shows vectorizing stmts using SLP 4 times instead of 2 for RVV. > The reason is RVV has 512 bit vector. > Here is comparison between RVV ans ARM SVE: > https://godbolt.org/z/xc5KE5rPs > > Confirm GCN also matches 4 SLP. This patch is passed on both GCN and RVV. > > Ok for trunk ? Does --param vect-epilogues-nomask=0 help? > gcc/testsuite/ChangeLog: > > * gcc.dg/vect/pr97428.c: Adapt for RVV and GCN. > > --- > gcc/testsuite/gcc.dg/vect/pr97428.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/gcc/testsuite/gcc.dg/vect/pr97428.c b/gcc/testsuite/gcc.dg/vect/pr97428.c > index ad6416096aa..f77adb1be97 100644 > --- a/gcc/testsuite/gcc.dg/vect/pr97428.c > +++ b/gcc/testsuite/gcc.dg/vect/pr97428.c > @@ -43,5 +43,6 @@ void foo_i2(dcmlx4_t dst[], const dcmlx_t src[], int n) > /* { dg-final { scan-tree-dump "Detected interleaving store of size 16" "vect" } } */ > /* We're not able to peel & apply re-aligning to make accesses well-aligned for !vect_hw_misalign, > but we could by peeling the stores for alignment and applying re-aligning loads. */ > -/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { xfail { ! vect_hw_misalign } } } } */ > +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { target { { vect_hw_misalign } && { ! vect512 } } } } } */ > +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 4 "vect" { target { vect512 } } } } */ > /* { dg-final { scan-tree-dump-not "gap of 6 elements" "vect" } } */ > -- Richard Biener <rguenther@suse.de> SUSE Software Solutions Germany GmbH, Frankenstrasse 146, 90461 Nuernberg, Germany; GF: Ivo Totev, Andrew McDonald, Werner Knoblich; (HRB 36809, AG Nuernberg)
diff --git a/gcc/testsuite/gcc.dg/vect/pr97428.c b/gcc/testsuite/gcc.dg/vect/pr97428.c index ad6416096aa..f77adb1be97 100644 --- a/gcc/testsuite/gcc.dg/vect/pr97428.c +++ b/gcc/testsuite/gcc.dg/vect/pr97428.c @@ -43,5 +43,6 @@ void foo_i2(dcmlx4_t dst[], const dcmlx_t src[], int n) /* { dg-final { scan-tree-dump "Detected interleaving store of size 16" "vect" } } */ /* We're not able to peel & apply re-aligning to make accesses well-aligned for !vect_hw_misalign, but we could by peeling the stores for alignment and applying re-aligning loads. */ -/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { xfail { ! vect_hw_misalign } } } } */ +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 2 "vect" { target { { vect_hw_misalign } && { ! vect512 } } } } } */ +/* { dg-final { scan-tree-dump-times "vectorizing stmts using SLP" 4 "vect" { target { vect512 } } } } */ /* { dg-final { scan-tree-dump-not "gap of 6 elements" "vect" } } */