From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail.baldwin.cx (bigwig.baldwin.cx [IPv6:2607:f138:0:13::2]) by sourceware.org (Postfix) with ESMTPS id F1FA33857350 for ; Fri, 8 Jul 2022 01:03:38 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org F1FA33857350 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=FreeBSD.org Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=FreeBSD.org Received: from ralph.com (ralph.baldwin.cx [66.234.199.215]) by mail.baldwin.cx (Postfix) with ESMTPSA id 80CEA1A84C75 for ; Thu, 7 Jul 2022 21:03:33 -0400 (EDT) From: John Baldwin To: gdb-patches@sourceware.org Subject: [PATCH 2/5] fbsd-nat: Use regset supply/collect methods. Date: Thu, 7 Jul 2022 17:58:13 -0700 Message-Id: <20220708005816.9408-3-jhb@FreeBSD.org> X-Mailer: git-send-email 2.36.1 In-Reply-To: <20220708005816.9408-1-jhb@FreeBSD.org> References: <20220708005816.9408-1-jhb@FreeBSD.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.6.4 (mail.baldwin.cx [0.0.0.0]); Thu, 07 Jul 2022 21:03:33 -0400 (EDT) X-Virus-Scanned: clamav-milter 0.103.1 at mail.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-12.2 required=5.0 tests=BAYES_00, FORGED_SPF_HELO, GIT_PATCH_0, KAM_DMARC_STATUS, KHOP_HELO_FCRDNS, SPF_HELO_PASS, SPF_SOFTFAIL, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 08 Jul 2022 01:03:40 -0000 fbsd-nat includes various helper routines for fetching and storing register sets via ptrace where the register set is described by a regset. These helper routines directly invoke the supply/collect_regset regcache methods which doesn't permit a regset to provide custom logic when fetching or storing a register set. Instead, just use the function pointers from the struct regset directly. --- gdb/fbsd-nat.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/gdb/fbsd-nat.c b/gdb/fbsd-nat.c index 281b034b115..9d7383ac0ab 100644 --- a/gdb/fbsd-nat.c +++ b/gdb/fbsd-nat.c @@ -1744,7 +1744,7 @@ fbsd_nat_target::fetch_register_set (struct regcache *regcache, int regnum, if (ptrace (fetch_op, pid, (PTRACE_TYPE_ARG3) regs, 0) == -1) perror_with_name (_("Couldn't get registers")); - regcache->supply_regset (regset, regnum, regs, size); + regset->supply_regset (regset, regcache, regnum, regs, size); return true; } return false; @@ -1768,7 +1768,7 @@ fbsd_nat_target::store_register_set (struct regcache *regcache, int regnum, if (ptrace (fetch_op, pid, (PTRACE_TYPE_ARG3) regs, 0) == -1) perror_with_name (_("Couldn't get registers")); - regcache->collect_regset (regset, regnum, regs, size); + regset->collect_regset (regset, regcache, regnum, regs, size); if (ptrace (store_op, pid, (PTRACE_TYPE_ARG3) regs, 0) == -1) perror_with_name (_("Couldn't write registers")); @@ -1813,7 +1813,7 @@ fbsd_nat_target::fetch_regset (struct regcache *regcache, int regnum, int note, if (ptrace (PT_GETREGSET, pid, (PTRACE_TYPE_ARG3) &iov, note) == -1) perror_with_name (_("Couldn't get registers")); - regcache->supply_regset (regset, regnum, regs, size); + regset->supply_regset (regset, regcache, regnum, regs, size); return true; } return false; @@ -1838,7 +1838,7 @@ fbsd_nat_target::store_regset (struct regcache *regcache, int regnum, int note, if (ptrace (PT_GETREGSET, pid, (PTRACE_TYPE_ARG3) &iov, note) == -1) perror_with_name (_("Couldn't get registers")); - regcache->collect_regset (regset, regnum, regs, size); + regset->collect_regset (regset, regcache, regnum, regs, size); if (ptrace (PT_SETREGSET, pid, (PTRACE_TYPE_ARG3) &iov, note) == -1) perror_with_name (_("Couldn't write registers")); -- 2.36.1