diff options
author | Simon Marchi <simon.marchi@polymtl.ca> | 2024-05-16 17:30:22 -0400 |
---|---|---|
committer | Simon Marchi <simon.marchi@efficios.com> | 2024-07-15 14:34:12 -0400 |
commit | 8991986e2413e2da383bef41855a7295ce323c9c (patch) | |
tree | 43a9f6b3e40615e75888962f128d66ff11ad9d78 /gdb | |
parent | da877546dbf8499a29230466f8c60e2a1b0b846f (diff) | |
download | gdb-8991986e2413e2da383bef41855a7295ce323c9c.zip gdb-8991986e2413e2da383bef41855a7295ce323c9c.tar.gz gdb-8991986e2413e2da383bef41855a7295ce323c9c.tar.bz2 |
gdb: pass program space to objfile::make
Make the current program space reference bubble up one level.
Change-Id: Iee8b11c853c76e539c991c4785737c69e6a1925c
Approved-By: Tom Tromey <tom@tromey.com>
Reviewed-By: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/jit.c | 4 | ||||
-rw-r--r-- | gdb/objfiles.c | 4 | ||||
-rw-r--r-- | gdb/objfiles.h | 5 | ||||
-rw-r--r-- | gdb/symfile.c | 5 |
4 files changed, 10 insertions, 8 deletions
@@ -660,8 +660,8 @@ jit_object_close_impl (struct gdb_symbol_callbacks *cb, paddress (priv_data->gdbarch, priv_data->entry.symfile_addr)); - objfile *objfile = objfile::make (nullptr, objfile_name.c_str (), - OBJF_NOT_FILENAME); + objfile *objfile = objfile::make (nullptr, current_program_space, + objfile_name.c_str (), OBJF_NOT_FILENAME); objfile->per_bfd->gdbarch = priv_data->gdbarch; for (gdb_symtab &symtab : obj->symtabs) diff --git a/gdb/objfiles.c b/gdb/objfiles.c index 2d6a49c..0e076fe 100644 --- a/gdb/objfiles.c +++ b/gdb/objfiles.c @@ -442,8 +442,8 @@ add_separate_debug_objfile (struct objfile *objfile, struct objfile *parent) /* See objfiles.h. */ objfile * -objfile::make (gdb_bfd_ref_ptr bfd_, const char *name_, objfile_flags flags_, - objfile *parent) +objfile::make (gdb_bfd_ref_ptr bfd_, program_space *pspace, const char *name_, + objfile_flags flags_, objfile *parent) { objfile *result = new objfile (std::move (bfd_), current_program_space, name_, flags_); diff --git a/gdb/objfiles.h b/gdb/objfiles.h index e43669c..50bd6f8 100644 --- a/gdb/objfiles.h +++ b/gdb/objfiles.h @@ -437,8 +437,9 @@ public: ~objfile (); /* Create an objfile. */ - static objfile *make (gdb_bfd_ref_ptr bfd_, const char *name_, - objfile_flags flags_, objfile *parent = nullptr); + static objfile *make (gdb_bfd_ref_ptr bfd_, program_space *pspace, + const char *name_, objfile_flags flags_, + objfile *parent = nullptr); /* Remove this objfile from its program space's objfile list, and frees it. */ diff --git a/gdb/symfile.c b/gdb/symfile.c index caf0aa6..2526998 100644 --- a/gdb/symfile.c +++ b/gdb/symfile.c @@ -1026,7 +1026,6 @@ symbol_file_add_with_addrs (const gdb_bfd_ref_ptr &abfd, const char *name, section_addr_info *addrs, objfile_flags flags, struct objfile *parent) { - struct objfile *objfile; const int from_tty = add_flags & SYMFILE_VERBOSE; const int mainline = add_flags & SYMFILE_MAINLINE; const int always_confirm = add_flags & SYMFILE_ALWAYS_CONFIRM; @@ -1061,7 +1060,9 @@ symbol_file_add_with_addrs (const gdb_bfd_ref_ptr &abfd, const char *name, if (mainline) flags |= OBJF_MAINLINE; - objfile = objfile::make (abfd, name, flags, parent); + + objfile *objfile + = objfile::make (abfd, current_program_space, name, flags, parent); /* We either created a new mapped symbol table, mapped an existing symbol table file which has not had initial symbol reading |