From 1d94a5a36a614cf7ebe259d7660f4fa725f38ee2 Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Thu, 10 May 2018 16:23:49 -0600 Subject: [PATCH] Change symbol_set_names to take an objfile_per_bfd_storage This changes symbol_set_names to take an objfile_per_bfd_storage argument, and updates the users. It also changes PSYMBOL_SET_NAMES to take this argument directly; I feel this clarifies the storage location of objects created in psymtab.c. gdb/ChangeLog 2019-01-10 Tom Tromey * symtab.h (SYMBOL_SET_NAMES): Update. (symbol_set_names): Update. (MSYMBOL_SET_NAMES): Update. * symtab.c (symbol_set_names): Change argument to be an objfile_per_bfd_storage. * psymtab.c (add_psymbol_to_bcache): Update. * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument. --- gdb/ChangeLog | 10 ++++++++++ gdb/psymtab.c | 2 +- gdb/symtab.c | 3 +-- gdb/symtab.h | 8 +++++--- 4 files changed, 17 insertions(+), 6 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 25a219f..63a8120 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,15 @@ 2019-01-10 Tom Tromey + * symtab.h (SYMBOL_SET_NAMES): Update. + (symbol_set_names): Update. + (MSYMBOL_SET_NAMES): Update. + * symtab.c (symbol_set_names): Change argument to be an + objfile_per_bfd_storage. + * psymtab.c (add_psymbol_to_bcache): Update. + * psympriv.h (PSYMBOL_SET_NAMES): Take per_bfd argument. + +2019-01-10 Tom Tromey + * symtab.c (create_demangled_names_hash): Change argument to be an objfile_per_bfd_storage. (symbol_set_names): Update. diff --git a/gdb/psymtab.c b/gdb/psymtab.c index 356901f..418530d 100644 --- a/gdb/psymtab.c +++ b/gdb/psymtab.c @@ -1610,7 +1610,7 @@ add_psymbol_to_bcache (const char *name, int namelength, int copy_name, memset (&psymbol.language_specific, 0, sizeof (psymbol.language_specific)); psymbol.ada_mangled = 0; symbol_set_language (&psymbol, language, &objfile->objfile_obstack); - symbol_set_names (&psymbol, name, namelength, copy_name, objfile); + symbol_set_names (&psymbol, name, namelength, copy_name, objfile->per_bfd); /* Stash the partial symbol away in the cache. */ return psymbol_bcache_full (&psymbol, objfile->psymbol_cache, added); diff --git a/gdb/symtab.c b/gdb/symtab.c index 3f15dbd..d5e18a6 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -772,13 +772,12 @@ symbol_find_demangled_name (struct general_symbol_info *gsymbol, void symbol_set_names (struct general_symbol_info *gsymbol, const char *linkage_name, int len, int copy_name, - struct objfile *objfile) + struct objfile_per_bfd_storage *per_bfd) { struct demangled_name_entry **slot; /* A 0-terminated copy of the linkage name. */ const char *linkage_name_copy; struct demangled_name_entry entry; - struct objfile_per_bfd_storage *per_bfd = objfile->per_bfd; if (gsymbol->language == language_ada) { diff --git a/gdb/symtab.h b/gdb/symtab.h index 7d97372..57ed2c0 100644 --- a/gdb/symtab.h +++ b/gdb/symtab.h @@ -494,10 +494,11 @@ extern void symbol_set_language (struct general_symbol_info *symbol, /* Set the linkage and natural names of a symbol, by demangling the linkage name. */ #define SYMBOL_SET_NAMES(symbol,linkage_name,len,copy_name,objfile) \ - symbol_set_names (&(symbol)->ginfo, linkage_name, len, copy_name, objfile) + symbol_set_names (&(symbol)->ginfo, linkage_name, len, copy_name, \ + (objfile)->per_bfd) extern void symbol_set_names (struct general_symbol_info *symbol, const char *linkage_name, int len, int copy_name, - struct objfile *objfile); + struct objfile_per_bfd_storage *per_bfd); /* Now come lots of name accessor macros. Short version as to when to use which: Use SYMBOL_NATURAL_NAME to refer to the name of the @@ -734,7 +735,8 @@ struct minimal_symbol #define MSYMBOL_SEARCH_NAME(symbol) \ (symbol_search_name (&(symbol)->mginfo)) #define MSYMBOL_SET_NAMES(symbol,linkage_name,len,copy_name,objfile) \ - symbol_set_names (&(symbol)->mginfo, linkage_name, len, copy_name, objfile) + symbol_set_names (&(symbol)->mginfo, linkage_name, len, copy_name, \ + (objfile)->per_bfd) #include "minsyms.h" -- 2.7.4