Message ID | 20240408-die-map-madness-v2-0-6741626d544d@tromey.com |
---|---|
Headers |
Return-Path: <gdb-patches-bounces+patchwork=sourceware.org@sourceware.org> X-Original-To: patchwork@sourceware.org Delivered-To: patchwork@sourceware.org Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 1DF9D38460A2 for <patchwork@sourceware.org>; Mon, 8 Apr 2024 21:12:19 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from omta40.uswest2.a.cloudfilter.net (omta40.uswest2.a.cloudfilter.net [35.89.44.39]) by sourceware.org (Postfix) with ESMTPS id 76C233858D28 for <gdb-patches@sourceware.org>; Mon, 8 Apr 2024 21:11:42 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 76C233858D28 Authentication-Results: sourceware.org; dmarc=none (p=none dis=none) header.from=tromey.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=tromey.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 76C233858D28 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=35.89.44.39 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712610704; cv=none; b=VRpHPq4oyTr5plqDNA8Q3/okzWeN8Dk321zhDaXScJwKVLSCAhna0ZhFPO33OmfJJjXknQa+8brMoo/fHhXDtstxSOosI7K0GMD2Tbs5zzOPNxPM2g4U88dJj8B4bxhdjOtivsLRZlYeyY1dMPHbXnf2hYOgWFHKaf33Ap2oEpc= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1712610704; c=relaxed/simple; bh=pWFNIYW2hsVRs0BuIRqjkv6LUXN5yAHU8eGdkFMWaBM=; h=DKIM-Signature:From:Subject:Date:Message-Id:MIME-Version:To; b=XCQjYI0W1IA6Op05iTGFwGxyeQwazhuaLSkfJPgfBlo5uGo5eTdOsS/jxefHMvVAkeZydmxu39N2kw5xAo7TEcJ0C8/E4+2tWOAt5x7s5kFdFUTDUSbp+jR3Xm7NmCIp5kNHdjgxsfX+NTYFMfcHRw8gnQivXQoY+bOahBWgKgM= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from eig-obgw-6007a.ext.cloudfilter.net ([10.0.30.247]) by cmsmtp with ESMTPS id tid0rmG5vPM1htwHFrqiSB; Mon, 08 Apr 2024 21:11:41 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id twHFrsIWBVdentwHFrF2oa; Mon, 08 Apr 2024 21:11:41 +0000 X-Authority-Analysis: v=2.4 cv=M4FLKTws c=1 sm=1 tr=0 ts=66145d8d a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=IkcTkHD0fZMA:10 a=raytVjVEu-sA:10 a=Qbun_eYptAEA:10 a=CCpqsmhAAAAA:8 a=zstS-IiYAAAA:8 a=9vKwjOOrZxSthdrl1m0A:9 a=QEXdDO2ut3YA:10 a=ul9cdbp4aOFLsgKbc677:22 a=4G6NA9xxw8l3yy4pmD5M:22 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=Cc:To:Content-Transfer-Encoding:Content-Type:MIME-Version: Message-Id:Date:Subject:From:Sender:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: In-Reply-To:References:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=2TCq6YErXxBbotkmRUhPjn0tuDrFeP2FW4xjzxH09yU=; b=w0S65sdUSD/3S2dL4DjGo/KOzv vF+AXks3Tz0FEwaPbHrVDMDwtbYMpzShTGOT5Js+XLMXNni372CQf10fW6ZxD2Xbz0fpQJJh3gJ2N McchYGt6FG+SwiZykyMNZS1Yx; Received: from 97-122-82-115.hlrn.qwest.net ([97.122.82.115]:54230 helo=[192.168.0.21]) by box5379.bluehost.com with esmtpsa (TLS1.2) tls TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 (Exim 4.96.2) (envelope-from <tom@tromey.com>) id 1rtwHE-001uXf-2d; Mon, 08 Apr 2024 15:11:40 -0600 From: Tom Tromey <tom@tromey.com> Subject: [PATCH gdb/symtab v2 0/7] Compute DWARF entry parents across CUs Date: Mon, 08 Apr 2024 15:11:36 -0600 Message-Id: <20240408-die-map-madness-v2-0-6741626d544d@tromey.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAIhdFGYC/3WNwQ6DIBBEf8VwLo0gRtNT/8N4WGCtHACza0yN8 d+L3nuYw0tm5h2CkQKyeFWHINwCh5wK6Ecl3AzpgzL4wkLX2tRKddIHlBGWEp+QWdreQNearnF 9K8pqIZzC934cxsIWGKUlSG6+fiLwinQV58Brpv02b+qq/5dsStbS6MmapgWv0L9XyhH3p8tRj Od5/gDPawuvyAAAAA== To: gdb-patches@sourceware.org Cc: Tom de Vries <tdevries@suse.de> X-Mailer: b4 0.12.4 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: 97.122.82.115 X-Source-L: No X-Exim-ID: 1rtwHE-001uXf-2d X-Source: X-Source-Args: X-Source-Dir: X-Source-Sender: 97-122-82-115.hlrn.qwest.net ([192.168.0.21]) [97.122.82.115]:54230 X-Source-Auth: tom+tromey.com X-Email-Count: 2 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfPUl6xUmCuSDRzGFV+I3CpqIZvBT4Ie8hBhWnvsqALAVgcQpJUoINFfTUUV8ksPTKEeWY6NyqYujeNbAZXAADA8KVJ/E5XVu3BaGLgcehBEoASFjmnBW 1TYn6FVE0qn7hm9H6rtxAzv0mM4E7nFIAHPnV6aiFcvBaMoHKjlWop25ssBuo50B+rRXNzlw+pm6orrJ+5dnkqCgvBlbyxjPELU= X-Spam-Status: No, score=-3015.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, JMQ_SPF_NEUTRAL, 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 X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.30 Precedence: list List-Id: Gdb-patches mailing list <gdb-patches.sourceware.org> List-Unsubscribe: <https://sourceware.org/mailman/options/gdb-patches>, <mailto:gdb-patches-request@sourceware.org?subject=unsubscribe> List-Archive: <https://sourceware.org/pipermail/gdb-patches/> List-Post: <mailto:gdb-patches@sourceware.org> List-Help: <mailto:gdb-patches-request@sourceware.org?subject=help> List-Subscribe: <https://sourceware.org/mailman/listinfo/gdb-patches>, <mailto:gdb-patches-request@sourceware.org?subject=subscribe> Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org |
Series |
Compute DWARF entry parents across CUs
|
|
Message
Tom Tromey
April 8, 2024, 9:11 p.m. UTC
This is a different approach to a patch series that Tom de Vries sent. The bug here is that gdb won't always correctly compute the parent of an entry in some cross-CU reference cases. I've included a few of Tom's patches in this series. The main difference overall is that this one incorporates the parent computation into the finalization loop, so the work is parallelized. Regression tested on x86-64 Fedora 38 with the cc-with-dwz board. There is still one bug (the inlining one), but I believe that one requires a different fix. --- Changes in v2: - Rebased; some minor changes were required - Link to v1: https://inbox.sourceware.org/gdb-patches/20240117-die-map-madness-v1-0-42fb435ad1ed@tromey.com --- Tom Tromey (4): Change handling of DW_TAG_enumeration_type in DWARF scanner Add move operators for addrmap Introduce class parent_map for DIE range map Correctly handle DIE parent computations Tom de Vries (3): [gdb/symtab] Refactor condition in scan_attributes [gdb/testsuite] Add gdb.dwarf2/forward-spec-inter-cu.exp [gdb/testsuite] Add gdb.dwarf2/backward-spec-inter-cu.exp gdb/addrmap.c | 12 +- gdb/addrmap.h | 19 ++- gdb/dwarf2/cooked-index.c | 14 ++- gdb/dwarf2/cooked-index.h | 56 ++++++--- gdb/dwarf2/parent-map.h | 132 +++++++++++++++++++++ gdb/dwarf2/read-debug-names.c | 7 +- gdb/dwarf2/read.c | 112 ++++++++--------- .../gdb.dwarf2/backward-spec-inter-cu.exp | 103 ++++++++++++++++ gdb/testsuite/gdb.dwarf2/forward-spec-inter-cu.exp | 103 ++++++++++++++++ 9 files changed, 468 insertions(+), 90 deletions(-) --- base-commit: d05e1a4a6d438c11af5a2b9b0ac88a74727b5f0f change-id: 20240117-die-map-madness-b84a75473c85 Best regards,
Comments
>>>>> "Tom" == Tom Tromey <tom@tromey.com> writes:
Tom> This is a different approach to a patch series that Tom de Vries sent.
Tom> The bug here is that gdb won't always correctly compute the parent of
Tom> an entry in some cross-CU reference cases.
Tom> I've included a few of Tom's patches in this series. The main
Tom> difference overall is that this one incorporates the parent
Tom> computation into the finalization loop, so the work is parallelized.
Tom> Regression tested on x86-64 Fedora 38 with the cc-with-dwz board.
Tom> There is still one bug (the inlining one), but I believe that one
Tom> requires a different fix.
I rebased this and re-regression tested it, and now I am checking it in.
Tom