From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 14730 invoked by alias); 29 Aug 2005 13:40:46 -0000 Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org Received: (qmail 14717 invoked by alias); 29 Aug 2005 13:40:42 -0000 Date: Mon, 29 Aug 2005 13:52:00 -0000 Message-ID: <20050829134042.14716.qmail@sourceware.org> From: "dberlin at dberlin dot org" To: gcc-bugs@gcc.gnu.org In-Reply-To: <20050829090219.23619.rakdver@gcc.gnu.org> References: <20050829090219.23619.rakdver@gcc.gnu.org> Reply-To: gcc-bugzilla@gcc.gnu.org Subject: [Bug tree-optimization/23619] Missed pre opportunity X-Bugzilla-Reason: CC X-SW-Source: 2005-08/txt/msg03310.txt.bz2 List-Id: ------- Additional Comments From dberlin at gcc dot gnu dot org 2005-08-29 13:40 ------- Subject: Re: Missed pre opportunity On Mon, 29 Aug 2005, pinskia at gcc dot gnu dot org wrote: > > ------- Additional Comments From pinskia at gcc dot gnu dot org 2005-08-29 12:53 ------- > Yes it is a dup as, the issue is we don't pre things for: > if (a) > d = b + c; > else > d = b + e; > > Where b is a complex expression (yes this is simplifing it). As a general statement, this is true, but in a loop is different because it should be partially redundant over the backedge. I'm tentatively with zdenek that we should be PRE'ing something here. I'll look at the actual dumps :) -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=23619