From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 98E52385AC29; Wed, 26 Jun 2024 06:38:32 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 98E52385AC29 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1719383912; bh=QC22gHI2VOnHStTMki316OKfbrDWN324E0UizzCR87I=; h=From:To:Subject:Date:In-Reply-To:References:From; b=uwquClWnPHjfDI6imObx5m94xtO2rxGIGH2xYD6SeFwHqKglWru+xt3eBafjA+2jV r23jBneScYo8WwqVrlyaolQc59UGMTM6917KLwRQK2uDobE+7DDpeq64cud5e9Iqv2 56SsGMmX/xKvc+J3+ufCMvde9vxpd80+aiBf2cw0= From: "rguenther at suse dot de" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/115640] [15 Regression] GCN: FAIL: gfortran.dg/vect/pr115528.f -O execution test Date: Wed, 26 Jun 2024 06:38:30 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: target X-Bugzilla-Version: 15.0 X-Bugzilla-Keywords: testsuite-fail X-Bugzilla-Severity: normal X-Bugzilla-Who: rguenther at suse dot de X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: --- X-Bugzilla-Flags: X-Bugzilla-Changed-Fields: Message-ID: In-Reply-To: References: Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/ Auto-Submitted: auto-generated MIME-Version: 1.0 List-Id: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D115640 --- Comment #6 from rguenther at suse dot de --- On Tue, 25 Jun 2024, tschwinge at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=3D115640 >=20 > Thomas Schwinge changed: >=20 > What |Removed |Added > -------------------------------------------------------------------------= --- > Summary|GCN: FAIL: |[15 Regression] GCN: FAI= L: > |gfortran.dg/vect/pr115528.f |gfortran.dg/vect/pr11552= 8.f > | -O execution test | -O execution test > See Also| |https://gcc.gnu.org/bugz= ill > | |a/show_bug.cgi?id=3D1141= 07 >=20 > --- Comment #5 from Thomas Schwinge --- > Turns out, this is a regression after all: before commit > r15-1238-g1fe55a1794863b5ad9eeca5062782834716016b2 "tree-optimization/114= 107 - > avoid peeling for gaps in more cases", this test case > 'gfortran.dg/vect/pr115528.f' (which, of course, wasn't in-tree back then= ) does > PASS its execution test for GCN target (tested '-march=3Dgfx908'). Yes, the testcase outer loop wasn't vectorized before due to the "gap" access in the inner loop. With this rev. we can now vectorize the inner loop without touching the gap. Note I'm no longer sure the loop mask use is what's wrong. Instead it looks like the IV for 'aa' is off (just like I remember what happens when there is a grouped access in the inner loop): # vectp_aa.21_73 =3D PHI ... vect__14.23_71 =3D .MASK_LOAD (vectp_aa.21_73, 64B, loop_mask_77); vectp_aa.21_70 =3D vectp_aa.21_73 + 18446744073709551360; // -256 ... vectp_aa.21_72 =3D vectp_aa.21_70 + 32; for the inner loop - but the inner loop should advance by 32. So I think the issue is a latent one, but maybe one that couldn't be triggered. _Possibly_ it could be triggered with V2mode vectors. For an inner loop with a grouped access this case is still disqualified but IIRC it has the same issue.=