| Message ID | 20231002125051.29911-1-tdevries@suse.de |
|---|---|
| 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 767D4386182F for <patchwork@sourceware.org>; Mon, 2 Oct 2023 12:51:34 +0000 (GMT) DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 767D4386182F DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=sourceware.org; s=default; t=1696251094; bh=m7id4nB/XVog5LTSI7gXQCzu+L36fWwSqkPm5ftP/YY=; h=To:Subject:Date:List-Id:List-Unsubscribe:List-Archive:List-Post: List-Help:List-Subscribe:From:Reply-To:From; b=dQCLt6nveDRaKz6cPNoWjiwyqbDdRxM8Tmu39AXcMmSWdW5rXcWZNzvycIYtB2dgY a5zt29cOEEABzVf+eK7ChHyYDcUadwsSuz41IRanzR9Pl37ZJ7vUMM6fRZ/WeDPwOG X56q0F8hi5VHEYxNng17iIQUk8bhre8mxDwEQpc8= X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from smtp-out1.suse.de (smtp-out1.suse.de [IPv6:2001:67c:2178:6::1c]) by sourceware.org (Postfix) with ESMTPS id 24B0F3857BB3 for <gdb-patches@sourceware.org>; Mon, 2 Oct 2023 12:50:48 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 24B0F3857BB3 Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by smtp-out1.suse.de (Postfix) with ESMTPS id 6AD392185A for <gdb-patches@sourceware.org>; Mon, 2 Oct 2023 12:50:46 +0000 (UTC) Received: from imap2.suse-dmz.suse.de (imap2.suse-dmz.suse.de [192.168.254.74]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature ECDSA (P-521) server-digest SHA512) (No client certificate requested) by imap2.suse-dmz.suse.de (Postfix) with ESMTPS id 584A213434 for <gdb-patches@sourceware.org>; Mon, 2 Oct 2023 12:50:46 +0000 (UTC) Received: from dovecot-director2.suse.de ([192.168.254.65]) by imap2.suse-dmz.suse.de with ESMTPSA id iACNFKa8GmVZMgAAMHmgww (envelope-from <tdevries@suse.de>) for <gdb-patches@sourceware.org>; Mon, 02 Oct 2023 12:50:46 +0000 To: gdb-patches@sourceware.org Subject: [PATCH 00/13] [gdb/symtab, cc-with-dwz] Fix gdb.cp/breakpoint-locs.exp Date: Mon, 2 Oct 2023 14:50:38 +0200 Message-Id: <20231002125051.29911-1-tdevries@suse.de> X-Mailer: git-send-email 2.35.3 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-5.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, SPF_HELO_NONE, SPF_PASS, TXREP 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: 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> From: Tom de Vries via Gdb-patches <gdb-patches@sourceware.org> Reply-To: Tom de Vries <tdevries@suse.de> Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org Sender: "Gdb-patches" <gdb-patches-bounces+patchwork=sourceware.org@sourceware.org> |
| Series |
Fix gdb.cp/breakpoint-locs.exp
|
|
Message
Tom de Vries
Oct. 2, 2023, 12:50 p.m. UTC
[ Submitted an earlier RFC version at
https://sourceware.org/pipermail/gdb-patches/2023-September/202443.html. ]
When running test-case gdb.cp/breakpoint-locs.exp with target board
cc-with-dwz, we occasionally run into:
...
FAIL: gdb.cp/breakpoint-locs.exp: break N1::C1::baz
...
due to the breakpoint having one instead of two locations.
This is PR symtab/30728. This series fixes it.
The fix is dependent on the fix for PR symtab/30846, which is about incorrect
parent entries in the cooked index, due to inter-cu (intra-shard and
inter-shard) references.
The series consists of three parts:
- patches that fix PR symtab/30846.
- patches that add two optimizations to the fix for PR symtab/30846
(one preparation patch, and two optimization patches),
- the last patch, that fixes PR symtab/30728.
The fix for PR symtab/30728 consists of adding entries to the cooked index for
DW_TAG_inlined_subroutine DIEs, with correct parent entries.
Tested on x86_64-linux, with target boards unix, cc-with-dwz and
cc-with-dwz-m.
I've split out the two added test-cases into separate patches. Unfortunately
the patch "[gdb/symtab] Resolve deferred entries, inter-shard case" is still
somewhat large due to moving code about.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30728
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30846
Tom de Vries (13):
[gdb/symtab] Factor out m_die_range_map usage
[gdb/symtab] Check effect in parent_map::set_parent
[gdb/symtab] Handle nullptr parent in parent_map::set_parent
[gdb/symtab] Add parent_map::dump
[gdb/symtab] Factor out m_deferred_entries usage
[gdb/symtab] Add debug_handle_deferred_entries
[gdb/symtab] Resolve deferred entries, inter-shard case
[gdb/testsuite] Add gdb.dwarf2/forward-spec-inter-cu.exp
[gdb/symtab] Keep track of processed DIEs in shard
[gdb/symtab] Resolve deferred entries, intra-shard case
[gdb/symtab] Don't defer backward refs, inter-cu intra-shard case
[gdb/testsuite] Add gdb.dwarf2/backward-spec-inter-cu.exp
[gdb/symtab] Add DW_TAG_inlined_subroutine entries in the cooked index
for c++
gdb/addrmap.c | 19 +-
gdb/addrmap.h | 7 +-
gdb/dwarf2/cooked-index.c | 141 ++++++++++++++
gdb/dwarf2/cooked-index.h | 145 +++++++++++++-
gdb/dwarf2/read.c | 178 +++++++++++++-----
.../gdb.dwarf2/backward-spec-inter-cu.exp | 111 +++++++++++
.../gdb.dwarf2/forward-spec-inter-cu.exp | 107 +++++++++++
7 files changed, 657 insertions(+), 51 deletions(-)
create mode 100644 gdb/testsuite/gdb.dwarf2/backward-spec-inter-cu.exp
create mode 100644 gdb/testsuite/gdb.dwarf2/forward-spec-inter-cu.exp
base-commit: 6a6117ab0ffe18ea984abca84869eae799c1b346