From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id fw5JH2nTmmASRAAAWB0awg (envelope-from ) for ; Tue, 11 May 2021 14:56:41 -0400 Received: by simark.ca (Postfix, from userid 112) id 7096C1F11C; Tue, 11 May 2021 14:56:41 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 3.4.2 (2018-09-13) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-0.5 required=5.0 tests=DKIM_SIGNED, MAILING_LIST_MULTI,RDNS_DYNAMIC,T_DKIM_INVALID,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.2 Received: from sourceware.org (ip-8-43-85-97.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 337B01E01F for ; Tue, 11 May 2021 14:56:40 -0400 (EDT) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id A0DDB385DC3D; Tue, 11 May 2021 18:56:39 +0000 (GMT) Received: from gateway30.websitewelcome.com (gateway30.websitewelcome.com [192.185.192.34]) by sourceware.org (Postfix) with ESMTPS id 74AA9385DC3D for ; Tue, 11 May 2021 18:56:35 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.3.2 sourceware.org 74AA9385DC3D Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tromey.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=tom@tromey.com Received: from cm17.websitewelcome.com (cm17.websitewelcome.com [100.42.49.20]) by gateway30.websitewelcome.com (Postfix) with ESMTP id DADFF1001 for ; Tue, 11 May 2021 13:56:33 -0500 (CDT) Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with SMTP id gXYXlXzgeMGeEgXYXldVoF; Tue, 11 May 2021 13:56:33 -0500 X-Authority-Reason: nr=8 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=YNRYrubnNEGiLr3mgnm2mznAfjuIaaUlMPW3Kb2LDWo=; b=gEaGvvDVoYSp/4xAazmf98WsCt rvR7opI1f2yiWIRcoKAIBlI0hWxnPjnlnbojm8/8uRTC89z9+T7OYbrZlLRyIVlBaUsQPGL2jlyL4 T0VCE1earnNH46rjqQDpv3/eX; Received: from 75-166-134-27.hlrn.qwest.net ([75.166.134.27]:43528 helo=murgatroyd) by box5379.bluehost.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.94.2) (envelope-from ) id 1lgXYX-001K3k-Fx; Tue, 11 May 2021 12:56:33 -0600 From: Tom Tromey To: "Jose E. Marchesi via Gdb-patches" Subject: Re: [PATCH 0/1] Integrate GNU poke in GDB References: <20210510151044.20829-1-jose.marchesi@oracle.com> X-Attribution: Tom Date: Tue, 11 May 2021 12:56:32 -0600 In-Reply-To: <20210510151044.20829-1-jose.marchesi@oracle.com> (Jose E. Marchesi via Gdb-patches's message of "Mon, 10 May 2021 17:10:43 +0200") Message-ID: <87k0o56qvz.fsf@tromey.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (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.134.27 X-Source-L: No X-Exim-ID: 1lgXYX-001K3k-Fx X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 75-166-134-27.hlrn.qwest.net (murgatroyd) [75.166.134.27]:43528 X-Source-Auth: tom+tromey.com X-Email-Count: 1 X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes 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: , Errors-To: gdb-patches-bounces@sourceware.org Sender: "Gdb-patches" >>>>> "Jose" == Jose E Marchesi via Gdb-patches writes: Jose> It allows the GDB user to execute Poke code from within the Jose> debugger with access to the target memory, types and values. Jose> - Eventually we will probably want to ship some prewritten Poke Jose> code in a pickle gdb.pk. Would $pkddatadir/poke/ be a good Jose> location for Poke code distributed with GDB? Like what kind of thing are you thinking? Jose> - How can I demangle C++ identifiers? And how can I detect when Jose> a given type is a C++ one that needs demangling? Type names normally aren't mangled. Jose> - There are three commands: Jose> poke STR Jose> poke-add-type EXPR Jose> poke-add-types REGEXP Jose> poke-dump-types Jose> All three commands make sure to start the poke incremental Jose> compiler if it isn't running already. It's maybe more gdb-ish to make one command and use subcommands. I wonder if you considered implementing this by writing some Python to glue Poke into gdb. This would have some advantages: * It wouldn't be a configure-time decision by whoever built gdb -- if you have Poke, it could "just work". (Of course this assumes gdb is built with Python, but that's the norm for distros.) * How Poke is glued in and how the commands work would be controlled by ordinary Poke patches, rather than having to go through GDB. This would let you evolve the GDB integration along with the library. Tom