From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 13437 invoked by alias); 6 Jun 2014 21:20:28 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 13427 invoked by uid 89); 6 Jun 2014 21:20:27 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-3.2 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_LOW,RP_MATCHES_RCVD,SPF_PASS autolearn=ham version=3.3.2 X-HELO: mail-ve0-f174.google.com Received: from mail-ve0-f174.google.com (HELO mail-ve0-f174.google.com) (209.85.128.174) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with (AES128-SHA encrypted) ESMTPS; Fri, 06 Jun 2014 21:20:25 +0000 Received: by mail-ve0-f174.google.com with SMTP id us18so1866070veb.33 for ; Fri, 06 Jun 2014 14:20:23 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc:content-type; bh=U3JeuF8C/HHbQjz+rrho6EL7Y+lb8vplRYw4GKJmRjE=; b=h1INhHLLW4mRwiws3HHks0IQKEV4gfYGycj0xSkZwqkmpa7gFp7LY34nBdqFW+tgfE 8vxkHhKx9jOr6AKJ1PQe0JQfAse3eojrRpRvsZD1nw97lCMbtqxgTzG6pXPbeT3lzn8I oHmLxlCXuQnkOkdwX4aM/n215zWXg1g/FMxpeBNo93ZGm7BMGAlpFqwgTCM7qZIcAm+x cjk4wO/jOeSjIpTwb2zdK0eIf4WJDHKR0JJ8rIN68n7lGaJsiqto3LqE11qVNsFH1hic pRmkA5+1i+5yTL6pNZXrztgrBYcfxVozptNwfLLtJLScrWHiap2FBdnnzzMbCzo4MCJq zLew== X-Gm-Message-State: ALoCoQkATv/XwnminpCM5Pn+nRr1JWZfj0JuCOBYFwbVP6up1yyCVq+B73Auq/ZcKj1Z8UUnQcwT MIME-Version: 1.0 X-Received: by 10.52.244.138 with SMTP id xg10mr7263674vdc.1.1402089623555; Fri, 06 Jun 2014 14:20:23 -0700 (PDT) Received: by 10.52.28.230 with HTTP; Fri, 6 Jun 2014 14:20:23 -0700 (PDT) In-Reply-To: <5390ABAA.2080209@redhat.com> References: <5390ABAA.2080209@redhat.com> Date: Fri, 06 Jun 2014 21:20:00 -0000 Message-ID: Subject: Re: [RFA/7.8 blocker] Revert c++/16253 From: Doug Evans To: Keith Seitz Cc: "gdb-patches@sourceware.org ml" Content-Type: text/plain; charset=UTF-8 X-IsSubscribed: yes X-SW-Source: 2014-06/txt/msg00340.txt.bz2 On Thu, Jun 5, 2014 at 10:40 AM, Keith Seitz wrote: > Hi, > > We decided to revert my earlier patch for c++/16253 (variable name/tag name > collision) because Doug reports that it causes a sizable performance > regression: > > https://sourceware.org/bugzilla/show_bug.cgi?id=16253 > > This patch reverts the whole thing. > > Tested on Fedora 20, x86_64 and native-gdbserver. > > Keith > > ChangeLog > 2014-06-05 Keith Seitz > > Revert: > PR c++/16253 > * ada-lang.c (ada_symbol_matches_domain): Moved here and renamed > from symbol_matches_domain in symtab.c. All local callers > of symbol_matches_domain updated. > (standard_lookup): If DOMAIN is VAR_DOMAIN and no symbol is found, > search STRUCT_DOMAIN. > (ada_find_any_type_symbol): Do not search STRUCT_DOMAIN > independently. standard_lookup will do that automatically. > * cp-namespace.c (cp_lookup_symbol_nonlocal): Explain when/why > VAR_DOMAIN searches may return a STRUCT_DOMAIN match. > (cp_lookup_symbol_in_namespace): Likewise. > If no VAR_DOMAIN symbol is found, search STRUCT_DOMAIN. > (cp_lookup_symbol_exports): Explain when/why VAR_DOMAIN searches > may return a STRUCT_DOMAIN match. > (lookup_symbol_file): Search for the class name in STRUCT_DOMAIN. > * cp-support.c: Include language.h. > (inspect_type): Explicitly search STRUCT_DOMAIN before searching > VAR_DOMAIN. > * psymtab.c (match_partial_symbol): Compare the requested > domain with the symbol's domain directly. > (lookup_partial_symbol): Likewise. > * symtab.c (lookup_symbol_in_language): Explain when/why > VAR_DOMAIN searches may return a STRUCT_DOMAIN match. > If no VAR_DOMAIN symbol is found, search STRUCT_DOMAIN for > appropriate languages. > (symbol_matches_domain): Renamed `ada_symbol_matches_domain' > and moved to ada-lang.c > (lookup_block_symbol): Explain that this function only returns > symbol matching the requested DOMAIN. > Compare the requested domain with the symbol's domain directly. > (iterate_over_symbols): Compare the requested domain with the > symbol's domain directly. > * symtab.h (symbol_matches_domain): Remove. > > testsuite/ChangeLog > 2014-06-05 Keith Seitz > > Revert: > PR c++/16253 > * gdb.cp/var-tag.cc: New file. > * gdb.cp/var-tag.exp: New file. > * gdb.dwarf2/dw2-ada-ffffffff.exp: Set the language to C++. > * gdb.dwarf2/dw2-anon-mptr.exp: Likewise. > * gdb.dwarf2/dw2-double-set-die-type.exp: Likewise. > * gdb.dwarf2/dw2-inheritance.exp: Likewise. Thanks! I've reverified my perf regression with HEAD, and then verified this patch makes it go away. [gotta love looking up "int64" 10 thousand times. 1/2 :-)]