From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from simark.ca by simark.ca with LMTP id BmZeGpDxr2U6dAUAWB0awg (envelope-from ) for ; Tue, 23 Jan 2024 12:04:16 -0500 Authentication-Results: simark.ca; dkim=pass (1024-bit key; unprotected) header.d=jetbrains.com header.i=@jetbrains.com header.a=rsa-sha256 header.s=googleapps header.b=fM67WeMP; dkim-atps=neutral Received: by simark.ca (Postfix, from userid 112) id 5FB7E1E0D0; Tue, 23 Jan 2024 12:04:16 -0500 (EST) 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 07ED71E092 for ; Tue, 23 Jan 2024 12:04:14 -0500 (EST) Received: from server2.sourceware.org (localhost [IPv6:::1]) by sourceware.org (Postfix) with ESMTP id 8FC31385843E for ; Tue, 23 Jan 2024 17:04:13 +0000 (GMT) Received: from mail-ej1-x631.google.com (mail-ej1-x631.google.com [IPv6:2a00:1450:4864:20::631]) by sourceware.org (Postfix) with ESMTPS id D63F63858C66 for ; Tue, 23 Jan 2024 17:03:34 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org D63F63858C66 Authentication-Results: sourceware.org; dmarc=pass (p=reject dis=none) header.from=jetbrains.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=jetbrains.com ARC-Filter: OpenARC Filter v1.0.0 sourceware.org D63F63858C66 Authentication-Results: server2.sourceware.org; arc=none smtp.remote-ip=2a00:1450:4864:20::631 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1706029424; cv=none; b=CyC4aWqeKGfgm9Q5BU/9dW5PKA14soQjLxZ4ThYpm2S+C4GOz89HNnD3eesIw7ag0we3WIqBVHK62hGaJ4KvtklBODEihLY8XbdN0xIRyug54VI5b3cIZfPMvniGFap9twtZzLjvSRzyPitkfCeve4Jpyjl5tLkNe4Esx9hCAek= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1706029424; c=relaxed/simple; bh=/woSTAPwRRB+eR5/jRNBZUfAmp9utgtl4inAavfTTu4=; h=DKIM-Signature:From:To:Subject:Date:Message-Id:MIME-Version; b=vas+EWmX6DYjvys/zo2faJlIhWFwxsdJFilkbSVNDHyogsEoTVtirJNOYb2iuu88vSJK2/c5JlpfW7SXtgWfMoWewEvRxJOrGR9JwT8+8EkJ42e70B6K9lEWFwiOTOBC+6HtbyhvFEvI6rXmdNikfMBgYLCQ3F+7Qpz2tWi7TNw= ARC-Authentication-Results: i=1; server2.sourceware.org Received: by mail-ej1-x631.google.com with SMTP id a640c23a62f3a-a298accc440so497471266b.1 for ; Tue, 23 Jan 2024 09:03:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=jetbrains.com; s=googleapps; t=1706029413; x=1706634213; darn=sourceware.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=XbS32CALE3KyPeOCmTpOzw+NO4bLAwHs3/pAZU5EuG8=; b=fM67WeMPf0d9vWQrWGt6ggzUzZPAi3DVkdkGadT5Pq/eoG0qqUeJNWQEX1TCgdGeRe o3caGYeVMj08omaxv+OmcgwJyZZ1tPgF6OtNPWRjwLkrywRtUkLbQwxPmnXvpP6PKvBs oQfXSM+fxUOY0F4TQLNH1JEemGgWu+QUPtDDw= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1706029413; x=1706634213; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=XbS32CALE3KyPeOCmTpOzw+NO4bLAwHs3/pAZU5EuG8=; b=IFslUgJmb7hdFDfZtHp6JwEvMO8Nn/qsSj9Sj4RaVuRpxWDJf0Zq6hWKj1+sY9SS9E LFvNps3fnHWR1ZeQJeDW97Pxq+4f8lYZ/Md0oMboIN9OV8nJj7MrJmt5xGNwFc66k8ny oDAnWd4XMspleYpKq2peYvSXkotB3dxEwxcLKlwfPxdSPmRW02384EOvAT9Wsu+zU9Kz F/8wLAoYbMS35ED0OS3JaCCZl4Tiw15kM2W1NREYRdAO9aFOQCA054ipjIAd98Jo7h5Z h9TH/WXhjlC1LZxVek5ZkRx2jhiN3+gtmAub43acXQiQtKFPJe706yzZHOnBaStDjafg lYHA== X-Gm-Message-State: AOJu0YzAq89qVqhayHdLfp9hhSMpwWOKGpVRxbe9/e6CSyvtZDyDD37p ZHHg9Ho2X5IgSnZkEQtRosRS/6wP3x0/tlvNlvzHDAFKa980PbFBbFvGcbxCNJtVOJuuklbf05N 9tQ== X-Google-Smtp-Source: AGHT+IHcTRT5BwAUerDM7uPE41MeVF5j2bx4X5QwScI3+XlvpYE+qFmRX94REcnSKrkH/psTUwV/rQ== X-Received: by 2002:a17:907:d30d:b0:a2f:ca46:fc8d with SMTP id vg13-20020a170907d30d00b00a2fca46fc8dmr138945ejc.17.1706029413269; Tue, 23 Jan 2024 09:03:33 -0800 (PST) Received: from nd-lubuntu.labs.intellij.net (ad96e1c12.dsl.de.colt.net. [217.110.28.18]) by smtp.gmail.com with ESMTPSA id p26-20020a1709061b5a00b00a298ade2e72sm14569741ejg.195.2024.01.23.09.03.32 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 23 Jan 2024 09:03:32 -0800 (PST) From: Dmitry Neverov To: gdb-patches@sourceware.org Cc: dmitry.neverov@jetbrains.com Subject: [RFC v2][PR symtab/30520 2/4] gdb/symtab: reuse last segment lookup name info Date: Tue, 23 Jan 2024 18:03:23 +0100 Message-Id: <20240123170325.752251-2-dmitry.neverov@jetbrains.com> X-Mailer: git-send-email 2.39.2 In-Reply-To: <20240123170325.752251-1-dmitry.neverov@jetbrains.com> References: <20240123170325.752251-1-dmitry.neverov@jetbrains.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-10.9 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE 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+public-inbox=simark.ca@sourceware.org Create lookup_name_info for the last segment in a qualified name outside the loop. The symbol_name_match_type::SEARCH_NAME is used to avoid redundant demangling: it was already performed in lookup_name_without_params.split_name(). --- gdb/dwarf2/read.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/gdb/dwarf2/read.c b/gdb/dwarf2/read.c index b125b2e69f0..f539eb878a3 100644 --- a/gdb/dwarf2/read.c +++ b/gdb/dwarf2/read.c @@ -16638,6 +16638,9 @@ cooked_index_functions::expand_symtabs_matching = lookup_name_without_params.split_name (lang); std::string last_name (name_vec.back ()); + lookup_name_info last_segment_lookup_name ( + last_name, symbol_name_match_type::SEARCH_NAME, completing, true); + for (const cooked_index_entry *entry : table->find (last_name, completing)) { @@ -16698,9 +16701,6 @@ cooked_index_functions::expand_symtabs_matching if (entry->lang != language_unknown) { const language_defn *lang_def = language_def (entry->lang); - lookup_name_info last_segment_lookup_name ( - last_name.data (), symbol_name_match_type::FULL, - false, true); symbol_name_matcher_ftype *name_matcher = lang_def->get_symbol_name_matcher (last_segment_lookup_name); -- 2.39.2