From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23886 invoked by alias); 15 May 2003 22:20:44 -0000 Mailing-List: contact gcc-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-owner@gcc.gnu.org Received: (qmail 23689 invoked from network); 15 May 2003 22:20:40 -0000 Received: from unknown (HELO frothingslosh.sfbay.redhat.com) (66.187.237.200) by sources.redhat.com with SMTP; 15 May 2003 22:20:40 -0000 Received: from frothingslosh.sfbay.redhat.com (localhost.localdomain [127.0.0.1]) by frothingslosh.sfbay.redhat.com (8.12.8/8.12.8) with ESMTP id h4FMHmNm010365; Thu, 15 May 2003 15:17:48 -0700 Received: (from rth@localhost) by frothingslosh.sfbay.redhat.com (8.12.8/8.12.8/Submit) id h4FMHma8010363; Thu, 15 May 2003 15:17:48 -0700 X-Authentication-Warning: frothingslosh.sfbay.redhat.com: rth set sender to rth@redhat.com using -f Date: Thu, 15 May 2003 22:20:00 -0000 From: Richard Henderson To: Diego Novillo Cc: Joe Buck , "gcc@gcc.gnu.org" Subject: Re: [tree-ssa] copy propagation and the abstraction penalty Message-ID: <20030515221748.GC10321@redhat.com> Mail-Followup-To: Richard Henderson , Diego Novillo , Joe Buck , "gcc@gcc.gnu.org" References: <20030514154455.A12416@synopsys.com> <1053007822.4382.137.camel@frodo.toronto.redhat.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1053007822.4382.137.camel@frodo.toronto.redhat.com> User-Agent: Mutt/1.4i X-SW-Source: 2003-05/txt/msg01559.txt.bz2 On Thu, May 15, 2003 at 10:10:22AM -0400, Diego Novillo wrote: > I'm also wondering if we could change the > may-alias between this and UV2150 to a must-alias, which would > completely free this program from aliasing problems: Indeed. And for this case I definitely think it's the right thing to do. IMO constant propagation should be able to take T.8_2 = &; { struct complex * const this; this_3 = (struct complex * const)T.8_2; { this->re = 1.0e+0; and turn it into (&)->re = 1.0e+0 which folds to .re = 1.0e+0 At which point we have no aliasing problem, and a subsequent round of constant propagation ought to be able to send 1.0e+0 to its destination. r~