From patchwork Thu Aug 1 09:14:32 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Coplan X-Patchwork-Id: 1967550 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=f6nd6uge; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=f6nd6uge; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=patchwork.ozlabs.org) Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4WZNg21Xw2z1yYq for ; Thu, 1 Aug 2024 19:18:22 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 4CC693858294 for ; Thu, 1 Aug 2024 09:18:20 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR02-AM0-obe.outbound.protection.outlook.com (mail-am0eur02on20604.outbound.protection.outlook.com [IPv6:2a01:111:f403:2606::604]) by sourceware.org (Postfix) with ESMTPS id 3C2D93858C35 for ; Thu, 1 Aug 2024 09:15:45 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3C2D93858C35 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 3C2D93858C35 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:2606::604 ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1722503746; cv=pass; b=JBG7GBT4+K3ea7ndVY94Ly+xSMeLvu/Yyq5oAzvBf99Vlmd4Rhvf0BTsotneuF1B3Fqn/gVCwcZ43jrzXjRcgjtM/W1B7f/v3Q8gbdoPnzng3pdLSLMJ9SwVuiZjeBYp1xGCDwaKpOMF/YbGqxdPhc63w/X0xIn/GMXZmSIejwo= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1722503746; c=relaxed/simple; bh=HIOSotiylrKVKW0lwG0b4Fj3A5wjTLp0CNHdb6pi51w=; h=DKIM-Signature:DKIM-Signature:Date:From:To:Subject:Message-ID: MIME-Version; b=TZWj3sc5YemzUIyU6dNeZKtNbkiCqTWl1pmcSNpv55Jwzme3F7n4cPiwcQC7orLev6rmR6fvvQGtr30LOchW+XfqwbIE99EHXo82KOzqAa1+/2xAfrLYg7s8jiM6sasQ0WCjzl4gRRGRnJWGnflSOcwwLsU4hGpEujwzDIzlfRk= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=OzgSJpH3egu8SX4xf40VFvGYAohTFl78tY5f3mDfyRFql3NVpWhWOxcojro61mRTe9b/uO0CCbaKMBcisxQpeNlUJ6xik0YdeppckDJS47xdPDwliHA5liBzS6g3nwyAeywOdpjw+bUdKDFCMuXbSexAo+kPgm1RP8CxjMDTsfZzlWxSPUImt7fkyof5yWZEV/gcxU+neOyIX0A9+U1BeHhEEGrRV+ybiVato7AzUg/7KxUTA0wIw+Wg/nQHRMiJFS8UvFtSbRYYwZHKl1mYsl3S+h7oclGFV86clR1aMvk8BYVCmwVch4I/z/+RGTb6X6JSY3Y110bUSwZ7PemUUA== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=lXU36mpgUSWK0D3mdpeMO2DhC9JK+YQndK5d5Aprz/w=; b=tpHRGSUIZNSVlvMzQ7NQ81rjjiWVUnBtmZOFWj6Bc0k/vqCsWg0eAhmSzhpY8MdtotRVC+EH/UX+7Bf1YJxs3ZqkXHr/n0hAHGpgcG9LkCu6z5IV38KOCsPLLXPi3jcCxUtb0Ez1Q8H3LdqKPnIEaxBiLeKKG2C16cyYe2v1aQ2anDoxtrS3Byc8QPfxf/XNo/6mTBoDVcyVlGRiBok4HUFx3mtWZM8MYgBOO361u4wdHCX7JhB5hFGJsvF9Cl9AHZn8nMIo7z61WOC1IePTuXi0uwYMEUiYNLnwmx1CHhvrN6ckeZq9mGV7A5a1D2ePbYhlKSNZEEHor3VCtqLEnw== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lXU36mpgUSWK0D3mdpeMO2DhC9JK+YQndK5d5Aprz/w=; b=f6nd6ugekfgjlqwTCypKS9snVMUmcW4L2xicqn2e1BxrdHJ6zoE68JeyhPFbfzBy/MLibKVA0cdSakexexKXwqxY9Ejj1ahQSd31u7CMgWXmrmubLmiQnMn3rwNbR22UGLGo7uUfEJzC9HLfl1s4DC5T6uzozMTJECITnLz54lo= Received: from AM9P195CA0010.EURP195.PROD.OUTLOOK.COM (2603:10a6:20b:21f::15) by GV2PR08MB8195.eurprd08.prod.outlook.com (2603:10a6:150:7b::8) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.22; Thu, 1 Aug 2024 09:15:40 +0000 Received: from AM3PEPF0000A79A.eurprd04.prod.outlook.com (2603:10a6:20b:21f:cafe::5d) by AM9P195CA0010.outlook.office365.com (2603:10a6:20b:21f::15) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7784.35 via Frontend Transport; Thu, 1 Aug 2024 09:15:40 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by AM3PEPF0000A79A.mail.protection.outlook.com (10.167.16.105) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7828.19 via Frontend Transport; Thu, 1 Aug 2024 09:15:39 +0000 Received: ("Tessian outbound a0df3a918190:v365"); Thu, 01 Aug 2024 09:15:39 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: fdea53b0f5cf0584 X-CR-MTA-TID: 64aa7808 Received: from L5bca31c9e7bc.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id 888D32E8-DA36-4DEB-B88C-EB57FBB8559C.1; Thu, 01 Aug 2024 09:14:38 +0000 Received: from EUR03-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id L5bca31c9e7bc.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 01 Aug 2024 09:14:38 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=YAMxxA8/WvP8++W0C8PlLBKqzPyRNQkFjth24Uosa4oU+fdS/dl7cPtMi8T1a2ZvNV5rGmDzHf8YovyYtzHiK4viyZcdXXoPXJBTpE9j1FPv+DOIZTlUbnrM31/iTQKwzTSTCMIahP3D/psQOthEsqsxdnKug2fVKyjdJ+Jw+fQx6bd7/X6FCB+maczIqiEByyNz/wn+8Bmv6U6w6iZ5m03vJow3cCr20h5cD/QeQvMtWOlS8i5kDmLyLdXVPi39JcEqX8xRfKLKlo0QlYvrluP//CX8fN5NOeDw63GxDndf56rDEKtFsd+Ma8EAFuz/xMBw9+/SnZ1LaxKsb6DvCQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=lXU36mpgUSWK0D3mdpeMO2DhC9JK+YQndK5d5Aprz/w=; b=xethzGXUrUBUepzOpHqF8o/W9JSLIfHQlATcswkwGGUBTHFpJlc2UZG3vx+Hy9LCgkcd41oAQehfn5nbNc1a/pNiLE6Obo6WeKc6YKQC2oNDtN7CPmYUrLM/hPzuHc09RnGgQqfQABlcc0cttQ1yI3KAttsnxm6vEQ8WORyqKXMWioxC+JOohR0TjsNu8rKZkbwnBLDVEyrbbCu1RBqM/4byVWiQU14j9+9L3optZtVfqgsQF7p6MIXa9u6VjSimCsT9gt21RGjyESsQuhXnZ2AeNJVfMr3ScRL8EUKlULMCXemTWX6Y9hc2Yjqq0/jv67/De2DHkp02tz1vTasZQA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=lXU36mpgUSWK0D3mdpeMO2DhC9JK+YQndK5d5Aprz/w=; b=f6nd6ugekfgjlqwTCypKS9snVMUmcW4L2xicqn2e1BxrdHJ6zoE68JeyhPFbfzBy/MLibKVA0cdSakexexKXwqxY9Ejj1ahQSd31u7CMgWXmrmubLmiQnMn3rwNbR22UGLGo7uUfEJzC9HLfl1s4DC5T6uzozMTJECITnLz54lo= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from PAWPR08MB8958.eurprd08.prod.outlook.com (2603:10a6:102:33e::15) by AS8PR08MB9453.eurprd08.prod.outlook.com (2603:10a6:20b:5ef::20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7807.28; Thu, 1 Aug 2024 09:14:35 +0000 Received: from PAWPR08MB8958.eurprd08.prod.outlook.com ([fe80::9f32:dc2a:5bec:aeac]) by PAWPR08MB8958.eurprd08.prod.outlook.com ([fe80::9f32:dc2a:5bec:aeac%4]) with mapi id 15.20.7807.026; Thu, 1 Aug 2024 09:14:35 +0000 Date: Thu, 1 Aug 2024 10:14:32 +0100 From: Alex Coplan To: gcc-patches@gcc.gnu.org Cc: David Malcolm , Richard Biener Subject: [PATCH 1/2] gdbhooks: Make dot viewer configurable Message-ID: Content-Disposition: inline X-ClientProxiedBy: LO4P123CA0181.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:1a4::6) To PAWPR08MB8958.eurprd08.prod.outlook.com (2603:10a6:102:33e::15) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: PAWPR08MB8958:EE_|AS8PR08MB9453:EE_|AM3PEPF0000A79A:EE_|GV2PR08MB8195:EE_ X-MS-Office365-Filtering-Correlation-Id: 571992a6-46b8-4841-bcbc-08dcb20a8328 x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|366016|376014|1800799024; X-Microsoft-Antispam-Message-Info-Original: K1ySbd+ccVSPY8glPmR80CprwMOwcGbaomEyS2uXh6bLSA7Ni4nMwGi8KsIrcbrUoalajCouuberJQKbAWPjzmbH3G0h/zxXlZtqbo7ax7owUcNvvPdiXrk6o22qWjecEaq4NXpKcetdr8HPhVAdgCTmYa1F8fADsiKF00fhXCH0IrCLlgPAtRLcqypZEup2Wa1x9OgJyjPATvTw6KJhMLLMgsHP+a1dGBepK3wQ6D61A4p/iKrsLzY+nM6sqaVX/dXn+qoGTgb5njua2APjErlygpMxfiKW5LvHmzLZpmZrAeNO0D9NJ0dQj5lKoWhE0m7hRH1Y1+1vARKsy0+LwhZsNJTs9bYlILhq2kphDRJh6W2pafWSg1XxdFzt4WoXbhqeROzb9IWv1qQDwUeTHJSLfdoch68i4dXwdo1q8NxxCGVLe+7IBYPw1WIFtbylAs00MGYqncvpjUI7jc/J9vKzfDajQd8C5cNwdNPz2HTTYzWq5PVMkcypcZds5eakGtlsTflXKtY8BK689SgQKP11g2r5ozOf7yWNnBcG2TC/8VzMU3t7yc9GTp8bWCRKxqJpuMwJGicAEIGpKf1UpsrP/XA9a1OceS69diDLsF1BWSsvwog8mGFser8iQVltKmPXFSx/BfB821vgq055dj+XsZPVg0q3QKjFc77Du0adN4Mt6xXHU1O+lngCXzR6HcWYYcwLE4Tr75DRMkzYgZge9wJVON/y9QPJbGAF9M/xZRsrHXmWoQmnMkwk2kpv+GkQvy26lrbjFyU0GbtpmMr5PhfSLP1cd/FgqbjABztNFj+qSNm2yUAsfMjVENpsZ/VCBVGFuJ9H73vxSeMw1fW4JwnUtnGxKYARz6e9teWa/aJwQfve75UBC+TjPT5ea4W46QjXhQUsHJFEKUnGIIkBdjpD/IKBBrkwFxh0SEHL/3zrKgJBa5Z+JCv7x9VU93/7uRhSzBm/gVtDKox7Kg3w+xydvWEAzS5SMLTS8eIi317qANnjWDM7C+aca5Nap0uy5MlzVl/NbpEWdA+XbQc/mD9Thcs0rj6c3XwUU6wIJK8nf8DIehVP6lTX2MY3cLLzTPAif7E5aWxIGwO6iF2iuP3OwWBZcDu4V7G2jv15nTPbdo7P+3o9yFfE930gepaOtAhsudSDj0thq2krf3OrT41t5F3C12vOQRDM0QPBrjFeMkwkSK5h2W/fbjI1krsfuOrEDPfiAkGRnNTwco4L6gALrEEsJUZzXFqTwXTu8cExhm3mzCB7AdERTFqJbw/qHfVr2eEWX+T0zeYHr6ynfwP8HoikcQ8wnlqfPI7WLdpIddvWYvI7PFbZ6rj0EnOv/Txom4UMfiXKKMA2LQ== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAWPR08MB8958.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(366016)(376014)(1800799024); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB9453 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:102:33e::15]; domain=PAWPR08MB8958.eurprd08.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: AM3PEPF0000A79A.eurprd04.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: 40fed17e-84e6-41c7-45b5-08dcb20a5ca8 X-Microsoft-Antispam: BCL:0; ARA:13230040|82310400026|376014|35042699022|1800799024|36860700013; X-Microsoft-Antispam-Message-Info: =?utf-8?q?I47pEdBaZ8Vj2h5zW5C3HV2zv7PXxAX?= =?utf-8?q?y8tn3AlCVuI0U2nBY91nx2iqNNz8qEt4anI/Sy1ehRFX5an1LrGpGNXglQ59YuMI0?= =?utf-8?q?19y1UNUFgCpY5pD4eF8o3y3WSh9FFdW/1YLCmvjixEe1ylQ9LH5CHl+UxP7BJWoih?= =?utf-8?q?NY9bMvfLwZDgLdqIVHw8N+Jj3MSDjkXEX/rZxBFh95f7LGpdR+uvByJ1a5PUEVLkM?= =?utf-8?q?pZggL5XfDlnlIrUaOOd+m3CV8dLLESRBRgdRYjnNRJM+vtVFyH9qvcuUJdk2gMQg0?= =?utf-8?q?2XMqAq0A7DCfqv8cEqImXuu6MpcISGX4SJxSpnFXQ8yoUkhjdX66b4UsIvb7vbH0G?= =?utf-8?q?emwZsNrKBb+WWclRbZswOyk/39r7fZIK5/D2GWOZzUDclLLrEUsoOxq0ug3t6Iy0d?= =?utf-8?q?ZeNCKWkIGJ5iYujr88eWycX5/7yjcfqSRExMACcTYPSoIxrrs+2YUAsR4VpzvvcL3?= =?utf-8?q?baO+PssfZBpAMZAPsQP0PF3PWSIy7nCOdRxa+n3xlZ/K36pqHTowCspGDb8UeHceb?= =?utf-8?q?abCgjuiavw34X2+wBPD68VCqizUXNYE8jOdtLVoo9QyUfPUIwKWcSeRY761x97p5Q?= =?utf-8?q?jwgpHFq/SarCpSpW03pO3NpkqJ9JY8wKmj7JOGPPCqeysPr7xzBqNjx9WUkpwi8mF?= =?utf-8?q?E/ugWV5BXwPjTZzu57x+FTL/YWmsUaYKw4ky/0A3m2AqCyMhSEyzNsYsYRYMtR0O3?= =?utf-8?q?tqcLrCWHQ1yDPPuAe1c/+d2MH9gYWN9s3f794klmB4bi+VYoy7TUjyCX1X5ofOQo/?= =?utf-8?q?0s1DdYI4yWEUyOq32OkAULrvKFDW/VUZQ+v1Vn4V5zYH6zqSHnY3Ft1db6Hlt7eGd?= =?utf-8?q?BPZYq4sXzQi7o6RYUgsCwAMSs5Rc/LSjs5a6y7JI1f0ifZLHACTTosTwBwt+wMeiX?= =?utf-8?q?jm3X/ZcWC3wSKQ+YTNbYwSGCQMxi7SIFJ06A4HZTRmU2OpxMdrUpgoTC0PuBx57d1?= =?utf-8?q?p0VG0F+PsvYWXykugnTjS4cfLH0UJlatUA3D/qGF4uzAwf97TLP6c0eBMVqG3jLaY?= =?utf-8?q?3T+wbLyZD7Y+dZ0LKltA6dBas9CnXUuDE7KY/gf5EgznHJ9DHdsUkDZ0k08ViPEeX?= =?utf-8?q?uYOCk8DbtyFmzZhjwaKGFprkP+zR17mn3GudyWJihc7UHedRlND9NG/6uVPq6WyIz?= =?utf-8?q?VNwVY1HzX9HcbvnO+11ScpqmNiT56NUO2irX+yurY8NogvJZiV0MBLBbYu1wqlwH1?= =?utf-8?q?33P1Jm1/khKnMl/2EDmn95z3CgTPbuXKeJLZ4YPJftwVoxklstWjUOypt3/gQenh+?= =?utf-8?q?FungMlhGaIBirScvV4ozZDRHe4joVbiCStez6+RMkJ1kGkb8JLC7pHuh+WhTksdIo?= =?utf-8?q?ahIIAvjnzwEOE5HqjLKUGqTx/km3hqWWeuCsq1jgeNt0lczO3RZjTppvS6NIdvaO5?= =?utf-8?q?wg6AhqKdVZO?= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230040)(82310400026)(376014)(35042699022)(1800799024)(36860700013); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Aug 2024 09:15:39.7482 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 571992a6-46b8-4841-bcbc-08dcb20a8328 X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: AM3PEPF0000A79A.eurprd04.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: GV2PR08MB8195 X-Spam-Status: No, score=-6.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org X-BeenThere: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org Hi, This adds a new GDB parameter 'gcc-dot-cmd' which allows the user to configure the command used to render the CFG within dot-fn. E.g. with this patch the user can change their dot viewer like so: (gdb) show gcc-dot-cmd The current value of 'gcc-dot-cmd' is "dot -Tx11". (gdb) set gcc-dot-cmd xdot (gdb) dot-fn # opens in xdot The second patch in this series adds a hook which users can define in their .gdbinit in order to be called when the GCC extensions have finished loading, thus allowing users to automatically configure gcc-dot-cmd as desired in their .gdbinit. Manually tested by debugging an x86 -> aarch64 cross, changing the parameter, and invoking dot-fn. OK to install? Thanks, Alex gcc/ChangeLog: * gdbhooks.py (GCCDotCmd): New. (gcc_dot_cmd): New. Use it ... (DotFn.invoke): ... here. iff --git a/gcc/gdbhooks.py b/gcc/gdbhooks.py index 92e38880a70..db8ce0d071b 100644 --- a/gcc/gdbhooks.py +++ b/gcc/gdbhooks.py @@ -783,6 +783,18 @@ class DumpFn(gdb.Command): DumpFn() +class GCCDotCmd(gdb.Parameter): + """ + This parameter controls the command used to render dot files within + GCC's dot-fn command. It will be invoked as gcc-dot-cmd . + """ + def __init__(self): + super(GCCDotCmd, self).__init__('gcc-dot-cmd', + gdb.COMMAND_NONE, gdb.PARAM_STRING) + self.value = "dot -Tx11" + +gcc_dot_cmd = GCCDotCmd() + class DotFn(gdb.Command): """ A custom command to show a gimple/rtl function control flow graph. @@ -848,7 +860,8 @@ class DotFn(gdb.Command): return # Show graph in temp file - os.system("( dot -Tx11 \"%s\"; rm \"%s\" ) &" % (filename, filename)) + dot_cmd = gcc_dot_cmd.value + os.system("( %s \"%s\"; rm \"%s\" ) &" % (dot_cmd, filename, filename)) DotFn() From patchwork Thu Aug 1 09:16:51 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alex Coplan X-Patchwork-Id: 1967547 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@legolas.ozlabs.org Authentication-Results: legolas.ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=Eoueg+C0; dkim=pass (1024-bit key) header.d=arm.com header.i=@arm.com header.a=rsa-sha256 header.s=selector1 header.b=Eoueg+C0; dkim-atps=neutral Authentication-Results: legolas.ozlabs.org; spf=pass (sender SPF authorized) smtp.mailfrom=gcc.gnu.org (client-ip=2620:52:3:1:0:246e:9693:128c; helo=server2.sourceware.org; envelope-from=gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org; receiver=patchwork.ozlabs.org) Received: from server2.sourceware.org (server2.sourceware.org [IPv6:2620:52:3:1:0:246e:9693:128c]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (secp384r1) server-digest SHA384) (No client certificate requested) by legolas.ozlabs.org (Postfix) with ESMTPS id 4WZNfk2Pplz1yYq for ; Thu, 1 Aug 2024 19:18:06 +1000 (AEST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 97BA1385843B for ; Thu, 1 Aug 2024 09:18:04 +0000 (GMT) X-Original-To: gcc-patches@gcc.gnu.org Delivered-To: gcc-patches@gcc.gnu.org Received: from EUR05-DB8-obe.outbound.protection.outlook.com (mail-db8eur05on2060c.outbound.protection.outlook.com [IPv6:2a01:111:f400:7e1a::60c]) by sourceware.org (Postfix) with ESMTPS id 8CB5A3857000 for ; Thu, 1 Aug 2024 09:17:17 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 8CB5A3857000 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=arm.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=arm.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 8CB5A3857000 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f400:7e1a::60c ARC-Seal: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1722503839; cv=pass; b=LqCoUXtcsSSM+ndOQ/cuFCH5cKiSxtVb5wc9qthUI7fOg3/iGYkIU1RMEVlDIbtUdtUakowLhsHcQpwuNCt9meEQzb77RtvWPhrvS9sbsXO8YxwMbfZzwIUkza6dkX8cauNV82DIH2jWuRWJp7bDJV1WO1bsUks+6AB3fTBDJvs= ARC-Message-Signature: i=3; a=rsa-sha256; d=sourceware.org; s=key; t=1722503839; c=relaxed/simple; bh=dp/hxDOk/V5jgm0w/H2y385SDV06/mXqcio74Hpnh6E=; h=DKIM-Signature:DKIM-Signature:Date:From:To:Subject:Message-ID: MIME-Version; b=V6Dgh2HvK0qCTcGRvj0Ot+GIOEMqEBfJbDSeIqXn6XHsiHWCpYCAeDi18z43hGoHazPoXzXPAhTqvzpg66HLrsBD9Z12s0K2FttpzmGJlTf7OENwcih+LXfcqhgh1vDnWTv863e87MN22Ftv66z1L3M2IWyMpEphg44v2JNSOiA= ARC-Authentication-Results: i=3; server2.sourceware.org ARC-Seal: i=2; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=pass; b=XnQ2r+IiKE5QejBx+K6xZygvtzhg47FnrKlb7adedYv5iigQ7vrTO6g391Cwp/pxBhRZC5x6eqF8lpa3uTdaEfVmeQ/vsyBuzaypRPlv1+0Qq7Eu2xSu1+wzZCZZdFqeYrb8C3iIedhmWg414CGn7k++M3r8e/VADb/zhWhbAC99ptDMLBuBp6WkP1pOe3Nx8pqRBPLKihBOt283Gqa6KENZDoNLVwp9SfuTYvoMFAAgSBtWDvCTba2/Le1s+/ALjtt9FhbBOOnT7aOG0l+B5bsMBgk8sfokzxuqLUmTEMJLkBVlU8/MVfOmH6m7mQeeTZs8LjzIQyFj8vuowm3nrw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=TBSo1KoDET3EVqVQxaDYV8FerRQlaUc7zocJMu+hp64=; b=mHQINA/VJGUs2Arz4GM5rZ8kWXJiMwc7yiGZU5yrXjV9n2GkPWccRLDqwH5UfFrGNwmO7NvPGa6kz2eToUANyBdrWx4l+5b0WMBRFatDK+XXpSQfdt3mHCDp76sFZQZE8j2HU1hBEx+2d0A45sHAyVbfAJn5r+zNJOzhxi6/WFJ2/iiei93q86qMPfFi06tYQiX6lRwv3Gltx5yyxYX/SCtJoGNNIVQP2BQWvlzGm7vHfmQeRo77Yz1DaQfaCpNGZT0VexGr0c1Q+VInUvnEYw2vyBVNP7bLufk+3bsF3kfhZ7njCNvMRktmHB4uqonbqMDqfON3BWpFxyxBBica+A== ARC-Authentication-Results: i=2; mx.microsoft.com 1; spf=pass (sender ip is 63.35.35.123) smtp.rcpttodomain=gcc.gnu.org smtp.mailfrom=arm.com; dmarc=pass (p=none sp=none pct=100) action=none header.from=arm.com; dkim=pass (signature was verified) header.d=arm.com; arc=pass (0 oda=1 ltdi=1 spf=[1,1,smtp.mailfrom=arm.com] dkim=[1,1,header.d=arm.com] dmarc=[1,1,header.from=arm.com]) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TBSo1KoDET3EVqVQxaDYV8FerRQlaUc7zocJMu+hp64=; b=Eoueg+C0EcNkSeZgeG1PC/l98z3AtImtDF2p0bGV8OezF8MOtexqAImSUhghLq8a2NTjRJgT8yrzeqNq5CphuPy6jBVJ72g9HcUvKhJZ1WllGHtaMyBD+2n4bLdcksml1MdviHX2RPq7TbG4VIJoZXfs5sjsN8PLFl5TAKK+DJ8= Received: from DU6P191CA0034.EURP191.PROD.OUTLOOK.COM (2603:10a6:10:53f::6) by AS8PR08MB8993.eurprd08.prod.outlook.com (2603:10a6:20b:5b4::22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7807.28; Thu, 1 Aug 2024 09:17:11 +0000 Received: from DB5PEPF00014B99.eurprd02.prod.outlook.com (2603:10a6:10:53f:cafe::5b) by DU6P191CA0034.outlook.office365.com (2603:10a6:10:53f::6) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.22 via Frontend Transport; Thu, 1 Aug 2024 09:17:11 +0000 X-MS-Exchange-Authentication-Results: spf=pass (sender IP is 63.35.35.123) smtp.mailfrom=arm.com; dkim=pass (signature was verified) header.d=arm.com;dmarc=pass action=none header.from=arm.com; Received-SPF: Pass (protection.outlook.com: domain of arm.com designates 63.35.35.123 as permitted sender) receiver=protection.outlook.com; client-ip=63.35.35.123; helo=64aa7808-outbound-1.mta.getcheckrecipient.com; pr=C Received: from 64aa7808-outbound-1.mta.getcheckrecipient.com (63.35.35.123) by DB5PEPF00014B99.mail.protection.outlook.com (10.167.8.166) with Microsoft SMTP Server (version=TLS1_3, cipher=TLS_AES_256_GCM_SHA384) id 15.20.7828.19 via Frontend Transport; Thu, 1 Aug 2024 09:17:11 +0000 Received: ("Tessian outbound 64d41e6a4c04:v365"); Thu, 01 Aug 2024 09:17:11 +0000 X-CheckRecipientChecked: true X-CR-MTA-CID: 784beea2d6708f3c X-CR-MTA-TID: 64aa7808 Received: from L97610b3b7ddd.1 by 64aa7808-outbound-1.mta.getcheckrecipient.com id C5D8592D-6B19-45FD-BFFF-8767F493B363.1; Thu, 01 Aug 2024 09:17:03 +0000 Received: from EUR02-VI1-obe.outbound.protection.outlook.com by 64aa7808-outbound-1.mta.getcheckrecipient.com with ESMTPS id L97610b3b7ddd.1 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384); Thu, 01 Aug 2024 09:17:03 +0000 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=rjLpYHjm4kN4xU9jdVaVxbLm76qM2XEsn2rfjkMYFX0j8ZPyFZb1hLpcFhkoiSfDNLmsLYk7T7hpDcAnaL7oyWKmWdt0fbWeMSx/7gcolMRSyHZ3bxoOVLY0tvgZnGLKU9LaGmxfPdA0Xh9WVcmw/OqdEwCC1EvN96r0kDQvGEp3+oSQCwUKDpgl9onuqF7NLH0Pxd0y20o1J99OLIrVRJzahsDS/Qpkwwcw4Y6u18FkVrjJCLvOpNOaP1ZFVmlnLI9g6hf9vEJoLONP4GhbWU/VzypjvewK0Wap/7DV6VuiOPLElkpCUXcL6yAr/4Ly0IWJrQbJR86nCqyDdX1dBA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=TBSo1KoDET3EVqVQxaDYV8FerRQlaUc7zocJMu+hp64=; b=URSzCpP4MeuSsHkLk+g0sH/OzABPYRw75aXNVs1bToMqsZnEYVJSGuV9R2xU4mTb3Jvit/pKcM4xa0gaZFmDEPr2kROOlgYGfbvIYbJnXXvihuX6q7b5zjtO/ZoKa5V2iJUVDsw0Zh18NnW9aKx8QHv6RhcGWVAflKYsy8oOM9Rt6zq2ERysSuEs4quFcESpkrpoO+goCQiLa8C1/haKHnMs8wI0Ogz1QE75XDESEH6KQUyoNIgSqFpCXrnQ+SqMLQMD2LG1VjPUmiYsXEGmZIIkd2F5ndwyTjKCzNh00wQS+qJ9iX4CYQx64dfV7HHC1dKX/MXFT3zPP6b514CmMA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=arm.com; dmarc=pass action=none header.from=arm.com; dkim=pass header.d=arm.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=arm.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=TBSo1KoDET3EVqVQxaDYV8FerRQlaUc7zocJMu+hp64=; b=Eoueg+C0EcNkSeZgeG1PC/l98z3AtImtDF2p0bGV8OezF8MOtexqAImSUhghLq8a2NTjRJgT8yrzeqNq5CphuPy6jBVJ72g9HcUvKhJZ1WllGHtaMyBD+2n4bLdcksml1MdviHX2RPq7TbG4VIJoZXfs5sjsN8PLFl5TAKK+DJ8= Authentication-Results-Original: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; Received: from PAWPR08MB8958.eurprd08.prod.outlook.com (2603:10a6:102:33e::15) by DB9PR08MB7512.eurprd08.prod.outlook.com (2603:10a6:10:303::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.7828.22; Thu, 1 Aug 2024 09:16:54 +0000 Received: from PAWPR08MB8958.eurprd08.prod.outlook.com ([fe80::9f32:dc2a:5bec:aeac]) by PAWPR08MB8958.eurprd08.prod.outlook.com ([fe80::9f32:dc2a:5bec:aeac%4]) with mapi id 15.20.7807.026; Thu, 1 Aug 2024 09:16:54 +0000 Date: Thu, 1 Aug 2024 10:16:51 +0100 From: Alex Coplan To: gcc-patches@gcc.gnu.org Cc: David Malcolm , Richard Biener Subject: [PATCH 2/2] gdbhooks: Add attempt to invoke on-gcc-hooks-load Message-ID: Content-Disposition: inline X-ClientProxiedBy: LO4P123CA0538.GBRP123.PROD.OUTLOOK.COM (2603:10a6:600:319::8) To PAWPR08MB8958.eurprd08.prod.outlook.com (2603:10a6:102:33e::15) MIME-Version: 1.0 X-MS-TrafficTypeDiagnostic: PAWPR08MB8958:EE_|DB9PR08MB7512:EE_|DB5PEPF00014B99:EE_|AS8PR08MB8993:EE_ X-MS-Office365-Filtering-Correlation-Id: 7620eb68-f1b6-4882-d2b1-08dcb20ab9bc x-checkrecipientrouted: true NoDisclaimer: true X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam-Untrusted: BCL:0;ARA:13230040|1800799024|376014|366016; X-Microsoft-Antispam-Message-Info-Original: 7HOuXNXTiF4mRS3TCXRBf3aQ4H+4gLF5+T6TKWLFcwLwh7pIYVs0NdzOS/ikuamc6rkdp9XA7pCcpECFT9uIUyH95YQAsuVKkwnP9ZXkAuvnA9mZhhR6+VVKUMQalVjPt4ueOU/TeOOC/0uLaYavo/Zm+UGvzv8Gm9ISEL4cwJSo7dd09192veV94k4vaBbEHuPH5VB1LqN6GY/XKP3MLtzcKhlA4NbxtZTF08AQj7aVaHL3VXinIa6QgMWLG7g6XlfNXBbiL5NoHgixFxAz+88eR2Hg/KtoaaVD9FXau+/kU/XeY87aBPA2jJzFdJgo0QTYEqK0CBmjlr9vFXuHujPaWfFv7WlTZwgkYVtADCO9egijjPSTjWh1SbJeOO4P45x0jnDG0MIN7GjouvBKXZ+dsjF+JrAyQ1e+POQz6Z58IYNhwz4796hlw0Ysg8TEruehsCKFJcbH4R/iBBkCd50Rc0BEo1axcEXAVjS0cBRcJrURkqv/HH7kO1dH2mWdID/EJnqYjP3VM6cEivxnIw4y6L+dveaXA5Pgwt8xyTTMDtY2HvUI+x4OeFY9b6KATdBl0s9ZEiqEflOJg2e7j/hnZKOfZfNa7TQsTQct1lP1HoNvw56Q9oGqOXmq9INe0iCb9eT0gnAs4BZt2Gr/fEPkghfjrplGrYJUgwptc28tMd23gOTgeFatIxMZPELBgnmRAJiS+cYTt4Av2GePTfoHr+PPwmB5jxQr4K/5R74qb7WNk0sGWPBIBvb88+neTN12jnwHXLKrfwTg8vYY4b8dWGAeNhSAfthmdomjeUFVSXmwL1KcnMibwjo0cohp3YmPi0h8nf0+0VR4dYiEAjd2txEREx2nnJGcc85swO5D0eMsEOZpVUQPbtnhQJ+9z54Q1/JjIbHGqf2k3cL2qIoesIBhjCfWgLtwnQkrIPdZJFbaLquVhjIkBZHZYlghHFeNyGfQ7z/h1TLu+vLZsE5bB3ThSIb35r1QWtIgE17EmOZW47naGG90S9thCoZE5sKMU/FlNYFmDKdzbqCH7jdXfcflQd35dfY8LKuYRbh0cNBt+ny6Rg3qXEpwiMVX7FJeSYykjccLufB2SBRWgmwaDQiXMbTvh+tcbIOreAvY9pj1N2qzLvYxvZ2lFrY3oMhPEEWfv3oTkamqP7Ud5iB/zB43DEOcbamy64zGeln2BfI3r1529c4yrJiSaKEBYKDtc2YiJONsaovZUmkROMIWNcUVGCl/tumfz6MIQlhtICc+lqlUBmdhm25QMVCRMlxHjJ27yJDLdPglscN9I1L+ktpTCatvtR0kG1AYxIEpacOeAkYRROZUlfeHLfpshdIsBF4uBdB/plDiI5QWaA== X-Forefront-Antispam-Report-Untrusted: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:PAWPR08MB8958.eurprd08.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(376014)(366016); DIR:OUT; SFP:1101; X-MS-Exchange-Transport-CrossTenantHeadersStamped: DB9PR08MB7512 Original-Authentication-Results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=arm.com; X-EOPAttributedMessage: 0 X-MS-Exchange-SkipListedInternetSender: ip=[2603:10a6:102:33e::15]; domain=PAWPR08MB8958.eurprd08.prod.outlook.com X-MS-Exchange-Transport-CrossTenantHeadersStripped: DB5PEPF00014B99.eurprd02.prod.outlook.com X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id-Prvs: f896764d-5410-48df-d4ff-08dcb20aaf38 X-Microsoft-Antispam: BCL:0; ARA:13230040|376014|1800799024|35042699022|36860700013|82310400026; X-Microsoft-Antispam-Message-Info: =?utf-8?q?z+vc4RPN0rYMl7JKw83p1BbLvZSUcbB?= =?utf-8?q?+/7NG3fDTXnx5mrd/Nkr6Wp3US3OCXf+6lT0fJ6cmyRU/FfKbAGOcoqmfptHXAxs5?= =?utf-8?q?bhBF+12lQkbs0fbsLPR191fOJqJnRYUxjtRpDVu2ejX7MqUoM1VZo+VYoU/mEcTZQ?= =?utf-8?q?uHjvqKZGKF/KgyDAz7WU2ljfmRynpLy2RQ4+MIKLwpusxf5rxdiKZ06cQL3iXxboA?= =?utf-8?q?Kv5XvOC9n8D5gE2rzWiIuAoXryGE4QXiC9iyn1UZ1lJteJkLeZucZrpgWL5PXGBjY?= =?utf-8?q?3KOfpAP13UGLOLKlOYTeJZChqnp/qvgcis3xMDkPKPgP0LG1LWL5iExOSdGh/y/ol?= =?utf-8?q?KjuhBL767kwJeowt6QYoaivzNJzG8PpGk1Za42GILJuaxDIDdotNI3nM0BoKCUaNh?= =?utf-8?q?E353Ebe3lqx8h3DE2ZoYCdb6Xoc1QwNujdTsttRPgoEkxTGXaev7YDi1Z0Y+cpdPZ?= =?utf-8?q?N2n/yD+vRfGysjt3AAEri0D0c9nL+jsTqAxW9N0wbgs4desMDr+cwgYECLPyExCYj?= =?utf-8?q?np9jxVJJlEW0BMJ8Z6mjbjVgwp15PeUsCg41IyGI92SLSeySm+qFRQWONqS6PNQGU?= =?utf-8?q?XM7PwPogToc5aLqXyJS5AS6LXAHJg9iUMepwRD/1q3RXah6lJBmwPvUQB6mOBuEyE?= =?utf-8?q?urZu0p6ik33ijtft3lDbkFpUj7aoVJQOyoCCslUe1cIlkrw9cO4TAlGrcAs+3ep5D?= =?utf-8?q?CoUOj2PXrsp8Gnx5IV5mrFRGPb2D+9Ei+ER8P2x69W5IKFpJyv/3spl2N/vCv87v0?= =?utf-8?q?rEl1GDptkS6SDEN4vIia6TWawgx0Uy4j8cKp07m/50rzS2Qz20ihsKKDBpc1+4xa0?= =?utf-8?q?g78cAY7fD664blvQPyaQl3Rx7IrroK5p8I/6wqZ8mpXyycLa/OTpda65TAkXaBUVN?= =?utf-8?q?+HyB1hikFZiKVTR3c35YLa7ndh0zZSoSTRgR/tbOIUtscDP6Hg9QTIXkVyDLU4y4L?= =?utf-8?q?xdBULHZwpFqdb1va/ELdqWQ+yPVDlGrj1naGw9bVMpGOSfFP6tZHGcGmtGw1aiP33?= =?utf-8?q?wTf+0qNAD/ZdeWbe5/i9jjY36aip+6COv/8Fk78SkTSSPSH92k06NHocIGjm1COqp?= =?utf-8?q?hQG8LsWFCFH7lhZJket5keISoid2QPRI4n7g7DCP5zr0TJN9+7oY+L6z7MH43+fI/?= =?utf-8?q?3fznJHcahkqwkjrbCZBSDArHRmEWvzoUepXdQXq5B1lqJeCGeRBY+wX8ZxK/LkqSw?= =?utf-8?q?xYGn9UoxGDDJdtV7RgbM++lBRQoysUo6Uq3h6M440BXxamfOdOjVkbMqx4/1qGZJV?= =?utf-8?q?sWExRtT1KqXD6cRAxYCckFLQtfPVLQTY2F6cpluhqDbC3Y7tN9cIjXrPKwDSGjWSd?= =?utf-8?q?8a3fJYinnRoqoJWkCmjsCReutis5AjNPHRBj7vOFeumDdWJONn8t1xz3X+YI8Dm8u?= =?utf-8?q?tWF9Ftxyn+m?= X-Forefront-Antispam-Report: CIP:63.35.35.123; CTRY:IE; LANG:en; SCL:1; SRV:; IPV:CAL; SFV:NSPM; H:64aa7808-outbound-1.mta.getcheckrecipient.com; PTR:ec2-63-35-35-123.eu-west-1.compute.amazonaws.com; CAT:NONE; SFS:(13230040)(376014)(1800799024)(35042699022)(36860700013)(82310400026); DIR:OUT; SFP:1101; X-OriginatorOrg: arm.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 01 Aug 2024 09:17:11.5188 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 7620eb68-f1b6-4882-d2b1-08dcb20ab9bc X-MS-Exchange-CrossTenant-Id: f34e5979-57d9-4aaa-ad4d-b122a662184d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=f34e5979-57d9-4aaa-ad4d-b122a662184d; Ip=[63.35.35.123]; Helo=[64aa7808-outbound-1.mta.getcheckrecipient.com] X-MS-Exchange-CrossTenant-AuthSource: DB5PEPF00014B99.eurprd02.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Anonymous X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: AS8PR08MB8993 X-Spam-Status: No, score=-12.4 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FORGED_SPF_HELO, GIT_PATCH_0, SPF_HELO_PASS, SPF_NONE, TXREP, UNPARSEABLE_RELAY 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: gcc-patches@gcc.gnu.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gcc-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gcc-patches-bounces~incoming=patchwork.ozlabs.org@gcc.gnu.org This extends GCC's GDB hooks to attempt invoking the user-defined command "on-gcc-hooks-load". The idea is that users can define the command in their .gdbinit to override the default values of parameters defined by GCC's GDB extensions. For example, together with the previous patch, I can add the following fragment to my .gdbinit: define on-gcc-hooks-load set gcc-dot-cmd xdot end which means, once the GCC extensions get loaded, whenever I invoke dot-fn then the graph will be rendered using xdot. The try/except should make this patch a no-op for users that don't currently define this command. I looked for a way to test explicitly for whether a GDB command exists but didn't find one. This is needed because the user's .gdbinit is sourced before GCC's GDB extensions are loaded, and GCC-specific parameters can't be configured before they are defined. As an alternative (to avoid having the callback), I considered having the user define a convenience variable with a well-known name and using that (if defined) in gdbhooks.py to set the default value for gcc-dot-cmd. But that seemed like a hack. I'd be interested to hear from any GDB experts if there's a better way of managing configuration like this. Tested by invoking dot-fn with/without the above fragment in my .gdbinit and observing the change in dot renderer. OK to install? Thanks, Alex gcc/ChangeLog: * gdbhooks.py: Add attempted call to "on-gcc-hooks-load" once we've finished loading the hooks. diff --git a/gcc/gdbhooks.py b/gcc/gdbhooks.py index db8ce0d071b..7a64c03b8ac 100644 --- a/gcc/gdbhooks.py +++ b/gcc/gdbhooks.py @@ -865,4 +865,12 @@ class DotFn(gdb.Command): DotFn() +# Try and invoke the user-defined command "on-gcc-hooks-load". Doing +# this allows users to customize the GCC extensions once they've been +# loaded by defining the hook in their .gdbinit. +try: + gdb.execute('on-gcc-hooks-load') +except gdb.error: + pass + print('Successfully loaded GDB hooks for GCC')