From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: by sourceware.org (Postfix, from userid 1879) id C0FCC3858002; Thu, 7 Apr 2022 17:08:23 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org C0FCC3858002 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable From: Simon Marchi To: gdb-cvs@sourceware.org Subject: [binutils-gdb] gdb: remove symtab::pspace X-Act-Checkin: binutils-gdb X-Git-Author: Simon Marchi X-Git-Refname: refs/heads/master X-Git-Oldrev: 3c86fae3d99bf7b5360b810cc5b19522430ce39d X-Git-Newrev: 7678d1304a74922dee60fe7e1f6ee4c53feb04d4 Message-Id: <20220407170823.C0FCC3858002@sourceware.org> Date: Thu, 7 Apr 2022 17:08:23 +0000 (GMT) X-BeenThere: gdb-cvs@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-cvs mailing list List-Unsubscribe: , List-Archive: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Apr 2022 17:08:23 -0000 https://sourceware.org/git/gitweb.cgi?p=3Dbinutils-gdb.git;h=3D7678d1304a74= 922dee60fe7e1f6ee4c53feb04d4 commit 7678d1304a74922dee60fe7e1f6ee4c53feb04d4 Author: Simon Marchi Date: Tue Mar 29 17:07:52 2022 -0400 gdb: remove symtab::pspace =20 Same idea as previous patch, but for symtab::pspace. =20 Change-Id: I1023abe622bea75ef648c6a97a01b53775d4104d Diff: --- gdb/annotate.c | 2 +- gdb/linespec.c | 49 +++++++++++++++++++++++++++++-------------------- gdb/source.c | 2 +- gdb/symtab.c | 8 -------- gdb/symtab.h | 2 -- 5 files changed, 31 insertions(+), 32 deletions(-) diff --git a/gdb/annotate.c b/gdb/annotate.c index 6ae31457222..33805dcdb30 100644 --- a/gdb/annotate.c +++ b/gdb/annotate.c @@ -453,7 +453,7 @@ annotate_source_line (struct symtab *s, int line, int m= id_statement, =20 /* Update the current symtab and line. */ symtab_and_line sal; - sal.pspace =3D s->pspace (); + sal.pspace =3D s->compunit ()->objfile ()->pspace; sal.symtab =3D s; sal.line =3D line; set_current_source_symtab_and_line (sal); diff --git a/gdb/linespec.c b/gdb/linespec.c index 10717ac6c43..9d4707cbb4e 100644 --- a/gdb/linespec.c +++ b/gdb/linespec.c @@ -2188,7 +2188,7 @@ convert_linespec_to_sals (struct linespec_state *stat= e, linespec *ls) for (const auto &sym : ls->labels.label_symbols) { struct program_space *pspace - =3D symbol_symtab (sym.symbol)->pspace (); + =3D symbol_symtab (sym.symbol)->compunit ()->objfile ()->pspace; =20 if (symbol_to_sal (&sal, state->funfirstline, sym.symbol) && maybe_add_address (state->addr_set, pspace, sal.pc)) @@ -2210,7 +2210,7 @@ convert_linespec_to_sals (struct linespec_state *stat= e, linespec *ls) for (const auto &sym : ls->function_symbols) { program_space *pspace - =3D symbol_symtab (sym.symbol)->pspace (); + =3D symbol_symtab (sym.symbol)->compunit ()->objfile ()->pspace; set_current_program_space (pspace); =20 /* Don't skip to the first line of the function if we @@ -3462,8 +3462,10 @@ lookup_prefix_sym (struct linespec_state *state, { /* Program spaces that are executing startup should have been filtered out earlier. */ - gdb_assert (!elt->pspace ()->executing_startup); - set_current_program_space (elt->pspace ()); + program_space *pspace =3D elt->compunit ()->objfile ()->pspace; + + gdb_assert (!pspace->executing_startup); + set_current_program_space (pspace); iterate_over_file_blocks (elt, lookup_name, STRUCT_DOMAIN, collector); iterate_over_file_blocks (elt, lookup_name, VAR_DOMAIN, collector); } @@ -3481,8 +3483,8 @@ compare_symbols (const block_symbol &a, const block_s= ymbol &b) { uintptr_t uia, uib; =20 - uia =3D (uintptr_t) symbol_symtab (a.symbol)->pspace (); - uib =3D (uintptr_t) symbol_symtab (b.symbol)->pspace (); + uia =3D (uintptr_t) symbol_symtab (a.symbol)->compunit ()->objfile ()->p= space; + uib =3D (uintptr_t) symbol_symtab (b.symbol)->compunit ()->objfile ()->p= space; =20 if (uia < uib) return true; @@ -3606,7 +3608,7 @@ find_method (struct linespec_state *self, =20 /* Program spaces that are executing startup should have been filtered out earlier. */ - pspace =3D symbol_symtab (sym)->pspace (); + pspace =3D symbol_symtab (sym)->compunit ()->objfile ()->pspace; gdb_assert (!pspace->executing_startup); set_current_program_space (pspace); t =3D check_typedef (sym->type ()); @@ -3617,7 +3619,8 @@ find_method (struct linespec_state *self, sure not to miss the last batch. */ if (ix =3D=3D sym_classes->size () - 1 || (pspace - !=3D symbol_symtab (sym_classes->at (ix + 1).symbol)->pspace ())) + !=3D (symbol_symtab (sym_classes->at (ix + 1).symbol) + ->compunit ()->objfile ()->pspace))) { /* If we did not find a direct implementation anywhere in this program space, consider superclasses. */ @@ -3981,7 +3984,8 @@ find_label_symbols (struct linespec_state *self, for (const auto &elt : function_symbols) { fn_sym =3D elt.symbol; - set_current_program_space (symbol_symtab (fn_sym)->pspace ()); + set_current_program_space + (symbol_symtab (fn_sym)->compunit ()->objfile ()->pspace); block =3D SYMBOL_BLOCK_VALUE (fn_sym); =20 find_label_symbols_in_block (block, name, fn_sym, completion_mode, @@ -4010,13 +4014,14 @@ decode_digits_list_mode (struct linespec_state *sel= f, /* The logic above should ensure this. */ gdb_assert (elt !=3D NULL); =20 - set_current_program_space (elt->pspace ()); + program_space *pspace =3D elt->compunit ()->objfile ()->pspace; + set_current_program_space (pspace); =20 /* Simplistic search just for the list command. */ val.symtab =3D find_line_symtab (elt, val.line, NULL, NULL); if (val.symtab =3D=3D NULL) val.symtab =3D elt; - val.pspace =3D elt->pspace (); + val.pspace =3D pspace; val.pc =3D 0; val.explicit_line =3D true; =20 @@ -4044,13 +4049,14 @@ decode_digits_ordinary (struct linespec_state *self, /* The logic above should ensure this. */ gdb_assert (elt !=3D NULL); =20 - set_current_program_space (elt->pspace ()); + program_space *pspace =3D elt->compunit ()->objfile ()->pspace; + set_current_program_space (pspace); =20 pcs =3D find_pcs_for_symtab_line (elt, line, best_entry); for (CORE_ADDR pc : pcs) { symtab_and_line sal; - sal.pspace =3D elt->pspace (); + sal.pspace =3D pspace; sal.symtab =3D elt; sal.line =3D line; sal.explicit_line =3D true; @@ -4241,9 +4247,11 @@ search_minsyms_for_name (struct collect_info *info, } else { - if (search_pspace =3D=3D NULL || symtab->pspace () =3D=3D search_psp= ace) + program_space *pspace =3D symtab->compunit ()->objfile ()->pspace; + + if (search_pspace =3D=3D NULL || pspace =3D=3D search_pspace) { - set_current_program_space (symtab->pspace ()); + set_current_program_space (pspace); iterate_over_minimal_symbols (symtab->compunit ()->objfile (), name, [&] (struct minimal_symbol *msym) @@ -4329,14 +4337,15 @@ add_matching_symbols_to_info (const char *name, { return info->add_symbol (bsym); }); search_minsyms_for_name (info, lookup_name, pspace, NULL); } - else if (pspace =3D=3D NULL || pspace =3D=3D elt->pspace ()) + else if (pspace =3D=3D NULL || pspace =3D=3D elt->compunit ()->objfi= le ()->pspace) { int prev_len =3D info->result.symbols->size (); =20 /* Program spaces that are executing startup should have been filtered out earlier. */ - gdb_assert (!elt->pspace ()->executing_startup); - set_current_program_space (elt->pspace ()); + program_space *elt_pspace =3D elt->compunit ()->objfile ()->pspace; + gdb_assert (!elt_pspace->executing_startup); + set_current_program_space (elt_pspace); iterate_over_file_blocks (elt, lookup_name, VAR_DOMAIN, [&] (block_symbol *bsym) { return info->add_symbol (bsym); }); @@ -4375,7 +4384,7 @@ symbol_to_sal (struct symtab_and_line *result, result->symbol =3D sym; result->line =3D sym->line (); result->pc =3D SYMBOL_VALUE_ADDRESS (sym); - result->pspace =3D result->symtab->pspace (); + result->pspace =3D result->symtab->compunit ()->objfile ()->pspace; result->explicit_pc =3D 1; return 1; } @@ -4391,7 +4400,7 @@ symbol_to_sal (struct symtab_and_line *result, result->symbol =3D sym; result->line =3D sym->line (); result->pc =3D SYMBOL_VALUE_ADDRESS (sym); - result->pspace =3D result->symtab->pspace (); + result->pspace =3D result->symtab->compunit ()->objfile ()->pspace; return 1; } } diff --git a/gdb/source.c b/gdb/source.c index 24f53f68e35..e9016573333 100644 --- a/gdb/source.c +++ b/gdb/source.c @@ -311,7 +311,7 @@ select_source_symtab (struct symtab *s) if (s) { current_source_location *loc - =3D get_source_location (s->pspace ()); + =3D get_source_location (s->compunit ()->objfile ()->pspace); loc->set (s, 1); return; } diff --git a/gdb/symtab.c b/gdb/symtab.c index eeb16e4643b..3cc2d4f8648 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -335,14 +335,6 @@ search_domain_name (enum search_domain e) =20 /* See symtab.h. */ =20 -program_space * -symtab::pspace () const -{ - return this->compunit ()->objfile ()->pspace; -} - -/* See symtab.h. */ - call_site * compunit_symtab::find_call_site (CORE_ADDR pc) const { diff --git a/gdb/symtab.h b/gdb/symtab.h index 87d48350529..a89b0a2e42d 100644 --- a/gdb/symtab.h +++ b/gdb/symtab.h @@ -1476,8 +1476,6 @@ struct symtab m_language =3D language; } =20 - program_space *pspace () const; - /* Unordered chain of all filetabs in the compunit, with the exception that the "main" source file is the first entry in the list. */