This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Remove general_symbol_info.language_specific.cplus_specific


Doug Evans writes:
 > Hi.
 > 
 > This patch reverts the addition of cplus_specific added here:
 > 
 > 2010-07-16  Sami Wagiaalla  <swagiaal@redhat.com>
 > 
 > 	* symtab.h (symbol_set_demangled_name): Now takes an optional objfile*
 > 	argument.
 > 	(cplus_specific): New struct.
 > 	* symtab.c (symbol_set_demangled_name): Updated.
 > 	Use cplus_specific for cplus symbols.
 > 	(symbol_get_demangled_name): Retrive the name from the cplus_specific
 > 	struct for cplus symbols.
 > 	(symbol_init_language_specific): Set cplus_specific for cplus symbols.
 > 	(symbol_set_names): Pass objfile to symbol_set_demangled_name.
 > 	* symtab.c (symbol_init_cplus_specific): New function.
 > 
 > It was added in anticipation of improved template support:
 > 
 > https://sourceware.org/ml/gdb-patches/2010-05/msg00594.html
 > https://sourceware.org/ml/gdb-patches/2010-07/msg00284.html
 > 
 > However, minsyms pay the price for this space too.
 > For my standard benchmark this patch gets back 44MB of memory
 > when gdb starts.  [There's still ~440MB of memory used
 > by the demangled ELF symbols of this benchmark,
 > but that's another topic.]
 > 
 > When the improved templated support is added,
 > I wonder if this can be moved to struct symbol.
 > Hmmm, we already have a special version of
 > struct symbol for templates (struct template_symbol).
 > 
 > Regression tested on amd64-linux.
 > 
 > 2014-11-25  Doug Evans  <dje@google.com>
 > 
 > 	* symtab.c (symbol_init_cplus_specific): Delete.
 > 	(symbol_set_demangled_name): Remove special c++ support.
 > 	(symbol_get_demangled_name, symbol_set_language): Ditto.
 > 	* symtab.h (struct cplus_specific): Delete.
 > 	(struct general_symbol_info) <language_specific>: Remove
 > 	cplus_specific.

Committed.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]