From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 16750 invoked by alias); 26 Nov 2001 22:58:28 -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 16636 invoked from network); 26 Nov 2001 22:58:20 -0000 Received: from unknown (HELO bothner.com) (216.102.199.253) by hostedprojects.ges.redhat.com with SMTP; 26 Nov 2001 22:58:20 -0000 Received: from bothner.com (eureka.bothner.com [192.168.1.9]) by bothner.com (8.11.0/8.11.0) with ESMTP id fAQMwBM15072; Mon, 26 Nov 2001 14:58:11 -0800 Message-ID: <3C02C91D.2060002@bothner.com> Date: Sat, 17 Nov 2001 20:34:00 -0000 From: Per Bothner User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:0.9.6) Gecko/20011120 X-Accept-Language: en-us MIME-Version: 1.0 To: mike stump CC: kenner@vlsi1.ultra.nyu.edu, gcc@gcc.gnu.org Subject: Re: ICE in change_address at emit_rtl.c References: <200111262250.OAA16715@kankakee.wrs.com> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2001-11/txt/msg00794.txt.bz2 mike stump wrote: >>Using a LET_EXPR makes the scope explicit. It is clear that the >>scope of the tmp lasts during the evaluation of the let-body, which >>is during the evaluation of the PLUS_EXPR. Using a SAVE_EXPR, the >>scope of the temporary is "from the first time the SAVE_EXPR is >>evaluated until the last time the SAVE_EXPR is evaluated". We >>cannot know what this is without analyzing the entire body of the >>function. >> >This wrong. The scope for the storage ends, like it or not, at the >end of the block in which it was expanded in, which is defined by a >call to push_temp_slots_for_block. > You are talking implementation details; I am talking semantics. --Per From mboxrd@z Thu Jan 1 00:00:00 1970 From: Per Bothner To: mike stump Cc: kenner@vlsi1.ultra.nyu.edu, gcc@gcc.gnu.org Subject: Re: ICE in change_address at emit_rtl.c Date: Mon, 26 Nov 2001 14:58:00 -0000 Message-ID: <3C02C91D.2060002@bothner.com> References: <200111262250.OAA16715@kankakee.wrs.com> X-SW-Source: 2001-11/msg01298.html Message-ID: <20011126145800.yBRi91-2NYQ-XctK4CmUGUyfmPekBytJ0PYdKO-NE0Q@z> mike stump wrote: >>Using a LET_EXPR makes the scope explicit. It is clear that the >>scope of the tmp lasts during the evaluation of the let-body, which >>is during the evaluation of the PLUS_EXPR. Using a SAVE_EXPR, the >>scope of the temporary is "from the first time the SAVE_EXPR is >>evaluated until the last time the SAVE_EXPR is evaluated". We >>cannot know what this is without analyzing the entire body of the >>function. >> >This wrong. The scope for the storage ends, like it or not, at the >end of the block in which it was expanded in, which is defined by a >call to push_temp_slots_for_block. > You are talking implementation details; I am talking semantics. --Per