From patchwork Tue Apr 16 17:05:23 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 88554 Return-Path: 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 BE43B3846047 for ; Tue, 16 Apr 2024 17:06:14 +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 76CA4385842D for ; Tue, 16 Apr 2024 17:05:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 76CA4385842D 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 76CA4385842D 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=1713287132; cv=none; b=lpTOIuTO06BpSjj8YbyAga4cqkWD+eueu28JAvCBM3ed8bXOytDUVkhbGyfW3USv5d+gv1mbG0TQLXLnK6Lg/N11DHeKxmO4PR933dWQHINa+9xmrCWEyi+aFONCpJtEn7dEYzmkCZqtGgaJmkSOO3WHMDHl2mAgfHRHFQjwoy0= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287132; c=relaxed/simple; bh=dIWZxPXXiyew1tlbAcWpeqOWVo5h52yhxLaEjaQUJ/Y=; h=DKIM-Signature:From:Date:Subject:MIME-Version:Message-Id:To; b=FQoGWLwIkkbRG2UA70xP6gjT+MwLtuQ0tqcSdRSp1IQgmA4lmj55uz1OXE5mBEmndXLM0vIf1nvCgICf9FN/i0cWvbpoYwqEyxj2HEn7yT5tTekDKpl2DBUi1y+X/m49tI0qDrNVcZXMzzgAloXqFuOvD3mgPq6uFG2DuXozZ+M= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from eig-obgw-5004a.ext.cloudfilter.net ([10.0.29.221]) by cmsmtp with ESMTPS id wbOLrU0wrPM1hwmFJrACRG; Tue, 16 Apr 2024 17:05:25 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id wmFIrMwSkGDo0wmFIrhH9i; Tue, 16 Apr 2024 17:05:25 +0000 X-Authority-Analysis: v=2.4 cv=I+uuR8gg c=1 sm=1 tr=0 ts=661eafd5 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=IkcTkHD0fZMA:10 a=raytVjVEu-sA:10 a=Qbun_eYptAEA:10 a=KXjF9NO_zwr-w4fy9k4A:9 a=QEXdDO2ut3YA:10 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=To:In-Reply-To:References:Message-Id:Content-Transfer-Encoding: Content-Type:MIME-Version:Subject:Date:From:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=5nViKh2T4bREK0qPMxlEJCiJ8wIfdbuSNYwYBrYTlRg=; b=g7y0nTInypVHfpKCYyqaALzbTX d+puRiDXNiKsd87J+PEFBXj6GfLbtpEjcjST/8PznlMWe7fsLmRX41jQSTmc2OEx5nlF5jVP5XzlF q4AZfS1VJpDtpVwci+tIiiYKD; Received: from 97-122-82-115.hlrn.qwest.net ([97.122.82.115]:36636 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 ) id 1rwmFI-002fVU-0s for gdb-patches@sourceware.org; Tue, 16 Apr 2024 11:05:24 -0600 From: Tom Tromey Date: Tue, 16 Apr 2024 11:05:23 -0600 Subject: [PATCH 1/5] Remove call to dwarf2_per_objfile::adjust from ranges readers MIME-Version: 1.0 Message-Id: <20240416-dwarf-race-relocate-2-v1-1-1fc912e95e87@tromey.com> References: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> In-Reply-To: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> To: gdb-patches@sourceware.org X-Mailer: b4 0.13.0 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: 1rwmFI-002fVU-0s 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]:36636 X-Source-Auth: tom+tromey.com X-Email-Count: 6 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfHLgAGA0TT7ii44m7+4IXtmOUzIosdiZ1/EwqMEXZmPYiXCkr4yLIJiQ8kC2O3vubBFewfl7oTr9MYIBAGNAXowg+g4bD554b8qFtxDvw+b+CH/OKgoe qnkkgYpnCVIEjtOZpJq4d0n+40FxSg70LJgGmk2G2VUdsBk56RNnIp95RtBNmUWxQ/YvunE5C7SvCezgkMoBQ1im/YBxeoSXGiw= X-Spam-Status: No, score=-3021.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, JMQ_SPF_NEUTRAL, RCVD_IN_MSPIKE_H2, 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org dwarf2_per_objfile::adjust applies gdbarch_adjust_dwarf2_addr to an address, leaving the result unrelocated. However, this adjustment is only needed for text-section symbols -- it isn't needed for any sort of address mapping. Therefore, these calls can be removed from read_addrmap_from_aranges and create_addrmap_from_gdb_index. --- gdb/dwarf2/aranges.c | 2 -- gdb/dwarf2/read-gdb-index.c | 2 -- 2 files changed, 4 deletions(-) diff --git a/gdb/dwarf2/aranges.c b/gdb/dwarf2/aranges.c index d577db62726..0d1dc11e27a 100644 --- a/gdb/dwarf2/aranges.c +++ b/gdb/dwarf2/aranges.c @@ -190,8 +190,6 @@ read_addrmap_from_aranges (dwarf2_per_objfile *per_objfile, continue; } ULONGEST end = start + length; - start = (ULONGEST) per_objfile->adjust ((unrelocated_addr) start); - end = (ULONGEST) per_objfile->adjust ((unrelocated_addr) end); mutable_map->set_empty (start, end - 1, per_cu); } diff --git a/gdb/dwarf2/read-gdb-index.c b/gdb/dwarf2/read-gdb-index.c index 8c0895b9639..cc6361674e8 100644 --- a/gdb/dwarf2/read-gdb-index.c +++ b/gdb/dwarf2/read-gdb-index.c @@ -566,8 +566,6 @@ create_addrmap_from_gdb_index (dwarf2_per_objfile *per_objfile, continue; } - lo = (ULONGEST) per_objfile->adjust ((unrelocated_addr) lo); - hi = (ULONGEST) per_objfile->adjust ((unrelocated_addr) hi); mutable_map.set_empty (lo, hi - 1, per_bfd->get_cu (cu_index)); } From patchwork Tue Apr 16 17:05:24 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 88557 Return-Path: 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 1DB403847718 for ; Tue, 16 Apr 2024 17:06:39 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from omta34.uswest2.a.cloudfilter.net (omta34.uswest2.a.cloudfilter.net [35.89.44.33]) by sourceware.org (Postfix) with ESMTPS id C80033858416 for ; Tue, 16 Apr 2024 17:05:25 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org C80033858416 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 C80033858416 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=35.89.44.33 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287132; cv=none; b=TfvFbmCL4h/dWhLxl0vXnQ/v2RNq7fYbwRPrC7bgCyQ8BBZL2uEmN69Az6w3xz+bIEzsChtc2yhLHOqfW5VFXWVg0QK8/VsP9mMog6rW2LftzF2/802rZwI/X3prNoB5fvK5cSKFwHDWG4WNkx5jlN8TyDIelGpRLfIC0R7vs4Y= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287132; c=relaxed/simple; bh=g6hrrXBQce1Xub4juoO9Mqja0J2x64HeeZlG+xbr6EE=; h=DKIM-Signature:From:Date:Subject:MIME-Version:Message-Id:To; b=rWeCdKnzr7sgixBXZAej8wKC/8awkkuG2tt2mx3W5OMpTtU94lAolghNMeDzEpHxXt+OU5ytT+jGOsUf7C+O9AyKXJAEC5OrKumBAlp4OYycpOW8CIA7zTiO6xo5MOnDE2b3Kv4AZiYOKMaoxWOBb3QRMhQT+YmJYo7FSm32GLc= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from eig-obgw-5004a.ext.cloudfilter.net ([10.0.29.221]) by cmsmtp with ESMTPS id wEHWrU7GbHXmAwmFJrB8CV; Tue, 16 Apr 2024 17:05:25 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id wmFIrMwSvGDo0wmFIrhH9y; Tue, 16 Apr 2024 17:05:25 +0000 X-Authority-Analysis: v=2.4 cv=I+uuR8gg c=1 sm=1 tr=0 ts=661eafd5 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=IkcTkHD0fZMA:10 a=raytVjVEu-sA:10 a=Qbun_eYptAEA:10 a=n2ZCfAgK6ObDiUX-HLQA:9 a=QEXdDO2ut3YA:10 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=To:In-Reply-To:References:Message-Id:Content-Transfer-Encoding: Content-Type:MIME-Version:Subject:Date:From:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=IEiPbMeMqSugjDb0pu+IY58xvDbyBwSLSmM2fr2XXYc=; b=ZPoDR5DPwRBie3S3VcEQkVFbpB zLgvfTpnQnEE0fte8XJBvdOVdPHQcXqT7EyDDrHuEAJuUE7djHCRJEZkesceYM5TSnsuqr5TID/+J xQeAYmg7QN731m30AlrcHgmkP; Received: from 97-122-82-115.hlrn.qwest.net ([97.122.82.115]:36636 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 ) id 1rwmFI-002fVU-1H for gdb-patches@sourceware.org; Tue, 16 Apr 2024 11:05:24 -0600 From: Tom Tromey Date: Tue, 16 Apr 2024 11:05:24 -0600 Subject: [PATCH 2/5] Remove more calls to dwarf2_per_objfile::adjust MIME-Version: 1.0 Message-Id: <20240416-dwarf-race-relocate-2-v1-2-1fc912e95e87@tromey.com> References: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> In-Reply-To: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> To: gdb-patches@sourceware.org X-Mailer: b4 0.13.0 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: 1rwmFI-002fVU-1H 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]:36636 X-Source-Auth: tom+tromey.com X-Email-Count: 7 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfHLgAGA0TT7ii44m7+4IXtmOUzIosdiZ1/EwqMEXZmPYiXCkr4yLIJiQ8kC2O3vubBFewfl7oTr9MYIBAGNAXowg+g4bD554b8qFtxDvw+b+CH/OKgoe qnkkgYpnCVIEjtOZpJq4d0n+40FxSg70LJgGmk2G2VUdsBk56RNnIp95RtBNmUWxQ/YvunE5C7SvCezgkMoBQ1im/YBxeoSXGiw= X-Spam-Status: No, score=-3021.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, JMQ_SPF_NEUTRAL, RCVD_IN_MSPIKE_H2, 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org As with the previous patch, this patch removes some calls to dwarf2_per_objfile::adjust. These calls are not needed by the cooked indexer, as it does not create symbols or look up symbols by address. The call in dwarf2_ranges_read is similarly not needed, as it is only used to update an addrmap; and in any case I believe this particular call is only reached by the indexer. --- gdb/dwarf2/read.c | 26 ++++++++------------------ 1 file changed, 8 insertions(+), 18 deletions(-) diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index b029c49a339..9670f232f05 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -10930,7 +10930,6 @@ dwarf2_ranges_read (unsigned offset, unrelocated_addr *low_return, unrelocated_addr *high_return, struct dwarf2_cu *cu, addrmap_mutable *map, void *datum, dwarf_tag tag) { - dwarf2_per_objfile *per_objfile = cu->per_objfile; int low_set = 0; unrelocated_addr low = {}; unrelocated_addr high = {}; @@ -10941,13 +10940,10 @@ dwarf2_ranges_read (unsigned offset, unrelocated_addr *low_return, { if (map != nullptr) { - unrelocated_addr lowpc; - unrelocated_addr highpc; - - lowpc = per_objfile->adjust (range_beginning); - highpc = per_objfile->adjust (range_end); /* addrmap only accepts CORE_ADDR, so we must cast here. */ - map->set_empty ((CORE_ADDR) lowpc, (CORE_ADDR) highpc - 1, datum); + map->set_empty ((CORE_ADDR) range_beginning, + (CORE_ADDR) range_end - 1, + datum); } /* FIXME: This is recording everything as a low-high @@ -16004,14 +16000,11 @@ cooked_indexer::check_bounds (cutu_reader *reader) cu, m_index_storage->get_addrmap (), cu->per_cu); if (cu_bounds_kind == PC_BOUNDS_HIGH_LOW && best_lowpc < best_highpc) { - dwarf2_per_objfile *per_objfile = cu->per_objfile; - unrelocated_addr low = per_objfile->adjust (best_lowpc); - unrelocated_addr high = per_objfile->adjust (best_highpc); /* Store the contiguous range if it is not empty; it can be empty for CUs with no code. addrmap requires CORE_ADDR, so we cast here. */ - m_index_storage->get_addrmap ()->set_empty ((CORE_ADDR) low, - (CORE_ADDR) high - 1, + m_index_storage->get_addrmap ()->set_empty ((CORE_ADDR) best_lowpc, + (CORE_ADDR) best_highpc - 1, cu->per_cu); cu->per_cu->addresses_seen = true; @@ -16313,13 +16306,10 @@ cooked_indexer::scan_attributes (dwarf2_per_cu_data *scanning_per_cu, if (*high_pc > *low_pc) { - dwarf2_per_objfile *per_objfile = reader->cu->per_objfile; - unrelocated_addr lo = per_objfile->adjust (*low_pc); - unrelocated_addr hi = per_objfile->adjust (*high_pc); /* Need CORE_ADDR casts for addrmap. */ - m_index_storage->get_addrmap ()->set_empty ((CORE_ADDR) lo, - (CORE_ADDR) hi - 1, - scanning_per_cu); + m_index_storage->get_addrmap ()->set_empty + ((CORE_ADDR) *low_pc, (CORE_ADDR) *high_pc - 1, + scanning_per_cu); } } From patchwork Tue Apr 16 17:05:25 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 88556 Return-Path: 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 D72C43849AFC for ; Tue, 16 Apr 2024 17:06:29 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from omta038.useast.a.cloudfilter.net (omta038.useast.a.cloudfilter.net [44.202.169.37]) by sourceware.org (Postfix) with ESMTPS id 393F03858C78 for ; Tue, 16 Apr 2024 17:05:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 393F03858C78 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 393F03858C78 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=44.202.169.37 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287132; cv=none; b=Mx87gcwS8/0AEbe2jZSGzAlzr9kl4z6HsE2wO2Yn+cL161tV8T0QOmLvqczWSvDmdBpFWaqxPzpmFZ8gi1mwL+mm6qkOXBwBzUsklM5DTxBfn2ncav7Dw7tpdndO1uDJVit9H8knlMG3N2Y962NYI4folx1rDC/ayXR82v1aIu4= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287132; c=relaxed/simple; bh=pUfAqImSoCiqA3cy6jbpg9RcKfYvv4B/eGsrLpFRH4s=; h=DKIM-Signature:From:Date:Subject:MIME-Version:Message-Id:To; b=SxzWk59SEhjFg18qKS/afp8xJzO+7OGQrwxxSP9PLxsMVpLhI4O1fZzHjUBB4KbrXepuVterxkvV5Vs3pUmMDCtCtEKkyzgSC1aGmLnYHvemBdYi+m2GMaBlg9edjjYfcN24xNaiC40fbWGaBZyftGBeiptQ9PPL5O9rO1r/1AY= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from eig-obgw-6002a.ext.cloudfilter.net ([10.0.30.222]) by cmsmtp with ESMTPS id wEFUrfl6bQr4SwmFJrwggT; Tue, 16 Apr 2024 17:05:25 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id wmFIrP8zJiKqRwmFJr4Rgs; Tue, 16 Apr 2024 17:05:25 +0000 X-Authority-Analysis: v=2.4 cv=I9quR8gg c=1 sm=1 tr=0 ts=661eafd5 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=IkcTkHD0fZMA:10 a=raytVjVEu-sA:10 a=Qbun_eYptAEA:10 a=nEAM0GPSK8r6wnO3_FgA:9 a=QEXdDO2ut3YA:10 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=To:In-Reply-To:References:Message-Id:Content-Transfer-Encoding: Content-Type:MIME-Version:Subject:Date:From:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=ACYXjXY/seMjXXqMT8PwV40oSkBZKxe1yb+pgB9Xa6w=; b=N0PVMn01t2GC73wyBlit0IeGxe VxE9k5mSBw2m6PXXTim6hzgSmgDlK0nFw+TzQZ8BN/9XnF8esFKZzV6szPbE0TzYc4BlJ3f8/GQ5a tFvn9IRfwRMSN/1+2j3UcRmpY; Received: from 97-122-82-115.hlrn.qwest.net ([97.122.82.115]:36636 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 ) id 1rwmFI-002fVU-1h for gdb-patches@sourceware.org; Tue, 16 Apr 2024 11:05:24 -0600 From: Tom Tromey Date: Tue, 16 Apr 2024 11:05:25 -0600 Subject: [PATCH 3/5] Remove call to dwarf2_per_objfile::adjust from read_call_site_scope MIME-Version: 1.0 Message-Id: <20240416-dwarf-race-relocate-2-v1-3-1fc912e95e87@tromey.com> References: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> In-Reply-To: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> To: gdb-patches@sourceware.org X-Mailer: b4 0.13.0 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: 1rwmFI-002fVU-1h 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]:36636 X-Source-Auth: tom+tromey.com X-Email-Count: 8 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfKegnQDJRrFYzQXpAzBq+4vXRfT/qJDoJpMMB+ADp7oeae0elINIHlLyTBgBcUYfvwRZXU9jFHK7yN9dwvoaR6GaHtEl9vwfPT11yXiUtzrJUTEhdC6C urs5ZkRVetwiUwMyXldW5GMqAq3RR761TKy53TlmyLmkxxrIPiPY9ErPp1UcTx1Vlb+fgfJmBWaG97JBnvckXyn7n+q+XEW1/hQ= X-Spam-Status: No, score=-3021.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, JMQ_SPF_NEUTRAL, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org read_call_site_scope does not need to call 'adjust', because in general the call site is not a symbol address, but rather just the address of some particular call. --- gdb/dwarf2/read.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index 9670f232f05..4168cec5c1a 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -10242,7 +10242,7 @@ read_call_site_scope (struct die_info *die, struct dwarf2_cu *cu) sect_offset_str (die->sect_off), objfile_name (objfile)); return; } - unrelocated_addr pc = per_objfile->adjust (attr->as_address ()); + unrelocated_addr pc = attr->as_address (); if (cu->call_site_htab == NULL) cu->call_site_htab = htab_create_alloc_ex (16, call_site::hash, @@ -10417,10 +10417,7 @@ read_call_site_scope (struct die_info *die, struct dwarf2_cu *cu) "low pc, for referencing DIE %s [in module %s]"), sect_offset_str (die->sect_off), objfile_name (objfile)); else - { - lowpc = per_objfile->adjust (lowpc); - call_site->target.set_loc_physaddr (lowpc); - } + call_site->target.set_loc_physaddr (lowpc); } } else From patchwork Tue Apr 16 17:05:26 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 88558 Return-Path: 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 E558E385841C for ; Tue, 16 Apr 2024 17:06:48 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from omta38.uswest2.a.cloudfilter.net (omta38.uswest2.a.cloudfilter.net [35.89.44.37]) by sourceware.org (Postfix) with ESMTPS id ABBDF3858CDB for ; Tue, 16 Apr 2024 17:05:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org ABBDF3858CDB 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 ABBDF3858CDB Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=35.89.44.37 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287139; cv=none; b=hqQyuVQM7Sox/ZdZuS6MDtaaimD/q2v3moGVVi6ecRFYZLz9TrFkcpxBJ7N1vDa0Cps+MkfnDx2zv1Rfk1JrncaLL1/AKGpQWgoREchq8JCx5rKqvmpZWDF0orv1Cqs5mDBDjqbAP1x5k07CPY1vNtBi3frHFmNkx55eVuMskVI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287139; c=relaxed/simple; bh=wS3b425Qa7bI23grTbVzZqdK7J8ax+tpzAGwMDQItkU=; h=DKIM-Signature:From:Date:Subject:MIME-Version:Message-Id:To; b=riu3VYzDmaNuwiLKgsVarT2JBxKZCNmZPLbL6V/I0MLAM6qz6WnIhvX+V853+ZBafoiTZ79H5I/zw8SBi8DEoHkhajpeTbykDEbo5Ean4gfKpFWfB0urr3Flrq+IhFvdu8IKZi5LmiBVHS5iju0Kq86YLPjFBkhGgJQ8dmMTYM8= 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 wkqBrEzGgDI6fwmFJrR5Zn; Tue, 16 Apr 2024 17:05:25 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id wmFIrQr7FVdenwmFJrUKLW; Tue, 16 Apr 2024 17:05:25 +0000 X-Authority-Analysis: v=2.4 cv=M4FLKTws c=1 sm=1 tr=0 ts=661eafd5 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=IkcTkHD0fZMA:10 a=raytVjVEu-sA:10 a=Qbun_eYptAEA:10 a=QCgq-TmAIhwAw3cZ9foA:9 a=QEXdDO2ut3YA:10 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=To:In-Reply-To:References:Message-Id:Content-Transfer-Encoding: Content-Type:MIME-Version:Subject:Date:From:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=6qVnF0Zaqf6br03iu0EDSUKxuZdwoGjA7fUX6G7PHCc=; b=kKyvHH030Quy2r8cehia+l8mBV cJe/zeagWd3yoa20QijfLQZmWjFjuHFZn8Wf4p06tML7UHmgLAVQ32P1jWnh0QRTmcbq/0MM5o5Rw AnjB0duHF7bsGZqbZWXJhjDEc; Received: from 97-122-82-115.hlrn.qwest.net ([97.122.82.115]:36636 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 ) id 1rwmFI-002fVU-26 for gdb-patches@sourceware.org; Tue, 16 Apr 2024 11:05:24 -0600 From: Tom Tromey Date: Tue, 16 Apr 2024 11:05:26 -0600 Subject: [PATCH 4/5] Remove call to dwarf2_per_objfile::adjust from read_attribute_value MIME-Version: 1.0 Message-Id: <20240416-dwarf-race-relocate-2-v1-4-1fc912e95e87@tromey.com> References: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> In-Reply-To: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> To: gdb-patches@sourceware.org X-Mailer: b4 0.13.0 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: 1rwmFI-002fVU-26 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]:36636 X-Source-Auth: tom+tromey.com X-Email-Count: 9 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfMapM5gqygUgHzDuaQCHp2uGGY/u/tHdcYsr2NdGrrlVqdqu6gICShuqQsTRw+VsqhoSJCNw96w51ecJsx6Yt84ZDOsoCSrR+ynhiYVxV70zuQbbRhZU kcKRDHEVCZoyF806qQpQ/qe6zwkR3C6lUOVyfPCCMJ+L870LeYuZcBdVHDFfltfekoAm1yWoa0GM5rB1QRQfc5KHLlnMBiTXz0Q= X-Spam-Status: No, score=-3021.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, JMQ_SPF_NEUTRAL, RCVD_IN_MSPIKE_H2, 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org Currently, read_attribute_value calls dwarf2_per_objfile::adjust on any address. This seems wrong, because the address may not even be in the text section. Luckily, this call is also not needed, because read_func_scope calls 'relocate', which does the same work. --- gdb/dwarf2/read.c | 1 - 1 file changed, 1 deletion(-) diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index 4168cec5c1a..731a645442d 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -17024,7 +17024,6 @@ read_attribute_value (const struct die_reader_specs *reader, { unrelocated_addr addr = cu_header->read_address (abfd, info_ptr, &bytes_read); - addr = per_objfile->adjust (addr); attr->set_address (addr); info_ptr += bytes_read; } From patchwork Tue Apr 16 17:05:27 2024 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tom Tromey X-Patchwork-Id: 88555 Return-Path: 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 8731A3846024 for ; Tue, 16 Apr 2024 17:06:17 +0000 (GMT) X-Original-To: gdb-patches@sourceware.org Delivered-To: gdb-patches@sourceware.org Received: from omta038.useast.a.cloudfilter.net (omta038.useast.a.cloudfilter.net [44.202.169.37]) by sourceware.org (Postfix) with ESMTPS id 3BF473858402 for ; Tue, 16 Apr 2024 17:05:26 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3BF473858402 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 3BF473858402 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=44.202.169.37 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287132; cv=none; b=AgdaoNQ1IGnrpJEZBzvL9koA2ylIVDDM/uATiozL7KjlELorfS8nO+DAGjbNvmIEc+IY0XXH6kj5gobyaoZNfYPkkQp7LfkbuZnXSPmOHHjT2hf4de90OzusRo9qtlcttHWMr+zSwCQNfnvbu7K8K/CrX19LC5Z23VQnSJ/f8XI= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1713287132; c=relaxed/simple; bh=SJvReE/730rFB6LbVscyDiCgaos8obzmTfVczHbNv64=; h=DKIM-Signature:From:Date:Subject:MIME-Version:Message-Id:To; b=YrlwUTiKqUqSKN6k4NEUqmGqHSvMuj30uFuoeS+hLPuqQKBLUTgBGuRO8ZH0NXQh0cJR3e6z3/nNMp2DlTzIvlpWmOSUiYfkCpt9EK9QxKMfAQHQrNT67A0J1nJ+36SU7iuD9fXQCcmqXwLJYeK2l/rM+Ok+3qZEVh1/Z0mx2Ig= ARC-Authentication-Results: i=1; server2.sourceware.org Received: from eig-obgw-5007a.ext.cloudfilter.net ([10.0.29.141]) by cmsmtp with ESMTPS id wkIVrnwDaQr4SwmFJrwggm; Tue, 16 Apr 2024 17:05:25 +0000 Received: from box5379.bluehost.com ([162.241.216.53]) by cmsmtp with ESMTPS id wmFIryazYWqfjwmFJrVaac; Tue, 16 Apr 2024 17:05:25 +0000 X-Authority-Analysis: v=2.4 cv=GsNE+F1C c=1 sm=1 tr=0 ts=661eafd5 a=ApxJNpeYhEAb1aAlGBBbmA==:117 a=ApxJNpeYhEAb1aAlGBBbmA==:17 a=IkcTkHD0fZMA:10 a=raytVjVEu-sA:10 a=Qbun_eYptAEA:10 a=7E4iAdkHT0JH_76o8lcA:9 a=QEXdDO2ut3YA:10 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=tromey.com; s=default; h=To:In-Reply-To:References:Message-Id:Content-Transfer-Encoding: Content-Type:MIME-Version:Subject:Date:From:Sender:Reply-To:Cc:Content-ID: Content-Description:Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc :Resent-Message-ID:List-Id:List-Help:List-Unsubscribe:List-Subscribe: List-Post:List-Owner:List-Archive; bh=MsxbyUEcYk82/XDyDQs/5OB+lRdYAic3KuDDg4C5ePA=; b=uagySehVE+/oc3G8GQ7tL410If 9CKbna5XOhcpak8aGergebRJo8K30dmal6DzKpCi2O0rwSJkImevR9ZcahDPmckpYTehJVYygLcHy fJ9CJCd3RnQuR305vs2BebLxe; Received: from 97-122-82-115.hlrn.qwest.net ([97.122.82.115]:36636 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 ) id 1rwmFI-002fVU-2X for gdb-patches@sourceware.org; Tue, 16 Apr 2024 11:05:24 -0600 From: Tom Tromey Date: Tue, 16 Apr 2024 11:05:27 -0600 Subject: [PATCH 5/5] Remove dwarf2_per_objfile::adjust MIME-Version: 1.0 Message-Id: <20240416-dwarf-race-relocate-2-v1-5-1fc912e95e87@tromey.com> References: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> In-Reply-To: <20240416-dwarf-race-relocate-2-v1-0-1fc912e95e87@tromey.com> To: gdb-patches@sourceware.org X-Mailer: b4 0.13.0 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: 1rwmFI-002fVU-2X 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]:36636 X-Source-Auth: tom+tromey.com X-Email-Count: 10 X-Org: HG=bhshared;ORG=bluehost; X-Source-Cap: ZWx5bnJvYmk7ZWx5bnJvYmk7Ym94NTM3OS5ibHVlaG9zdC5jb20= X-Local-Domain: yes X-CMAE-Envelope: MS4xfEBWZDBbAvHafJDLCFkHgRLMNuv7vDKPx8kc+fSnr7inwiOPyWxV2SCTZOxr1zlBQ4dB0JPiyWJ57QZFPrMB0PTDNJjdpHLxkbCz2iBo4PaYp3mlk/C+ DfTeu+TaxKOJLfNCkPXYolW+OCsqCLAyZyG52KeLpUQftXgJafgSxBSUvSplkfVb237fqFG7u2hqHvGWVtiMtgPGALUpjuoCeKw= X-Spam-Status: No, score=-3021.5 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, GIT_PATCH_0, JMQ_SPF_NEUTRAL, RCVD_IN_DNSWL_NONE, RCVD_IN_MSPIKE_H2, 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 List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: gdb-patches-bounces+patchwork=sourceware.org@sourceware.org All the calls to dwarf2_per_objfile::adjust have been removed, so we can remove this function entirely. --- gdb/dwarf2/read.c | 11 ----------- gdb/dwarf2/read.h | 4 ---- 2 files changed, 15 deletions(-) diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index 731a645442d..a0930e00ffe 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -1208,17 +1208,6 @@ dwarf2_invalid_attrib_class_complaint (const char *arg1, const char *arg2) /* See read.h. */ -unrelocated_addr -dwarf2_per_objfile::adjust (unrelocated_addr addr) -{ - CORE_ADDR baseaddr = objfile->text_section_offset (); - CORE_ADDR tem = (CORE_ADDR) addr + baseaddr; - tem = gdbarch_adjust_dwarf2_addr (objfile->arch (), tem); - return (unrelocated_addr) (tem - baseaddr); -} - -/* See read.h. */ - CORE_ADDR dwarf2_per_objfile::relocate (unrelocated_addr addr) { diff --git a/gdb/dwarf2/read.h b/gdb/dwarf2/read.h index 73def88c4c0..7ab61528ab7 100644 --- a/gdb/dwarf2/read.h +++ b/gdb/dwarf2/read.h @@ -692,10 +692,6 @@ struct dwarf2_per_objfile any that are too old. */ void age_comp_units (); - /* Apply any needed adjustments to ADDR, returning an adjusted but - still unrelocated address. */ - unrelocated_addr adjust (unrelocated_addr addr); - /* Apply any needed adjustments to ADDR and then relocate the address according to the objfile's section offsets, returning a relocated address. */