From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id 8SyvH/IxzWnFYAIAWB0awg (envelope-from ) for ; Wed, 01 Apr 2026 10:55:46 -0400 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256 header.s=selector1 header.b=Bcs6Ml7z; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 7C9CD1E04F; Wed, 01 Apr 2026 10:55:46 -0400 (EDT) X-Spam-Checker-Version: SpamAssassin 4.0.1 (2024-03-25) on simark.ca X-Spam-Level: X-Spam-Status: No, score=-3.4 required=5.0 tests=ARC_SIGNED,ARC_VALID,BAYES_00, DKIMWL_WL_HIGH,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 vm01.sourceware.org (vm01.sourceware.org [38.145.34.32]) (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 EAC8D1E04F for ; Wed, 01 Apr 2026 10:55:45 -0400 (EDT) Received: from vm01.sourceware.org (localhost [127.0.0.1]) by sourceware.org (Postfix) with ESMTP id 7CCDD4BA23CD for ; Wed, 1 Apr 2026 14:55:45 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7CCDD4BA23CD Authentication-Results: sourceware.org; dkim=pass (1024-bit key, unprotected) header.d=amd.com header.i=@amd.com header.a=rsa-sha256 header.s=selector1 header.b=Bcs6Ml7z Received: from CY3PR05CU001.outbound.protection.outlook.com (mail-westcentralusazlp170130007.outbound.protection.outlook.com [IPv6:2a01:111:f403:c112::7]) by sourceware.org (Postfix) with ESMTPS id 2BF014BA23C9 for ; Wed, 1 Apr 2026 14:54:52 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 2BF014BA23C9 Authentication-Results: sourceware.org; dmarc=pass (p=quarantine dis=none) header.from=amd.com Authentication-Results: sourceware.org; spf=fail smtp.mailfrom=amd.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 2BF014BA23C9 Authentication-Results: server2.sourceware.org; arc=pass smtp.remote-ip=2a01:111:f403:c112::7 ARC-Seal: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1775055292; cv=pass; b=vwPKCPlcAVP6f8D+wLqLJZwOZagkbhGvSY8HdrhP3q2isUv+rlU7CbIRwwSVbGtBaGCDE02ikSvUq+An+meG2j7gEg1kV2BQrntrSoTOLRr+1TPPYSNTvthBAUjQvLinbyhXxMppMlv0HSoozdwvoHd4COnK68qxiYUWkTToYFI= ARC-Message-Signature: i=2; a=rsa-sha256; d=sourceware.org; s=key; t=1775055292; c=relaxed/simple; bh=mWAwbPnOHmjeZPbDi+1TZy/8QrTUlXZMEh/CSpSju2I=; h=DKIM-Signature:From:To:Subject:Date:Message-ID:MIME-Version; b=IYM8ePXHtxeOer1Q2jyX6WRRHPNJS8LRmQ3LkLXDt6KabJguxz2yBuLX4OZJr6HPA7nqC+UdzVu0garK17rK4zyAwIa3ACtVPqelnAyWKinDOLnpaCMtWV5AxpRfV1hHvw7H+hy70VIict+NOh/AzsX1cS67Ni9/cMmPtn64ETs= ARC-Authentication-Results: i=2; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 2BF014BA23C9 ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=cl01Kf51LgdF6MKqcMpbWOUIOhq4nCH8/d2YNeVTlKclZGsSqVcn7Oek7r86oByEPTbfexonPF/hT/a0P8TobY4Is2NoKSZqodRM0Zq1o2qxs+BVWqbBSHFW26v7e2ABR/Oro7xIMWGoSH465HvDev2Q1RI5hZH2wuYvTlyD8KbmJx/AUI+qVV0z/3aJ+PTUBVv4Jgc9bzWjNXK7keSxrPy8T+U2u314EypXWAKv8BwwVh4y4OSDxAF48oGYKlJYiShM8anf4ZekGTqS0/KJIv7OIWmeGUuTgQXeHaXlN+CVrcAljMJXRzhx9UmRSZ/E5VHS4SADG1yKyqSkDT3N/w== 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=wbdOsZIdORhxX2IoIsEMK6sAFhnXha/5TWza5xoB/3Q=; b=Sn5g4HuIkFA+UWfqWtie7tIaGnhSxoNjNIeOszNyX4MRci8+QEal6PSfFqP39E7RnP/c04BT3O4K5T1mBobuh1U3kbw6Wp/gF3B5WSEzp9K6L9pNxJnUgOnWqRUcxMg+vWe8vV/hHEFFgjCz/RLrZsTUN/3ywpwskWTAWwwCNablIILvRyUkDOoXgWpZoLi3lzmuP3DXLVYjEK4MMznc+49MP4zIehSqGPQ9XVUx2LnFqVd69JGEBWFH5Ka8ry5s6al2gKAWpecUJJrp5/0J1aEkJr+HjFSQXVgMsYF818nV2rtTQo3DzwYqStmNZLFHUBqzMh65NVh4i5LkNfKIuQ== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=amd.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=wbdOsZIdORhxX2IoIsEMK6sAFhnXha/5TWza5xoB/3Q=; b=Bcs6Ml7z8jW1Xc38W7ExNVHGy11A/aRjBvGgGPJ9v6LgLM95XSvVMbeUDi7d6234umCgmwKMg6dgcRb2PSFVBnIRIwVj/2I1/7nwG5CJlDer/D46MEmjiG83MkLXZ9CK1HMzMElUMmy9Tt3AYBpEM33FfQ8lBtf6nQfhO4VLGoo= Received: from DM4PR12MB7623.namprd12.prod.outlook.com (2603:10b6:8:108::13) by SN7PR12MB7321.namprd12.prod.outlook.com (2603:10b6:806:298::14) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9769.16; Wed, 1 Apr 2026 14:54:49 +0000 Received: from DM4PR12MB7623.namprd12.prod.outlook.com ([fe80::d694:7c9d:58ba:8fb4]) by DM4PR12MB7623.namprd12.prod.outlook.com ([fe80::d694:7c9d:58ba:8fb4%5]) with mapi id 15.20.9769.016; Wed, 1 Apr 2026 14:54:49 +0000 From: "Filipovic, Bratislav" To: "gdb-patches@sourceware.org" CC: "simon.marchi@efficios.com" Subject: RE: [PING][PATCH] dwarf2: avoid decoding .debug_line for type units Thread-Topic: [PING][PATCH] dwarf2: avoid decoding .debug_line for type units Thread-Index: AQHcttxRciTBcm23aEWGrzlR6Lzpn7XKYT+w Date: Wed, 1 Apr 2026 14:54:49 +0000 Message-ID: References: <20260318133618.2805916-1-bfilipov@amd.com> In-Reply-To: <20260318133618.2805916-1-bfilipov@amd.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: msip_labels: MSIP_Label_dce362fe-1558-4fb5-9f64-8a6240d76441_Enabled=True; MSIP_Label_dce362fe-1558-4fb5-9f64-8a6240d76441_SiteId=3dd8961f-e488-4e60-8e11-a82d994e183d; MSIP_Label_dce362fe-1558-4fb5-9f64-8a6240d76441_SetDate=2026-04-01T14:54:37.0000000Z; MSIP_Label_dce362fe-1558-4fb5-9f64-8a6240d76441_Name=AMD Internal Distribution Only; MSIP_Label_dce362fe-1558-4fb5-9f64-8a6240d76441_ContentBits=3; MSIP_Label_dce362fe-1558-4fb5-9f64-8a6240d76441_Method=Standard authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com; x-ms-publictraffictype: Email x-ms-traffictypediagnostic: DM4PR12MB7623:EE_|SN7PR12MB7321:EE_ x-ms-office365-filtering-correlation-id: 5b3394cd-d807-419a-8fa8-08de8ffe9f52 x-ms-exchange-senderadcheck: 1 x-ms-exchange-antispam-relay: 0 x-microsoft-antispam: BCL:0; ARA:13230040|1800799024|366016|376014|38070700021|18002099003|56012099003|22082099003; x-microsoft-antispam-message-info: IlotZLwLv7QwP2SAr79Enhwsj8RyAhh6FgESp6yMcW8tTp9JRTCRlBuX9EtI3TqQe5k6v4qscyCmxAOxA14hQI0sniBXBo65Vq0qrwVeVBkZ504NqFI12Mkwf4hKHuYu1EUGCo9/eZk+mPlzEUnrkUEK0vl0JNH4umyp6S4j/KincwKXc/8iJPoyLwkUkIlmmq2cPP9r3vZzDfjYTO6B4grLfMF4TIBKHSyTUeYWI9h92RlQNPS/scfqf2ozM7++1v3eVbWVok7DiMQYcjtw+8I3F0PfttliYr4YM+sQ1BW0FKwTDBHJguxq7VLW3K69ZdiJjuC+W1mjnz0QwXNq6UgK+cbg0IfOjyZAugWL1hfy9MFUMD0Adgvi6xp2KvrpM68jLjgdXzesMjVAM3/9yr3DP6xpuZJpoaOGPQgKNFA6aBrsfk5aYjAUBwZQuXQOngLlK1P/SoVcTPcwebD9vbhu2FYI6fazmGQ2y/qBajVScqWZ4VbHVzLaNWe3nhRd5AuXlFNdlw6juv/qIcx+SC3bRoikQgijOE5fVsBzzNsGI4kdq8YLXcdegTEccOCBdxMQfiQQqkD+bQBECmjG27+xu3gCPj61fhP/ZCN8mqeatg1bAlRUBG42wjnx2g5mDwxiRnUOph4K81WKP/Ai3IFqQtex3POfzlg5ijKgGT6e9AS7t1C20AY0fmmCii+D0m2m916uVbkP8LNyQt3ZbN1A24LanNag2Y5Bt3kp46Ku35nn4gMBySMfDc6JrN0GqZVPsYrfvE/Qw1mzqOfB+ps1W2nrq/Gll4GOursNL+w= x-forefront-antispam-report: CIP:255.255.255.255; CTRY:; LANG:en; SCL:1; SRV:; IPV:NLI; SFV:NSPM; H:DM4PR12MB7623.namprd12.prod.outlook.com; PTR:; CAT:NONE; SFS:(13230040)(1800799024)(366016)(376014)(38070700021)(18002099003)(56012099003)(22082099003); DIR:OUT; SFP:1101; x-ms-exchange-antispam-messagedata-chunkcount: 1 x-ms-exchange-antispam-messagedata-0: =?us-ascii?Q?aPVSgWhMJy6SKAqXuyQdHJPFDwsg/YQdOoy9q7/OM//ig3bpdPgpC4QrvORp?= =?us-ascii?Q?FiBwuTdFF6xdpKiFsCqsgRyRPLV2PHGkmenWv+4YA+zqwkxU03O+seJQpoi7?= =?us-ascii?Q?87pRXsyj4Wc1nREvaFx9LbfwG0KdUiaZIsuzPiSFyZKyUYXuTVoP3RinWWKk?= =?us-ascii?Q?FKhIvDfsyeA+9MKuH2ETveYjU600v4+FfIGoBM9scQG5rI/384NdmS7ppbUz?= =?us-ascii?Q?2gqiC9YH84foVGaGez1d2KjIodkBMr3l0aGjVNAQxiENmXHmETvmwZLD6/TD?= =?us-ascii?Q?lAuIksLcm5BnEay7PUPX2iRZfp3WP9HXSpwzubR4L6Cmx+OVQYajHF43iqcU?= =?us-ascii?Q?6jl9VobzDO9KyXVIxgj3pQF5dK0GONPTXd34h0/yaljJ3Ymh7dv2vMLH+AiR?= =?us-ascii?Q?ouBQO07HnMBS56DDVQZLEr39rrQFTl2Cgc5pxx2byWwjL6GGircaq52omfd5?= =?us-ascii?Q?qwmuQ65anqQ9aL07+KxEIA95d/yWmisGA6vlSxtrEsfTyKiqtYJTHBonNeeE?= =?us-ascii?Q?1t8foaAjpo2FtLzGmSK2BXymJLvonJpDhGMPwx3sj53lPw+OXiYyPb9aF9h3?= =?us-ascii?Q?EWShr9aS+ojqQFlE6iob87K2ZuVC4a6j38dwz//9nMGmxa4L3XfsO1o4I3s2?= =?us-ascii?Q?FNSpUozL3UACJ3ReiJDbRgnKYqeXmqVl7/6LS1vfRMxZtlFtIuq9fv+ekvXp?= =?us-ascii?Q?I6/5/Su6kSMi6NE3xkxk7m1TBI9+Yo1J6BWdrz+pt9A1Ysct7YFOBJ4K5UDG?= =?us-ascii?Q?u2ml6JwF8NtGudlSbDbhCFRszIxlJdcdlkSdFbsYtUFdsxbLby6J316RNBlP?= =?us-ascii?Q?pC83XTrNrrmy3uiEzyU+/CxPLPvG5B174e0Enw5Nn75HTa1/kHIYYhhLsN2l?= =?us-ascii?Q?qRUCiucbo6Q9B/KCYimiYCTg/wLvcEan1EWA23hXs95AxTvxs8mxYWyZmrSs?= =?us-ascii?Q?ABcXXr5z5QE41zvh2HH9CZoTrVf/kEa6icMs3kqREPlLW5V1zrdi9VW3Uhmx?= =?us-ascii?Q?ngQSIttKEXC5UVubS314wfrizvJq515QJkx9OXQPid7PGGY5Yx4dJzemXPVN?= =?us-ascii?Q?f0HO64HJGG3rD/sQ7u311vxwc+RzzxOwloC/GtXtiIRQj+nmDEykZy9s4KMf?= =?us-ascii?Q?ypFZiMg3vG7y4A242kszDV5LvPvIcPUheerH3JIR/1T8+yvAs+Ws/QW3lOJN?= =?us-ascii?Q?UdE9aAFmhQaO1mtW6sAUBe0nN7zDmrGs4i+ZEE/YPnmm/b9Ocm+cla9xbBKC?= =?us-ascii?Q?ACt5BwZI5vbWHNibXJHM2GCIpQIRJM+JgWqcD8usVekH5UDM1fEcreX9FaFK?= =?us-ascii?Q?R5v8J/RyC53gVE6lcjObh8//cyazDASobqETat5GdGnaDAKydHW4X/9cSBqw?= =?us-ascii?Q?Da9VUl6lfmKZiCct3J1BAIQXZcwbpTaX0EW7WDyrxkQe2d6tHjUOmitl1eWe?= =?us-ascii?Q?/8UZCG2A8jfAFrGltCMkjd44MyhQ/tXmvR4bFHk9VQVqSNppOeV2cPtxlclX?= =?us-ascii?Q?tU7nPfF7Rc8aY6WkegbRX1F2gjPZE+JJFljBMTIL7i5JUL57KcCLzjqwO7Hk?= =?us-ascii?Q?teO5w1gE4YntHfpX5VztlINIEZjhCHpj5Y+wRzr8PsE/HvBDhJVLteC2a1iS?= =?us-ascii?Q?o0ZV/9pU+kxrHnG5ObBTDyplGyFzh6xMv+pCVY//zvMfoPYY+oEdya/AK1Rc?= =?us-ascii?Q?JNEPVhWIlukRVPoU/qOOpJbTiYUibWVvL8wKVjncPrzJ/KFe?= Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-AuthSource: DM4PR12MB7623.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: 5b3394cd-d807-419a-8fa8-08de8ffe9f52 X-MS-Exchange-CrossTenant-originalarrivaltime: 01 Apr 2026 14:54:49.0301 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-CrossTenant-userprincipalname: NT4FioS7AMNihvc4KTS98YmZZG8f83p36BVqspzL0cf46+0vh+/Qk52o960zwlduGY2YEZbNfNoll49E5TIfMw== X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN7PR12MB7321 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 [AMD Official Use Only - AMD Internal Distribution Only] PING Can someone take a look at this? Regards Bratislav -----Original Message----- From: Filipovic, Bratislav Sent: Wednesday, March 18, 2026 2:36 PM To: gdb-patches@sourceware.org Cc: simon.marchi@efficios.com; Filipovic, Bratislav Subject: [PATCH] dwarf2: avoid decoding .debug_line for type units Running gdb.dwarf2/pr13961.exp with clang fails with an internal error: gdb/dwarf2/read.c: internal-error: decode_line_header_for_cu: Assertion `!cu->per_cu->is_debug_types ()' failed. pr13961 is a legacy .S test that references a .debug_line label from both a= CU and a TU. The assembly includes an empty .debug_line section declaration: .section .debug_line,"",%progbits .Ldebug_line0: With gcc this results in a dummy (valid, but content-less) .debug_line head= er being emitted, so GDB can build a line header and resolve file indices. = With clang the .debug_line section can be missing/empty, leaving the line = header unset. During symbol creation, new_symbol may then try to lazily decode the CU-onl= y line header while processing a type unit, which triggers the assertion ab= ove. Fix this by only decoding the line header for non-type units. If no line h= eader is available, emit a complaint and continue without setting the symta= b rather than attempting CU-only line decoding from a TU. Tested: gdb.dwarf2/pr13961.exp (CC_FOR_TARGET=3Dclang) --- gdb/dwarf2/read.c | 27 ++++++++++++++++++--------- 1 file changed, 18 insertions(+), 9 deletions(-) diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index 8b87d58d..2e897e65= 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -15484,23 +15484,32 @@ new_symbol (struct die_info *die, struct type *ty= pe, struct dwarf2_cu *cu, if (index_cst.has_value ()) { file_name_index file_index =3D (file_name_index) *index_cst; - struct file_entry *fe; - if (file_cu->line_header =3D=3D nullptr) + /* Resolve DW_AT_decl_file/DW_AT_call_file. These attributes= are + indices into the file-name table, which lives in the unit'= s + decoded .debug_line header. + decode_line_header_for_cu is CU-only and asserts on debug_= types. + For type units, the TU setup code runs before processing c= hild + DIEs, so if line_header is still nullptr here it means the= re is no + usable line table for this unit. */ + if (file_cu->line_header =3D=3D nullptr + && !file_cu->per_cu->is_debug_types ()) { file_and_directory fnd (nullptr, nullptr); decode_line_header_for_cu (file_cu->dies, file_cu, fnd); } if (file_cu->line_header !=3D nullptr) - fe =3D file_cu->line_header->file_name_at (file_index); - else - fe =3D NULL; - - if (fe =3D=3D NULL) - complaint (_("file index out of range")); + { + if (file_entry *fe + =3D file_cu->line_header->file_name_at (file_index); + fe !=3D nullptr) + sym->set_symtab (fe->symtab (*file_cu)); + else + complaint (_("file index out of range")); + } else - sym->set_symtab (fe->symtab (*file_cu)); + complaint (_("missing .debug_line information to resolve fi= le +index")); } } -- 2.43.0