This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[PATCH v2 05/12] Change symbol_set_names to take an objfile_per_bfd_storage
- From: Tom Tromey <tom at tromey dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tom at tromey dot com>
- Date: Sun, 25 Nov 2018 12:20:36 -0700
- Subject: [PATCH v2 05/12] Change symbol_set_names to take an objfile_per_bfd_storage
- References: <20181125192043.8405-1-tom@tromey.com>
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
2018-11-25 Tom Tromey <tom@tromey.com>
* 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/psymtab.c b/gdb/psymtab.c
index 31c0d4d6a2..ffe99004d4 100644
--- a/gdb/psymtab.c
+++ b/gdb/psymtab.c
@@ -1652,7 +1652,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 2911e5c83c..55a79640d6 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -774,13 +774,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 e0b870135b..41004f2760 100644
--- a/gdb/symtab.h
+++ b/gdb/symtab.h
@@ -493,10 +493,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
@@ -733,7 +734,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.17.2