From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 27572 invoked by alias); 7 Dec 2001 18:11:54 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 26656 invoked from network); 7 Dec 2001 18:10:33 -0000 Received: from unknown (HELO nevyn.them.org) (128.2.145.6) by sources.redhat.com with SMTP; 7 Dec 2001 18:10:33 -0000 Received: from drow by nevyn.them.org with local (Exim 3.33 #1 (Debian)) id 16CPSn-0003YE-00; Fri, 07 Dec 2001 13:11:09 -0500 Date: Fri, 07 Dec 2001 10:11:00 -0000 From: Daniel Jacobowitz To: Elena Zannoni Cc: gdb@sources.redhat.com Subject: Re: [Fwd: gdb "call" very slow on large C++ program; 2 possible patches] Message-ID: <20011207131109.A6497@nevyn.them.org> Mail-Followup-To: Elena Zannoni , gdb@sources.redhat.com References: <3C0FE56A.6070203@cygnus.com> <15375.61776.209451.28772@krustylu.cygnus.com> <15376.60556.71170.277249@krustylu.cygnus.com> <20011207122951.A22977@nevyn.them.org> <15377.1512.277568.965798@krustylu.cygnus.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <15377.1512.277568.965798@krustylu.cygnus.com> User-Agent: Mutt/1.3.23i X-SW-Source: 2001-12/txt/msg00083.txt.bz2 On Fri, Dec 07, 2001 at 01:09:44PM -0500, Elena Zannoni wrote: > Daniel Jacobowitz writes: > > On Fri, Dec 07, 2001 at 11:21:32AM -0500, Elena Zannoni wrote: > > > Yes, something like that happened. I am thinking to send a patch to > > > restore some sanity to this function. But... > > > > > > ...actually, I think that if search_symbols on FUNCTION_NAMESPACES is > > > equivalent to make_symbol_overload_list(), we could just get rid of > > > make_symbol_overload_list() *and* overload_list_add_symbol(). > > > > > > It would be nice to clean this up. > > > > > > Daniel, does search_symbols produces a correct overload list? At first > > > sight it would look so. > > > > Well, I'm not immediately familiar with this code. At first thought, > > there might be some complexity because search_symbols takes a regexp, > > but that's easily resolvable. More importantly, > > make_symbol_overload_list respects scope. So no, the two are not > > equivalent. > > > > I was looking at the fact that make_symbol_overload_list is used only > for c++ non-member functions, and that search_symbols limits the > search to functions. OK. So it looks like we're stuck keeping these functions. > > I found at least one more bug in overload_list_add_symbol (extraneous > > realloc calls) while looking this over, though. I also understand > > where those loops came from, more or less; see make_completion_list. > > This function (and its comments) need some housecleaning. > > > > Yes, there were calls (which were wrong) to overload_list_add_symbol, > in each loop. Sometimes ago, the #if 0 was lost, and so were the calls > in the loops. I see. I guess we just need ALL_PSYMTABS (objfile, ps) { if (!ps->readin) s = PSYMTAB_TO_SYMTAB (ps); } -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer