From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from outbound-ss-820.bluehost.com (outbound-ss-820.bluehost.com [69.89.24.241]) by sourceware.org (Postfix) with ESMTPS id C68BB3858C5F for ; Fri, 20 Jan 2023 21:46:33 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C68BB3858C5F Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tromey.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tromey.com Received: from cmgw12.mail.unifiedlayer.com (unknown [10.0.90.127]) by progateway2.mail.pro1.eigbox.com (Postfix) with ESMTP id 39A6A10048556 for ; Fri, 20 Jan 2023 21:46:33 +0000 (UTC) Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTP id IzDVp991iiOW0IzDVpygB0; Fri, 20 Jan 2023 21:46:33 +0000 X-Authority-Reason: nr=8 X-Authority-Analysis: v=2.4 cv=S5kcfKgP c=1 sm=1 tr=0 ts=63cb0bb9 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 a=RvmDmJFTN0MA:10:nop_rcvd_month_year a=Qbun_eYptAEA:10:endurance_base64_authed_username_1 a=B7ctNqcWuW6iLNlA5o8A:9 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Transfer-Encoding:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:Cc:To:From:Sender:Reply-To:Content-Type:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=hIQFiFctXLndvGtrdCHKDzLAKGwDBHIFhFSMRoyFwuw=; b=FPrpbxOkT6gjCZ95pY0/peqe8Z 3WoIkJBWqavSe0Rx8DEQ5Sbm2vha+9d32ZMw4Zaviw+MqcVpHSRwB0GDjDbSU8ySGENnaseQweMbX m/ass6bVcZNWA/enW3Rils9FG; Received: from 97-122-76-186.hlrn.qwest.net ([97.122.76.186]:36374 helo=localhost.localdomain) by box5379.bluehost.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1pIzDU-001G7B-Qi; Fri, 20 Jan 2023 14:46:32 -0700 From: Tom Tromey To: gdb-patches@sourceware.org Cc: Tom Tromey Subject: [PATCH 07/27] Convert block_objfile to method Date: Fri, 20 Jan 2023 14:45:58 -0700 Message-Id: <20230120214618.3236224-8-tom@tromey.com> X-Mailer: git-send-email 2.39.0 In-Reply-To: <20230120214618.3236224-1-tom@tromey.com> References: <20230120214618.3236224-1-tom@tromey.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-AntiAbuse: This header was added to track abuse, please include it with any abuse report X-AntiAbuse: Primary Hostname - box5379.bluehost.com X-AntiAbuse: Original Domain - sourceware.org X-AntiAbuse: Originator/Caller UID/GID - [47 12] / [47 12] X-AntiAbuse: Sender Address Domain - tromey.com X-BWhitelist: no X-Source-IP: 97.122.76.186 X-Source-L: No X-Exim-ID: 1pIzDU-001G7B-Qi X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 97-122-76-186.hlrn.qwest.net (localhost.localdomain) [97.122.76.186]:36374 X-Source-Auth: tom+tromey.com X-Email-Count: 8 X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-Spam-Status: No, score=-3027.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,GIT_PATCH_0,JMQ_SPF_NEUTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: This converts block_objfile to be a method. This was mostly written by script. --- gdb/ada-exp.y | 2 +- gdb/block.c | 12 ++++++------ gdb/block.h | 8 ++++---- gdb/cp-support.c | 2 +- gdb/expop.h | 2 +- gdb/printcmd.c | 2 +- gdb/symtab.c | 10 +++++----- gdb/varobj.c | 2 +- 8 files changed, 20 insertions(+), 20 deletions(-) diff --git a/gdb/ada-exp.y b/gdb/ada-exp.y index 2f466e4de0a..9e9ff8d75d4 100644 --- a/gdb/ada-exp.y +++ b/gdb/ada-exp.y @@ -1699,7 +1699,7 @@ write_var_or_type (struct parser_state *par_state, { struct objfile *objfile = nullptr; if (block != nullptr) - objfile = block_objfile (block); + objfile = block->objfile (); struct bound_minimal_symbol msym = ada_lookup_simple_minsym (decoded_name.c_str (), objfile); diff --git a/gdb/block.c b/gdb/block.c index 5751a6b6f84..d7d5f0bf19e 100644 --- a/gdb/block.c +++ b/gdb/block.c @@ -40,14 +40,14 @@ struct block_namespace_info : public allocate_on_obstack /* See block.h. */ struct objfile * -block_objfile (const struct block *block) +block::objfile () const { const struct global_block *global_block; - if (block->function () != nullptr) - return block->function ()->objfile (); + if (function () != nullptr) + return function ()->objfile (); - global_block = (struct global_block *) block_global_block (block); + global_block = (struct global_block *) block_global_block (this); return global_block->compunit_symtab->objfile (); } @@ -59,7 +59,7 @@ block_gdbarch (const struct block *block) if (block->function () != nullptr) return block->function ()->arch (); - return block_objfile (block)->arch (); + return block->objfile ()->arch (); } /* See block.h. */ @@ -434,7 +434,7 @@ set_block_compunit_symtab (struct block *block, struct compunit_symtab *cu) struct dynamic_prop * block_static_link (const struct block *block) { - struct objfile *objfile = block_objfile (block); + struct objfile *objfile = block->objfile (); /* Only objfile-owned blocks that materialize top function scopes can have static links. */ diff --git a/gdb/block.h b/gdb/block.h index 379359f07be..2243c9a2a52 100644 --- a/gdb/block.h +++ b/gdb/block.h @@ -204,6 +204,10 @@ struct block return this->ranges ()[0].start (); } + /* Return the objfile of this block. */ + + struct objfile *objfile () const; + /* Addresses in the executable code that are in this block. */ CORE_ADDR m_start; @@ -331,10 +335,6 @@ struct blockvector struct block *m_blocks[1]; }; -/* Return the objfile of BLOCK, which must be non-NULL. */ - -extern struct objfile *block_objfile (const struct block *block); - /* Return the architecture of BLOCK, which must be non-NULL. */ extern struct gdbarch *block_gdbarch (const struct block *block); diff --git a/gdb/cp-support.c b/gdb/cp-support.c index 38225a6d9ba..be4a636336d 100644 --- a/gdb/cp-support.c +++ b/gdb/cp-support.c @@ -1466,7 +1466,7 @@ add_symbol_overload_list_qualified (const char *func_name, symbols which match. */ const block *block = get_selected_block (0); - struct objfile *current_objfile = block ? block_objfile (block) : nullptr; + struct objfile *current_objfile = block ? block->objfile () : nullptr; gdbarch_iterate_over_objfiles_in_search_order (current_objfile ? current_objfile->arch () : target_gdbarch (), diff --git a/gdb/expop.h b/gdb/expop.h index de74e88998f..03e8b8aae1d 100644 --- a/gdb/expop.h +++ b/gdb/expop.h @@ -231,7 +231,7 @@ check_objfile (struct symbol *sym, struct objfile *objfile) static inline bool check_objfile (const struct block *block, struct objfile *objfile) { - return check_objfile (block_objfile (block), objfile); + return check_objfile (block->objfile (), objfile); } static inline bool diff --git a/gdb/printcmd.c b/gdb/printcmd.c index 7f3551327a8..e3ee847a955 100644 --- a/gdb/printcmd.c +++ b/gdb/printcmd.c @@ -2355,7 +2355,7 @@ clear_dangling_display_expressions (struct objfile *objfile) struct objfile *bl_objf = nullptr; if (d->block != nullptr) { - bl_objf = block_objfile (d->block); + bl_objf = d->block->objfile (); if (bl_objf->separate_debug_objfile_backlink != nullptr) bl_objf = bl_objf->separate_debug_objfile_backlink; } diff --git a/gdb/symtab.c b/gdb/symtab.c index 924bd5d8ec0..60bed9f0b4b 100644 --- a/gdb/symtab.c +++ b/gdb/symtab.c @@ -1994,7 +1994,7 @@ lookup_language_this (const struct language_defn *lang, symbol_lookup_debug_printf_v ("lookup_language_this (%s, %s (objfile %s))", lang->name (), host_address_to_string (block), - objfile_debug_name (block_objfile (block))); + objfile_debug_name (block->objfile ())); while (block) { @@ -2082,7 +2082,7 @@ lookup_symbol_aux (const char *name, symbol_name_match_type match_type, if (symbol_lookup_debug) { struct objfile *objfile = (block == nullptr - ? nullptr : block_objfile (block)); + ? nullptr : block->objfile ()); symbol_lookup_debug_printf ("demangled symbol name = \"%s\", block @ %s (objfile %s)", @@ -2228,7 +2228,7 @@ lookup_symbol_in_block (const char *name, symbol_name_match_type match_type, if (symbol_lookup_debug) { struct objfile *objfile - = block == nullptr ? nullptr : block_objfile (block); + = block == nullptr ? nullptr : block->objfile (); symbol_lookup_debug_printf_v ("lookup_symbol_in_block (%s, %s (objfile %s), %s)", @@ -2498,7 +2498,7 @@ lookup_symbol_in_static_block (const char *name, if (symbol_lookup_debug) { struct objfile *objfile = (block == nullptr - ? nullptr : block_objfile (block)); + ? nullptr : block->objfile ()); symbol_lookup_debug_printf ("lookup_symbol_in_static_block (%s, %s (objfile %s), %s)", @@ -2638,7 +2638,7 @@ lookup_global_symbol (const char *name, struct objfile *objfile = nullptr; if (block != nullptr) { - objfile = block_objfile (block); + objfile = block->objfile (); if (objfile->separate_debug_objfile_backlink != nullptr) objfile = objfile->separate_debug_objfile_backlink; } diff --git a/gdb/varobj.c b/gdb/varobj.c index eb47ecada3e..58a3ad5041a 100644 --- a/gdb/varobj.c +++ b/gdb/varobj.c @@ -2397,7 +2397,7 @@ varobj_invalidate_if_uses_objfile (struct objfile *objfile) { if (var->root->valid_block != nullptr) { - struct objfile *bl_objfile = block_objfile (var->root->valid_block); + struct objfile *bl_objfile = var->root->valid_block->objfile (); if (bl_objfile->separate_debug_objfile_backlink != nullptr) bl_objfile = bl_objfile->separate_debug_objfile_backlink; -- 2.39.0