From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21614 invoked by alias); 22 Jun 2004 17:05:08 -0000 Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Received: (qmail 21601 invoked from network); 22 Jun 2004 17:05:07 -0000 Received: from unknown (HELO vlsi1.ultra.nyu.edu) (128.122.140.213) by sourceware.org with SMTP; 22 Jun 2004 17:05:07 -0000 Received: by vlsi1.ultra.nyu.edu (4.1/1.34) id AA07120; Tue, 22 Jun 04 13:06:38 EDT Date: Tue, 22 Jun 2004 18:19:00 -0000 From: kenner@vlsi1.ultra.nyu.edu (Richard Kenner) Message-Id: <10406221706.AA07120@vlsi1.ultra.nyu.edu> To: mark@codesourcery.com Subject: Re: Patch to allow Ada to work with tree-ssa Cc: gcc-patches@gcc.gnu.org X-SW-Source: 2004-06/txt/msg01761.txt.bz2 In particular, you've just added an extra entry to ARRAY_REF and COMPONENT_REF, making these two common tree nodes bigger. (COMPONENT_REF, in particular, is used extensively in C++; every access to a class member variable is a COMPONENT_REF.) These extra entries are unnecessary in C and C++, meaning that for GCC's two most-used languages you've just increased memory usage with no benefit. If you need some additional stuff for Ada, please find a way that doesn't penalize C and C++. Here's the specific test case for C. I note that it isn't valid C++, but I don't know C++ well enough to make a similar case there. Note that the proposal involving using an INDIRECT_REF won't work with this case because it's a bitfield. int sub1 (int n) { struct foo {int arr[n]; int filler : 3; int fld : 4;} x; return x.fld; }