From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id bACDCUapKWnfez4AWB0awg (envelope-from ) for ; Fri, 28 Nov 2025 08:53:10 -0500 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=labware.com header.i=@labware.com header.a=rsa-sha256 header.s=mimecast20220511 header.b=NKIxyCtW; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 11C5F1E08D; Fri, 28 Nov 2025 08:53:10 -0500 (EST) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-2.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI, RCVD_IN_DNSWL_MED,RCVD_IN_VALIDITY_CERTIFIED_BLOCKED, RCVD_IN_VALIDITY_RPBL_BLOCKED,RCVD_IN_VALIDITY_SAFE_BLOCKED autolearn=ham autolearn_force=no version=4.0.1 Received: from server2.sourceware.org (server2.sourceware.org [8.43.85.97]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange x25519 server-signature ECDSA (prime256v1) server-digest SHA256) (No client certificate requested) by simark.ca (Postfix) with ESMTPS id 1B1BF1E08D for ; Fri, 28 Nov 2025 08:53:09 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 430D33858CB6 for ; Fri, 28 Nov 2025 13:53:08 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 430D33858CB6 Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=labware.com header.i=@labware.com header.a=rsa-sha256 header.s=mimecast20220511 header.b=NKIxyCtW Received: from us-smtp-delivery-114.mimecast.com (us-smtp-delivery-114.mimecast.com [170.10.129.114]) by sourceware.org (Postfix) with ESMTP id 9098F3858D20 for ; Fri, 28 Nov 2025 13:50:07 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 9098F3858D20 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=labware.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=labware.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 9098F3858D20 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=170.10.129.114 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764337807; cv=none; b=v2G3O4yWxJ907m+CDEZYgCkz4xLhmNaZ4fmWgFl3ln43mayiW+sLHaYYLBzSz3JUIuj19j0cuu3+aGzuJJw2H/SnfeRUhnc6b2CHCMWTiPEXqDDZ8b/qdAN7IXY+YpCcZd+HRVehMPF22f8pglgJlsXUoJZlwq0YUMw1AF246eQ= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1764337807; c=relaxed/simple; bh=/cA3b9rQ8My40S3p6TTqAIJt0MDFuBENMzE4/J2Qa/0=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=FQkdWoY5Iud+BRtRG68w8m/FKbFcPZblJF5lDZl5YNK6oirhQ8mhdgMFXkeisOKFfU2tlNkeg+dngRBwQwOaPqS2JrDJ/Ps/ySSNCwcMCYW1g0cUmOMfFo26o7zGjESnxFSgJmBUIMSitecC0ejpNhmif0yk8CqZoranp/NF4x8= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 9098F3858D20 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=labware.com; s=mimecast20220511; t=1764337807; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=yamZ/r66x2K14EBFHd2VTTgQLqKTRI0t8asi5o0Tiyc=; b=NKIxyCtWY+PhiS+8B/5k0QYWJaNu+MsA6WucxoQUSUiAWKEVVITH25pHzaW1us/msXZAya 7AVIXu8WkYXGrQxrOT6pgF2pdLTmNVadoM+kWkSrgnAtK5mEeBoh2hoZlrLnDb7Bq4FYZh gBuA7L3QWKYKKOaN7Vf2QxGkWSTRM3w= Received: from DM5PR21CU001.outbound.protection.outlook.com (mail-centralusazon11021117.outbound.protection.outlook.com [52.101.62.117]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-561-wVmG536JNwGZiHDxXPJFBQ-1; Fri, 28 Nov 2025 08:50:06 -0500 X-MC-Unique: wVmG536JNwGZiHDxXPJFBQ-1 X-Mimecast-MFC-AGG-ID: wVmG536JNwGZiHDxXPJFBQ_1764337805 Received: from SA1PR17MB5365.namprd17.prod.outlook.com (2603:10b6:806:1d8::11) by SA3PR17MB7107.namprd17.prod.outlook.com (2603:10b6:806:381::12) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9388.6; Fri, 28 Nov 2025 13:50:04 +0000 Received: from SA1PR17MB5365.namprd17.prod.outlook.com ([fe80::9a:538a:fa42:730e]) by SA1PR17MB5365.namprd17.prod.outlook.com ([fe80::9a:538a:fa42:730e%3]) with mapi id 15.20.9388.003; Fri, 28 Nov 2025 13:50:04 +0000 From: Jan Vrany To: gdb-patches@sourceware.org CC: Jan Vrany , Simon Marchi Subject: [pushed] gdb: update blockvector::lookup Date: Fri, 28 Nov 2025 13:49:47 +0000 Message-ID: <20251128134950.1763596-1-jan.vrany@labware.com> X-Mailer: git-send-email 2.51.0 X-ClientProxiedBy: LO2P265CA0263.GBRP265.PROD.OUTLOOK.COM (2603:10a6:600:8a::35) To SA1PR17MB5365.namprd17.prod.outlook.com (2603:10b6:806:1d8::11) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: SA1PR17MB5365:EE_|SA3PR17MB7107:EE_ X-MS-Office365-Filtering-Correlation-Id: e29ea376-9476-4be4-8f26-08de2e85083a X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|376014|1800799024|366016 X-Microsoft-Antispam-Message-Info: =?us-ascii?Q?j8bUnQu7zd4rMXaGGIeh0YqTm6sCSmrDtKKrZcuJ3U4rwthcCqi9cQOKdug2?= =?us-ascii?Q?hglWguQHLmcbf1dYR7NphU0NPuQPQDDAPnwn7yPuKoKgP2pTEvYUM9cpMQN5?= =?us-ascii?Q?/SEWgMU2aQgCPET17pnatUx72xSKDgnhk/7JtzdCwcDsB+xyk+RXFVKXYbO2?= =?us-ascii?Q?j7OXb7z8cPPnXWS1l82cFFs1yG5y0c0vrLAKiA/Es8txa/FYUof2ourM0LXU?= =?us-ascii?Q?v+eXZXJL2beogBbuDarljPYf4+epVy6ULkLxh3CMYcPSH4qqC++LuohZHS2l?= =?us-ascii?Q?oMST0f4cqyc6PrqfVDJPJSbfP1gbpr3in5SIbPA//0LlDfLD6QA/lyW3UMI9?= =?us-ascii?Q?dtxndlCZQQv2irYmatrWeJA0o7WVYb7SbYNEwq2XpyO85D+SDhOzHCkun/Q4?= =?us-ascii?Q?GsPrVLI8jjj7EalvnLmQ2qN9v5et1pVdlgeKB2lpq+oz8xO8nxWo6tKbrZbH?= =?us-ascii?Q?ri1DOqCWU4ex9a6AG06naucmIWGQLOmadU2oDl6LAZH3csP3cFbYQMuFM256?= =?us-ascii?Q?9nXLwUDKbUVTPs0FlvK60jZ6Ic1iDyDneU3susIJN1VMQ6tAJjJICdZQIUBR?= =?us-ascii?Q?xUD3ZjWEPgd8CDyNF7sF1MWEQe0VzfjOKCMCT7UQ/+fiOEnJrlztNQ/Qne0k?= =?us-ascii?Q?gfOp7tlT20rfCcbq0gBMyTcB2IkhBpsN3/d/vh5z9WUZ5rqTpYEPvCwQGOQy?= =?us-ascii?Q?hgDYPjuaMzZwg89q94FpMIMsiD9LDf1dM1kmFffr/aqgxNI/D/3V0G1ZQItL?= =?us-ascii?Q?moEHXywSwXKSfa7c1pmC3LZOC9KhOYNWYYWOIMJM0xZd3HmGpssm8apZ7ohb?= =?us-ascii?Q?T3+DHV5gKIQfJ12tuFZy82/wvyrUDbx0bqB4tmJ9GOLu9DFl6zq4Ry7ORBxU?= =?us-ascii?Q?wCIoZ2OoKTCZ2VUvXNeqQD8FneqgjaykDzQTwJ6hp3ys92K8NtR8zwMz5XYT?= =?us-ascii?Q?maRKwvz4tC9AIyZ+OyCG44dZ0f5M0AnNlA53RCw+mZoia/Y5ICfYJn0mJLnt?= =?us-ascii?Q?Kl6LDd1kvYJkFTQf0P21wObyDdWpU80+5c45VCedcu226B7iT3Zqjz3u21kr?= =?us-ascii?Q?mHLTwf6hciq8lPhEftwN0cxt7g4Ny0SJ8c0rkZCJ7AHdoNzS2woc8jxABWMu?= =?us-ascii?Q?bPsrn8q2r/zzEEQ69UyBz/Co2mXtF5IsInMAF7P5tLFnBZtIa+iTjXFpxPpM?= =?us-ascii?Q?qBBCpNM+LOXWyYAG7yAi5aWMXelHvP/dCRi5KGsWud+YJ7JbmeiPx1q3G6bs?= =?us-ascii?Q?peeGCm3NBAc6qyeplfrjcYl1+482OFHWEaX3ChwQ2LVWz1LDX44RZNYXXYeO?= =?us-ascii?Q?SLvzsaU1p5Kjzma6JKMjM7jEcU8G2Ex4ozsZoJTQ63EwHfuXHjqIVrMa4X+1?= =?us-ascii?Q?BZcSZecAKSVEU8JWKSnAPAcPJhaHc/T6c4WA9fh4pIGyv9QGqQsZoipRQVX7?= =?us-ascii?Q?jUvxf1wFvnOj9tHVHRNnX6p6TPSQ3Dd8?= X-Forefront-Antispam-Report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:SA1PR17MB5365.namprd17.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(376014)(1800799024)(366016); DIR:OUT; SFP:1102 X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?us-ascii?Q?m5HasNPctg2tr/YU3S4Fl3DJaDJdYBIPk0v9xIK+5DsFhai2GMRqCNlac9w5?= =?us-ascii?Q?e0/Vp0GCMEB5gLwVubm4pqhZzhdOqyRcdc9YQRK0cfQR9QAWroDyeGcKXdS/?= =?us-ascii?Q?ppPFCXyQCgGUFlBw777WGfQl1cNTqxFic75t2mmSB1737LtUsAZ9F+j+huu8?= =?us-ascii?Q?88DbTdFwpUX7DBWOvd0g2ykgqSW8qOUukJoTX/BInJswzvcGyIHGWT7VdCtu?= =?us-ascii?Q?IkiR/2yGHe5nVgXUSwUv43vQXncEB+qmfiyrnsO8vOrHy0ag5QKvcAxAc+Ie?= =?us-ascii?Q?llMbF6xlduEI6c3Pw+XUdGsbXMOXkTcFMcOjVPw1UhopZTy7jx0A9ga3Gj5K?= =?us-ascii?Q?OqU8GKgComP1OCuJZ9/fxrs5CDijWuH0RGEjt1k3RONeMF1Ydn021faQKwoE?= =?us-ascii?Q?lqmMY2cw793jfnk+T8CUa5Cxr0Yt9F+Og/Zr0BA/yoq4TlfGq8VJHy/YiTB+?= =?us-ascii?Q?mnGrznzp6EianM8jPtYtfiwe2HcNPHXucL4Nv35p0SMYArM1U8H28ZVfTfP2?= =?us-ascii?Q?U1/kou/ttPBGesvP60OM3keQKCayA3GbpbfZR8la1M0BGuMpgrpaSno08hZB?= =?us-ascii?Q?ElAADY2KB35mOfOXAp5WPXmm8ZlS7KJ+n8/8/juVsYZbIKfnLNnW0AA5pZVM?= =?us-ascii?Q?HdRqF90A8uoRESVQPj7wyHS76jujaLwnB10wcJdatmXKKZmAEEAHs0Md4Muc?= =?us-ascii?Q?Md8FPTaAjyBQvGXDiJkGkvdZl9GErSYurUEtjGS2gvXtpBvDcPS1xGGV9fDS?= =?us-ascii?Q?UnB3r7lVs28LUFj3nJf+XnCRLTILCS+phTCl5Egu24Ay434XDJFsWuFv4Bd0?= =?us-ascii?Q?3e792rE7zPp4AbR5l02sZgtv7Y90FzWxRQMUlEopX9v3ZMp5mCzXObs/1S6l?= =?us-ascii?Q?R0CVLIzJLGsGdx16Gt5pZmHcIyN0JRJJxJTnR56zp8YLls1zwyMtvnONi+68?= =?us-ascii?Q?I9enBuSJimRgxhKHmTsNSh3iVARW53f7/Np4YaubdiKh0uR0DWf9qKhBB/ZA?= =?us-ascii?Q?VFzMXAuCJI0UA+MnXJ5s3VtZIkb+T9IIAcAo8hok7eGggizQb5OtemLfGtDK?= =?us-ascii?Q?HyR2hu0orVKN8zeFxCgtXq6J6n6QxVkvOC5PyDv+cB0qSipYcWoU6aIZk9PW?= =?us-ascii?Q?720lTtINBozC4Yqpd1kL4HEWoFu+E2q2bn1yVgftmACjmbd1EdunTUgpWjUW?= =?us-ascii?Q?DyBLKulXnr7eib370Bsl5N9EOoaTIOW1hIpEwR8RgLG0vblUeERLTSe6pdOU?= =?us-ascii?Q?AfMkqKzFaRe0HYk7E92JY29BXCe6Tnh1zlY7K9zMxpgp7u+noowkE7gCnQfL?= =?us-ascii?Q?HB54UGhUxl/WtdJY71zs0NwuTTl5XlCBTlO2YBK4889yuLaxwFr92fd0xjq9?= =?us-ascii?Q?Cq0WUQmwJ9xJtTI581tPaBRhtCVw9gL/y7srIOlr71DMb6zAClE7y5mXZNA1?= =?us-ascii?Q?TIhw6i79FngMlcptCY+RTOIqJdzIz6NESo/X4p0LMBLG/fTdHBlfgLIMRnO7?= =?us-ascii?Q?NHqSI2djd3J1OZweL3aycrhNuKg2Ak9vsjOYh7uvIZ9GCct6j8+MCm39ncl2?= =?us-ascii?Q?md1ebcxMmrYkIRjdhRr41HG6Ig0C5CsrqRA4XMC6?= X-OriginatorOrg: labware.com X-MS-Exchange-CrossTenant-Network-Message-Id: e29ea376-9476-4be4-8f26-08de2e85083a X-MS-Exchange-CrossTenant-AuthSource: SA1PR17MB5365.namprd17.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 28 Nov 2025 13:50:03.9529 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: b5db0322-1aa0-4c0a-859c-ad0f96966f4c X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: cd5XS07C1mItRfx/0xfP9HqDWYvL2EY9zaXFHZ1COrbU/WqYPH21dv6zh1JGSvnTG2q/mGiYDms1A+kIRAjFOA== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SA3PR17MB7107 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: FImgSXVoEOz9QK6KDbAj8V9QtujC30pxGla18EAKOC4_1764337805 X-Mimecast-Originator: labware.com Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=WINDOWS-1252 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces~public-inbox=simark.ca@sourceware.org This commit changes blockvector::lookup() to improve style and readability. It also adds quick range check to see if given address falls into global block. Approved-By: Simon Marchi --- gdb/block.c | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/gdb/block.c b/gdb/block.c index 98088aa3807..e21580bcf63 100644 --- a/gdb/block.c +++ b/gdb/block.c @@ -810,12 +810,17 @@ blockvector::append_block (struct block *block) const struct block * blockvector::lookup (CORE_ADDR addr) const { - const struct block *b; - int bot, top, half; + const CORE_ADDR start =3D global_block ()->start (); + const CORE_ADDR end =3D global_block ()->end (); + + /* Check if the given address falls into the global block. If not, this + blockvector definitely does not contain any block at ADDR. */ + if (addr < start || end <=3D addr) + return nullptr; =20 /* If we have an addrmap mapping code addresses to blocks, then use that. */ - if (map ()) + if (map () !=3D nullptr) return (const struct block *) map ()->find (addr); =20 /* Otherwise, use binary search to find the last block that starts @@ -824,14 +829,15 @@ blockvector::lookup (CORE_ADDR addr) const They both have the same START,END values. Historically this code would choose STATIC_BLOCK over GLOBAL_BLOCK bu= t the fact that this choice was made was subtle, now we make it explicit. = */ - gdb_assert (blocks ().size () >=3D 2); - bot =3D STATIC_BLOCK; - top =3D blocks ().size (); + gdb_assert (num_blocks () >=3D 2); + + int bot =3D STATIC_BLOCK; + int top =3D num_blocks (); =20 while (top - bot > 1) { - half =3D (top - bot + 1) >> 1; - b =3D block (bot + half); + auto half =3D (top - bot + 1) >> 1; + auto b =3D block (bot + half); if (b->start () <=3D addr) =09bot +=3D half; else @@ -842,15 +848,15 @@ blockvector::lookup (CORE_ADDR addr) const =20 while (bot >=3D STATIC_BLOCK) { - b =3D block (bot); - if (!(b->start () <=3D addr)) -=09return NULL; + auto b =3D block (bot); + if (b->start () > addr) +=09return nullptr; if (b->end () > addr) =09return b; bot--; } =20 - return NULL; + return nullptr; } =20 /* See block.h. */ --=20 2.51.0