From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3430 invoked by alias); 19 Sep 2002 08:04:01 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 3375 invoked from network); 19 Sep 2002 08:04:00 -0000 Received: from unknown (HELO otisco.McKusick.COM) (209.31.233.190) by sources.redhat.com with SMTP; 19 Sep 2002 08:04:00 -0000 Received: (from hilfingr@localhost) by otisco.McKusick.COM (8.9.3/8.9.3) id BAA27599; Thu, 19 Sep 2002 01:04:10 -0700 Date: Thu, 19 Sep 2002 01:04:00 -0000 Message-Id: <200209190804.BAA27599@otisco.McKusick.COM> X-Authentication-Warning: localhost.localdomain: hilfingr set sender to hilfingr@otisco.mckusick.com using -f From: "Paul N. Hilfinger" To: carlton@math.stanford.edu CC: gdb-patches@sources.redhat.com, aidan@velvet.net, jimb@redhat.com, ezannoni@redhat.com In-reply-to: (message from David Carlton on 18 Sep 2002 15:15:40 -0700) Subject: Re: [RFA] delete BLOCK_SHOULD_SORT Reply-to: Hilfinger@otisco.mckusick.com References: X-SW-Source: 2002-09/txt/msg00458.txt.bz2 > I think the changes are pretty straightforward, though I'd appreciate > it if somebody more conversant with ada-lang.c than I am could make > sure I'm not missing anything with my change there. David, OK; let me explain what Ada is up to in the various places it does symbol lookup, and you can decide if we (ahem) need a conversation on this (vis-a-vis this thread or the other "dictionary" threads), or if our needs introduce no new requirements. The problem is that some of our symbol lookups essentially require searches for regular expressions of the form (.*__)?(___.*)? or for (___.*)? Not much you can do about the former, of course, with the current setup, except scan all symbols, and that's what we do. The second pattern, however, can benefit for sorted blocks in an obvious way--- hence the ada-lang.c code you mentioned in an earlier message---but doesn't need them. That is, we take advantage of BLOCK_SHOULD_SORT when possible. I don't have measurements of the impact of not having it. There are obvious ways to use caching when performance becomes a problem (and we currently use them). The other property of Ada is that when we have to search global or all file-scope symbols, we generally want ALL matches to these patterns, or ALL matches from a given block. Paul Hilfinger