From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 08CB6385783F; Fri, 13 Jan 2023 14:01:21 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 08CB6385783F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1673618482; bh=qPd96TfLKuqsgAsM4AYygSyXF3miUZOVxQzB925+tI4=; h=From:To:Subject:Date:In-Reply-To:References:From; b=Bg0PEl3aAoAJAQ98clxZipsgvzeAdu2KMKzrRxhmLSt0Dd47XkJBC7rgWr47B+rsg xd3AjI8qY2JG1Rsj70RnGtYSCBA7Sd2vuyfYGuqm0n2JEw7tq6doVl5Vr7GHtUib2Q 9x1s5MCluYYIA+2PqPjoITFlaBOA82KG1GtKCvuI= From: "jakub at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug target/107131] [11/12/13 Regression] wrong code with -Os -fno-ipa-vrp -fno-tree-bit-ccp Date: Fri, 13 Jan 2023 14:01:21 +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: 13.0 X-Bugzilla-Keywords: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: jakub at gcc dot gnu.org X-Bugzilla-Status: NEW X-Bugzilla-Resolution: X-Bugzilla-Priority: P2 X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org X-Bugzilla-Target-Milestone: 11.4 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=3D107131 --- Comment #7 from Jakub Jelinek --- If I change the testcase to: /* PR target/107131 */ /* { dg-do run } */ /* { dg-options "-Os -fno-ipa-vrp -fno-tree-bit-ccp -Wno-psabi" } */ typedef unsigned char C; typedef unsigned long long __attribute__((__vector_size__ (32))) U; typedef unsigned long long __attribute__((__vector_size__ (64))) V; static __attribute__((__noclone__)) C foo (C o, U x, U y, U z) { V w =3D { x[0], x[1], x[2], x[3], 0, 0, 0, 0 }; V a =3D __builtin_shuffle (w, w, (V) {3, 1, 3, 0, 0, 1, 1, 3}); V b =3D (V) { } >=3D o; V c =3D b <=3D (V)(b >=3D (V) { 0, 0, 0, 0, 0, 0x90DF0BE3990AC871ULL }); U d =3D __builtin_shuffle (y, z, (U) {3, 1, 4, 5}); V e =3D a + c; U f =3D ((union { V v; U u[2]; }) e).u[1] + d; return ((union { U u; C c[32]; }) f).c[9]; } int main () { if (__SIZEOF_LONG_LONG__ !=3D 8 || __CHAR_BIT__ !=3D 8) return 0; C x =3D foo (0, (U) { }, (U) { }, (U) { }); if (x !=3D 0xff) __builtin_abort();=20=20 return 0; } then it started with r12-1055-gb6bdd7a4cb41ee057f2d064fffcb00f23ce6b497 already, but similarly to the other testcase got fixed or made latent with r13-3217.=