From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 25158 invoked by alias); 17 Nov 2005 16:17:16 -0000 Received: (qmail 25092 invoked by uid 22791); 17 Nov 2005 16:17:13 -0000 Received: from commerce-02.cilia.org (HELO commerce-02.cilia.org) (65.174.6.30) by sourceware.org (qpsmtpd/0.30-dev) with ESMTP; Thu, 17 Nov 2005 16:17:13 +0000 Received: from zadeck.dynalias.net (pool-71-251-7-110.nycmny.fios.verizon.net [71.251.7.110]) by commerce-02.cilia.org (Postfix) with ESMTP id DEFD739DA9; Thu, 17 Nov 2005 11:16:57 -0500 (EST) Received: from numenor.site (localhost [127.0.0.1]) by zadeck.dynalias.net (Postfix) with ESMTP id 2AAC674649; Thu, 17 Nov 2005 11:16:56 -0500 (EST) From: Kenneth Zadeck To: Ian Lance Taylor Cc: gcc mailing list Subject: Re: Link-time optimzation Reply-To: Kenneth.Zadeck@NaturalBridge.com In-Reply-To: Message-Id: <20051117161656.2AAC674649@zadeck.dynalias.net> Date: Thu, 17 Nov 2005 16:17:00 -0000 X-Cilia-MailScanner-Information: Please contact the ISP for more information X-Cilia-MailScanner: Found to be clean X-Cilia-MailScanner-From: kenneth.zadeck@naturalbridge.com 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 X-SW-Source: 2005-11/txt/msg00780.txt.bz2 Mark Mitchell writes: > http://gcc.gnu.org/projects/lto/lto.pdf > > Section 4.2 (Executable Representation) describes the GVM as a stack > machine, and mentions load, store, duplicate, and swap operations. > But it also discusses having registers which correspond to GIMPLE > local variables. The way I put this together is that a MODIFY_EXPR > which sets a local variable, say, will be converted to something that > computes the expression using a stack and then assigns the value to a > register. It's easy to see how to convert such a MODIFY_EXPR into a > stack machine and back. But it's not easy to see why that stack > machine is going to need, e.g, a swap operation. There is no GIMPLE > swap operator. So I may still be confused about something. You are most likely correct. We either do not need a swap or do not want to encourage people to try to optimize the trees so much that they need a swap. > > Ian