From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 2F03A3854806; Wed, 28 Jun 2023 13:55:26 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2F03A3854806 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1687960526; bh=BO0uAfGQgfUSjZhG+tDp9ssHjX6+dYTH66Wj8UXGunw=; h=From:To:Subject:Date:In-Reply-To:References:From; b=LVbddn727bvHhG3MgXc4uqQClBEmMQVeXqbaTpqHaWoG770ydkGPi/iZFN5U4N08F EzLSXF+IUaa5WOoT7CxSN2J4hbqj19+t41HpI4iJ7gtZhXwq5HtiUvV/WaYQIZ8iaH dp5BADgTLANPwGr6m9BZ4ZBoYBwRnUqYDN8w2ggw= From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/110434] tree-nrv introduces incorrect CLOBBER(eol) Date: Wed, 28 Jun 2023 13:55:25 +0000 X-Bugzilla-Reason: CC X-Bugzilla-Type: changed X-Bugzilla-Watch-Reason: None X-Bugzilla-Product: gcc X-Bugzilla-Component: tree-optimization X-Bugzilla-Version: 14.0 X-Bugzilla-Keywords: wrong-code X-Bugzilla-Severity: normal X-Bugzilla-Who: cvs-commit at gcc dot gnu.org X-Bugzilla-Status: ASSIGNED X-Bugzilla-Resolution: X-Bugzilla-Priority: P3 X-Bugzilla-Assigned-To: rguenth 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=3D110434 --- Comment #1 from CVS Commits --- The master branch has been updated by Richard Biener : https://gcc.gnu.org/g:4bf76b5b6db8e68755788ec91012c5a686440720 commit r14-2164-g4bf76b5b6db8e68755788ec91012c5a686440720 Author: Richard Biener Date: Wed Jun 28 11:27:45 2023 +0200 tree-optimization/110434 - avoid =3D{v} {CLOBBER} from NRV When NRV replaces a local variable with it also replaces occurences in clobbers. This leads to being clobbered before the return of it which is strictly invalid but harmless in practice since there's no pass after NRV which would remove earlier stores. The following fixes this nevertheless. PR tree-optimization/110434 * tree-nrv.cc (pass_nrv::execute): Remove CLOBBERs of VAR we replace with .=