From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 5846 invoked by alias); 22 Feb 2008 19:01:03 -0000 Received: (qmail 5837 invoked by uid 22791); 22 Feb 2008 19:01:02 -0000 X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 22 Feb 2008 19:00:34 +0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.13.8/8.13.8) with ESMTP id m1MJ0W1C008324; Fri, 22 Feb 2008 14:00:32 -0500 Received: from pobox-3.corp.redhat.com (pobox-3.corp.redhat.com [10.11.255.67]) by int-mx1.corp.redhat.com (8.13.1/8.13.1) with ESMTP id m1MJ0WU6006929; Fri, 22 Feb 2008 14:00:32 -0500 Received: from [10.13.248.24] (vpn-248-24.boston.redhat.com [10.13.248.24]) by pobox-3.corp.redhat.com (8.13.1/8.13.1) with ESMTP id m1MJ0VY3021648; Fri, 22 Feb 2008 14:00:32 -0500 Message-ID: <47BF1BCF.8010300@redhat.com> Date: Fri, 22 Feb 2008 19:16:00 -0000 From: Andrew MacLeod User-Agent: Thunderbird 2.0.0.9 (X11/20071115) MIME-Version: 1.0 To: Richard Guenther CC: gcc-patches@gcc.gnu.org Subject: Re: [PATCH][4.4] Add a global DECL_UID -> tree mapping References: In-Reply-To: Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit 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: 2008-02/txt/msg00983.txt.bz2 Richard Guenther wrote: > On Fri, 9 Nov 2007, Richard Guenther wrote: > > >> This patch adds a global map to look up a decl from its uid. At the >> moment all places doing this use the referenced_vars () hashtables which >> exist per function and only during a part of the compilation. >> >> This patch enables making these hashtables bitmaps which allows to >> do unused vars removal more efficient and makes walking referenced vars >> order independed of the hashtable size (the walk is now sorted after >> UID). See the followup patch. >> > > I am going to go forward with this (and the followup) early next week. > > http://gcc.gnu.org/ml/gcc-patches/2007-11/msg00524.html > > This will make referenced_vars a bitmap which allows stable traversal > and fixes most of the bootstrap-debug fails if we re-enable > remove_unused_vars before final inlining. > > I didn't take notice of this the first time through :-) This oughta fix the odd compile time hit we have when the hash table doesn't perform well too eh? I remember looking at something a few weeks ago where most of the operand scan time (which was needlessly excessive) was almost all in referenced_var hash table lookups. getting rid of that hash lookup is a good thing. Andrew