From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from gproxy2-pub.mail.unifiedlayer.com (gproxy2-pub.mail.unifiedlayer.com [69.89.18.3]) by sourceware.org (Postfix) with ESMTPS id 808F53858C2C for ; Tue, 7 Mar 2023 20:39:57 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 808F53858C2C 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 cmgw10.mail.unifiedlayer.com (unknown [10.0.90.125]) by progateway4.mail.pro1.eigbox.com (Postfix) with ESMTP id BE81210047E39 for ; Tue, 7 Mar 2023 20:39:56 +0000 (UTC) Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTP id Ze6Gpy0XAevcbZe6GpOt2F; Tue, 07 Mar 2023 20:39:56 +0000 X-Authority-Reason: nr=8 X-Authority-Analysis: v=2.4 cv=afmkITkt c=1 sm=1 tr=0 ts=6407a11c a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=dLZJa+xiwSxG16/P+YVxDGlgEgI=:19 a=k__wU0fu6RkA:10:nop_rcvd_month_year a=Qbun_eYptAEA:10:endurance_base64_authed_username_1 a=CCpqsmhAAAAA:8 a=UNV8nkyWhJTWwKW8R18A:9 a=ul9cdbp4aOFLsgKbc677:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Content-Type:MIME-Version:Message-ID:In-Reply-To:Date:References :Subject:Cc:To:From:Sender:Reply-To:Content-Transfer-Encoding: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=wBm1NB4sv8WuBHlD/wJN4h04Zv8wKi2+uQd4NJ63l9w=; b=DiiFGOUc3ju2GAUeXrfmO9SAgz OF427ssA+OxZAPiwR1kQjXiNgo6Hetb3vqG9Q8vxrl89OGkCY+sJbpq3AVHtcFSEoQDfS66dy9Oo0 hI+3yfJl4CxfdBdfJqiTwlZck; Received: from 75-166-130-93.hlrn.qwest.net ([75.166.130.93]:34058 helo=murgatroyd) by box5379.bluehost.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.95) (envelope-from ) id 1pZe6F-001uPD-I6; Tue, 07 Mar 2023 13:39:55 -0700 From: Tom Tromey To: Tankut Baris Aktemur via Gdb-patches Cc: Tankut Baris Aktemur Subject: Re: [PATCH 00/26] gdbserver: refactor regcache and allow gradually populating References: X-Attribution: Tom Date: Tue, 07 Mar 2023 13:39:52 -0700 In-Reply-To: (Tankut Baris Aktemur via Gdb-patches's message of "Tue, 28 Feb 2023 12:27:58 +0100") Message-ID: <87edq0qorr.fsf@tromey.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/28.2 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain 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: 75.166.130.93 X-Source-L: No X-Exim-ID: 1pZe6F-001uPD-I6 X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 75-166-130-93.hlrn.qwest.net (murgatroyd) [75.166.130.93]:34058 X-Source-Auth: tom+tromey.com X-Email-Count: 5 X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-Spam-Status: No, score=-3020.6 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,JMQ_SPF_NEUTRAL,RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: >>>>> Tankut Baris Aktemur via Gdb-patches writes: > Gdbserver's regcache is defined and used in a way that it is either > invalid or fetches all the registers from the target prior to being > used. It also seems some regcache functions have two different contracts > based on argument values (e.g. a buffer being nullptr). > This is an attempt to refactor the regcache in gdbserver to > - convert several free functions to methods. > - use and update register statuses more consistently. > - allow populating register values gradually, instead of having to > fetch all register values from the target. I haven't read these patches, but I wanted to mention that, over time, we've been trying to bring gdb and gdbserver closer together where possible. And, I'm wondering how this series fits into this. At the end, are the two register caches more similar? More divergent? I'm not necessarily saying this is the most important thing, but for example what would be unfortunate is if the two ended up with similar functionality but very different expressions, which would make the sharing of other code even harder. Tom