From patchwork Thu Dec 12 23:50:07 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: 36809 Received: (qmail 101058 invoked by alias); 12 Dec 2019 23:50:23 -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 100892 invoked by uid 89); 12 Dec 2019 23:50:22 -0000 Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-26.9 required=5.0 tests=BAYES_00, GIT_PATCH_0, GIT_PATCH_1, GIT_PATCH_2, GIT_PATCH_3 autolearn=ham version=3.3.1 spammy=HX-Languages-Length:3944 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; Thu, 12 Dec 2019 23:50:20 +0000 Received: by mx1.osci.io (Postfix, from userid 994) id E91D220480; Thu, 12 Dec 2019 18:50:18 -0500 (EST) Received: from gnutoolchain-gerrit.osci.io (gnutoolchain-gerrit.osci.io [IPv6:2620:52:3:1:5054:ff:fe06:16ca]) by mx1.osci.io (Postfix) with ESMTP id BB34C209FE; Thu, 12 Dec 2019 18:50:09 -0500 (EST) Received: from localhost (localhost [127.0.0.1]) by gnutoolchain-gerrit.osci.io (Postfix) with ESMTP id A234E25BB4; Thu, 12 Dec 2019 18:50:09 -0500 (EST) X-Gerrit-PatchSet: 2 Date: Thu, 12 Dec 2019 18:50:07 -0500 From: "Sourceware to Gerrit sync (Code Review)" To: Tom Tromey , gdb-patches@sourceware.org Auto-Submitted: auto-generated X-Gerrit-MessageType: newpatchset Subject: [pushed] Remove MULTI_OBJFILE_P X-Gerrit-Change-Id: I2779e26ea8909078d63fea8f13bce94cab73948c X-Gerrit-Change-Number: 497 X-Gerrit-ChangeURL: X-Gerrit-Commit: deeafabb678e59d8585be6d765c7fbd0e7060b6c In-Reply-To: References: Reply-To: noreply@gnutoolchain-gerrit.osci.io, tromey@sourceware.org, gdb-patches@sourceware.org MIME-Version: 1.0 Content-Disposition: inline User-Agent: Gerrit/3.0.3-79-g83ff7f88f1 Message-Id: <20191212235009.A234E25BB4@gnutoolchain-gerrit.osci.io> The original change was created by Tom Tromey. 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-12-12 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 c6345c0..26f764e 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,14 @@ 2019-12-12 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-12-12 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 dbc949a..f71cb80 100644 --- a/gdb/maint.c +++ b/gdb/maint.c @@ -589,7 +589,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 49b4627..0656cfe 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 480e7f2..77cdd77 100644 --- a/gdb/printcmd.c +++ b/gdb/printcmd.c @@ -1367,7 +1367,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;