From patchwork Mon Nov 4 01:34:53 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Simon Marchi (Code Review)" X-Patchwork-Id: 35596 Received: (qmail 71591 invoked by alias); 4 Nov 2019 01:35:01 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Delivered-To: mailing list gdb-patches@sourceware.org Received: (qmail 71514 invoked by uid 89); 4 Nov 2019 01:35:01 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-21.2 required=5.0 tests=AWL, BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3 autolearn=ham version=3.3.1 spammy=Answer X-HELO: mx1.osci.io Received: from polly.osci.io (HELO mx1.osci.io) (8.43.85.229) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Mon, 04 Nov 2019 01:34:59 +0000 Received: by mx1.osci.io (Postfix, from userid 994) id 49C40203AC; Sun, 3 Nov 2019 20:34:57 -0500 (EST) Received: from gnutoolchain-gerrit.osci.io (gnutoolchain-gerrit.osci.io [8.43.85.239]) by mx1.osci.io (Postfix) with ESMTP id 5BC64204A7 for ; Sun, 3 Nov 2019 20:34:53 -0500 (EST) Received: from localhost (localhost [127.0.0.1]) by gnutoolchain-gerrit.osci.io (Postfix) with ESMTP id 2B51A25B28 for ; Sun, 3 Nov 2019 20:34:53 -0500 (EST) X-Gerrit-PatchSet: 1 Date: Sun, 3 Nov 2019 20:34:53 -0500 From: "Tom Tromey (Code Review)" To: gdb-patches@sourceware.org Message-ID: Auto-Submitted: auto-generated X-Gerrit-MessageType: newchange Subject: [review] Remove MULTI_OBJFILE_P X-Gerrit-Change-Id: I2779e26ea8909078d63fea8f13bce94cab73948c X-Gerrit-Change-Number: 497 X-Gerrit-ChangeURL: X-Gerrit-Commit: 879adf51a20c3ac75a7d7dcf070aa4578e5a715b References: Reply-To: tromey@sourceware.org, gdb-patches@sourceware.org MIME-Version: 1.0 Content-Disposition: inline User-Agent: Gerrit/3.0.3-75-g9005159e5d Change URL: https://gnutoolchain-gerrit.osci.io/r/c/binutils-gdb/+/497 ...................................................................... Remove MULTI_OBJFILE_P This removes the MULTI_OBJFILE_P macro in favor of a method on the program space. gdb/ChangeLog 2019-11-03 Tom Tromey * progspace.c (program_space::multi_objfile_p): New method. * printcmd.c (info_symbol_command): Update. * maint.c (maintenance_translate_address): Update. * objfiles.h (MULTI_OBJFILE_P): Remove. * progspace.h (struct program_space) : New method. Change-Id: I2779e26ea8909078d63fea8f13bce94cab73948c --- M gdb/ChangeLog M gdb/maint.c M gdb/objfiles.h M gdb/printcmd.c M gdb/progspace.c M gdb/progspace.h 6 files changed, 24 insertions(+), 6 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d12cc21..94bbb25 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,14 @@ 2019-11-03 Tom Tromey + * progspace.c (program_space::multi_objfile_p): New method. + * printcmd.c (info_symbol_command): Update. + * maint.c (maintenance_translate_address): Update. + * objfiles.h (MULTI_OBJFILE_P): Remove. + * progspace.h (struct program_space) : New + method. + +2019-11-03 Tom Tromey + * progspace.h (struct program_space) : Declare. * progspace.c (program_space::remove_objfile): New method. * objfiles.c (unlink_objfile): Remove. diff --git a/gdb/maint.c b/gdb/maint.c index ec9f4ab..9101d73 100644 --- a/gdb/maint.c +++ b/gdb/maint.c @@ -585,7 +585,7 @@ gdb_assert (sect->objfile && objfile_name (sect->objfile)); obj_name = objfile_name (sect->objfile); - if (MULTI_OBJFILE_P ()) + if (current_program_space->multi_objfile_p ()) printf_filtered (_("%s + %s in section %s of %s\n"), symbol_name, symbol_offset, section_name, obj_name); diff --git a/gdb/objfiles.h b/gdb/objfiles.h index bd7077e..68df50d 100644 --- a/gdb/objfiles.h +++ b/gdb/objfiles.h @@ -773,10 +773,6 @@ uninitialized section index. */ #define SECT_OFF_BSS(objfile) (objfile)->sect_index_bss -/* Answer whether there is more than one object file loaded. */ - -#define MULTI_OBJFILE_P() (object_files && object_files->next) - /* Reset the per-BFD storage area on OBJ. */ void set_objfile_per_bfd (struct objfile *obj); diff --git a/gdb/printcmd.c b/gdb/printcmd.c index 27aaf7a..e018528 100644 --- a/gdb/printcmd.c +++ b/gdb/printcmd.c @@ -1365,7 +1365,7 @@ gdb_assert (osect->objfile && objfile_name (osect->objfile)); obj_name = objfile_name (osect->objfile); - if (MULTI_OBJFILE_P ()) + if (current_program_space->multi_objfile_p ()) if (pc_in_unmapped_range (addr, osect)) if (section_is_overlay (osect)) printf_filtered (_("%s in load address range of " diff --git a/gdb/progspace.c b/gdb/progspace.c index e6c4f55..a39b34c 100644 --- a/gdb/progspace.c +++ b/gdb/progspace.c @@ -200,6 +200,14 @@ _("remove_objfile: objfile already unlinked")); } +/* See progspace.h. */ + +bool +program_space::multi_objfile_p () const +{ + return objfiles_head != nullptr && objfiles_head->next != nullptr; +} + /* Copies program space SRC to DEST. Copies the main executable file, and the main symbol file. Returns DEST. */ diff --git a/gdb/progspace.h b/gdb/progspace.h index e1fcc3c..86bc22a 100644 --- a/gdb/progspace.h +++ b/gdb/progspace.h @@ -173,6 +173,11 @@ /* Remove OBJFILE from the list of objfiles. */ void remove_objfile (struct objfile *objfile); + /* Return true if there is more than one object file loaded; false + otherwise. */ + bool multi_objfile_p () const; + + /* Pointer to next in linked list. */ struct program_space *next = NULL;