From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 810 invoked by alias); 26 Jun 2012 20:09:44 -0000 Received: (qmail 777 invoked by uid 22791); 26 Jun 2012 20:09:36 -0000 X-SWARE-Spam-Status: No, hits=-3.5 required=5.0 tests=BAYES_00,FREEMAIL_FROM,KHOP_THREADED,RCVD_IN_DNSWL_NONE,RCVD_IN_HOSTKARMA_NO,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from qmta01.westchester.pa.mail.comcast.net (HELO qmta01.westchester.pa.mail.comcast.net) (76.96.62.16) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Tue, 26 Jun 2012 20:09:24 +0000 Received: from omta02.westchester.pa.mail.comcast.net ([76.96.62.19]) by qmta01.westchester.pa.mail.comcast.net with comcast id T7rl1j0010QuhwU5189Pf4; Tue, 26 Jun 2012 20:09:23 +0000 Received: from bag6-1-pt.tunnel.tserv3.fmt2.ipv6.he.net ([IPv6:2001:470:1f04:ae1::2]) by omta02.westchester.pa.mail.comcast.net with comcast id T89K1j0010P3DwE3N89Lel; Tue, 26 Jun 2012 20:09:21 +0000 Subject: Re: New option to turn off stack reuse for temporaries Mime-Version: 1.0 (Apple Message framework v1084) Content-Type: text/plain; charset=us-ascii From: Mike Stump In-Reply-To: Date: Tue, 26 Jun 2012 20:12:00 -0000 Cc: Jason Merrill , Richard Guenther , Xinliang David Li , GCC Patches Content-Transfer-Encoding: quoted-printable Message-Id: References: <4FE26AFC.3000703@redhat.com> <4FE43AFD.6050601@redhat.com> <4FE9D23A.20000@redhat.com> To: Michael Matz X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org X-SW-Source: 2012-06/txt/msg01719.txt.bz2 On Jun 26, 2012, at 9:07 AM, Michael Matz wrote: > I agree with Jason. TARGET_EXPR and CLEANUP_POINT_EXPR might currently b= e=20 > used only for C++, but I think they are sensible general constructs to be= =20 > supported by the gimplifier. As do I. The intent was for Ada and every other language with things like = temporaries and cleanups to reuse the backend constructs, so that instead o= f writing optimizers, one for each language, to instead share the optimizer= across languages. To me, the middle end and the backend are the best plac= es for these.