From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 26289 invoked by alias); 21 Jul 2002 23:00:35 -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 26277 invoked from network); 21 Jul 2002 23:00:34 -0000 Received: from unknown (HELO localhost.localdomain) (66.60.148.227) by sources.redhat.com with SMTP; 21 Jul 2002 23:00:34 -0000 Received: from warlock.codesourcery.com (localhost.localdomain [127.0.0.1]) by localhost.localdomain (8.11.6/8.11.6) with ESMTP id g6LMwxC02667; Sun, 21 Jul 2002 15:58:59 -0700 Date: Sun, 21 Jul 2002 22:44:00 -0000 From: Mark Mitchell To: Jason Merrill cc: Richard Henderson , Per Bothner , Diego Novillo , "gcc@gcc.gnu.org" Subject: Re: Language-independent functions-as-trees representation Message-ID: <64910000.1027292337@warlock.codesourcery.com> In-Reply-To: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit Content-Disposition: inline X-SW-Source: 2002-07/txt/msg00986.txt.bz2 > Why? We don't currently share expressions in RTL; why would we want to do > so in SIMPLE? Maybe this will make more sense after my other comment below. Besides that, it makes things like rtx_equal_p simple/faster to implement, and could save tons of memory. > Sorry, I don't follow. Most computations care very much about where they > are in the control flow; if I move computations about arbitrarily, their > values will tend to change. The value of "x + y" is different before and > after I increment x. It's the job of CSE to recognize when we can share > values between multiple instances of an expression. I was implicitly (sorry!) in SSA form. -- Mark Mitchell mark@codesourcery.com CodeSourcery, LLC http://www.codesourcery.com