From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 48) id 0338B385CCB2; Mon, 9 Oct 2023 13:20:05 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 0338B385CCB2 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gcc.gnu.org; s=default; t=1696857605; bh=ofGopoD7sX70gzFp5tuviZRqFoK8zY3VNizLG+64jVA=; h=From:To:Subject:Date:In-Reply-To:References:From; b=yo1HbecZpktk9GY9L8rKo1JnsYLmomyUFFLmj0O5ucwA9JLzGfVuu77iK3sCj8MPT //Icff8mL2Lwq2fo9WS12dOrJ7fNM5wEKiTtkiAg+9rfNO7/qsza9hEBb0LvIxlCc3 z9ce++cHdicQyNTyKiGCftSL3fME/NRuGfzxzvVU= From: "cvs-commit at gcc dot gnu.org" To: gcc-bugs@gcc.gnu.org Subject: [Bug tree-optimization/111715] Missed optimization in FRE because of weak TBAA Date: Mon, 09 Oct 2023 13:20:04 +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: 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=3D111715 --- Comment #4 from CVS Commits --- The master branch has been updated by Richard Biener : https://gcc.gnu.org/g:11b8cf1685bb40af5b86653e492e350983025957 commit r14-4510-g11b8cf1685bb40af5b86653e492e350983025957 Author: Richard Biener Date: Mon Oct 9 13:05:10 2023 +0200 tree-optimization/111715 - improve TBAA for access paths with pun The following improves basic TBAA for access paths formed by C++ abstraction where we are able to combine a path from an address-taking operation with a path based on that access using a pun to avoid memory access semantics on the address-taking part. The trick is to identify the point the semantic memory access path starts which allows us to use the alias set of the outermost access instead of only that of the base of this path. PR tree-optimization/111715 * alias.cc (reference_alias_ptr_type_1): When we have a type-punning ref at the base search for the access path part that's still semantically valid. * gcc.dg/tree-ssa/ssa-fre-102.c: New testcase.=