This is the mail archive of the
gdb-patches@sources.redhat.com
mailing list for the GDB project.
Re: RFC: Demangle partial symbols and save memory too
- From: Daniel Jacobowitz <drow at mvista dot com>
- To: gdb-patches at sources dot redhat dot com
- Cc: Jim Blandy <jimb at redhat dot com>
- Date: Tue, 4 Feb 2003 13:07:47 -0500
- Subject: Re: RFC: Demangle partial symbols and save memory too
- References: <20030126222808.GA18132@nevyn.them.org> <vt2hebsrfx9.fsf@zenia.red-bean.com> <20030130011722.GB28894@nevyn.them.org>
I've checked this in, with David's and Jim's comments incorporated, and
copyright dates updated.
On Wed, Jan 29, 2003 at 08:17:22PM -0500, Daniel Jacobowitz wrote:
> I also fixed up some consts that David pointed out; here's an update.
> 2003-01-29 Daniel Jacobowitz <drow@mvista.com>
>
> * defs.h (streq): Add prototype.
> * utils.c (streq): New function.
>
> * dwarf2read.c (new_symbol): Use SYMBOL_SET_NAMES instead of
> SYMBOL_NAME and SYMBOL_INIT_DEMANGLED_NAME.
> * mdebugread.c (new_symbol): Likewise.
> * stabsread.c (define_symbol): Likewise.
> * coffread.c (process_coff_symbol): Likewise.
> * dwarfread.c (new_symbol): Likewise.
>
> * minsyms.c (prim_record_minimal_symbol_and_info): Use
> SYMBOL_SET_NAMES instead of setting SYMBOL_NAME. Set the language
> here.
> (install_minimal_symbols): Don't set SYMBOL_LANGUAGE or call
> SYMBOL_INIT_DEMANGLED_NAME.
> * objfiles.c: Include "hashtab.h".
> (allocate_objfile): Call htab_set_functions_ex for the
> demangled_names_hash.
> (free_objfile): Call htab_delete for the demangled_names_hash.
> * objfiles.h (struct htab): Add declaration.
> (struct objfile): Add demangled_names_hash.
> * symfile.c: Include "hashtab.h".
> (reread_symbols): Call htab_delete for the demangled_names_hash.
> (add_psymbol_to_list): Use SYMBOL_SET_NAMES instead of putting
> SYMBOL_NAME in the bcache.
> * symtab.c: Include "hashtab.h". Update comments.
> (create_demangled_names_hash, symbol_set_names): New functions.
> (symbol_find_demangled_name): New function, broken out from
> symbol_init_demangled_names.
> (symbol_init_demangled_names): Use it.
> * symtab.h (SYMBOL_INIT_DEMANGLED_NAME): Add missing parentheses.
> (SYMBOL_SET_NAMES): New macro.
> (symbol_set_names): Add prototype.
--
Daniel Jacobowitz
MontaVista Software Debian GNU/Linux Developer