public inbox for gdb-prs@sourceware.org help / color / mirror / Atom feed
From: "dje at google dot com" <sourceware-bugzilla@sourceware.org> To: gdb-prs@sourceware.org Subject: [Bug symtab/17591] dwarf2read.c:find_slot_in_mapped_hash needs to handle "(anonymous namespace)" Date: Wed, 12 Nov 2014 22:49:00 -0000 [thread overview] Message-ID: <bug-17591-4717-5oHdbxYJsW@http.sourceware.org/bugzilla/> (raw) In-Reply-To: <bug-17591-4717@http.sourceware.org/bugzilla/> https://sourceware.org/bugzilla/show_bug.cgi?id=17591 --- Comment #1 from dje at google dot com --- Here's a tentative patch. --- /tmp/g4-67641/cache/depot/depot2/gcctools/google_vendor_src_branch/gdb/gdb-7.8.x/gdb/dwarf2read.c#4 2014-08-12 10:45:03.000000000 -0700 +++ /g4/local/ctools/gdb/7.8-gg4/depot2/gcctools/google_vendor_src_branch/gdb/gdb-7.8.x/gdb/dwarf2read.c 2014-11-12 14:45:11.000000000 -0800 @@ -2983,7 +2983,11 @@ { /* NAME is already canonical. Drop any qualifiers as .gdb_index does not contain any. */ - const char *paren = strchr (name, '('); + const char *paren = NULL; + + /* Need to handle "(anonymous namespace)". */ + if (*name != '(') + paren = strchr (name, '('); if (paren) { Before: (gdb) pt obj type = const struct (anonymous namespace)::ObjFile { char *filename; const void *start_addr; const void *end_addr; int fd; int elf_type; Elf64_Ehdr elf_header; public: ObjFile(void); } & Command execution time: 50.712058 (cpu), 52.275078 (wall) Space used: 2379862016 (+2180878336 for this command) #symtabs: 150433 (+150064), #primary symtabs: 2090 (+2081), #blocks: 774710 (+773450) After: (gdb) pt obj type = const struct (anonymous namespace)::ObjFile { char *filename; const void *start_addr; const void *end_addr; int fd; int elf_type; Elf64_Ehdr elf_header; public: ObjFile(void); } & Command execution time: 0.850209 (cpu), 0.864219 (wall) Space used: 232112128 (+33136640 for this command) #symtabs: 3040 (+2671), #primary symtabs: 107 (+98), #blocks: 22595 (+21335) This is with warm caches so wall time is close to cpu time. If caches aren't warm (fresh build) the difference is even more pronounced. -- You are receiving this mail because: You are on the CC list for the bug.
next prev parent reply other threads:[~2014-11-12 22:49 UTC|newest] Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top 2014-11-12 22:31 [Bug symtab/17591] New: " dje at google dot com 2014-11-12 22:38 ` [Bug symtab/17591] " dje at google dot com 2014-11-12 22:49 ` dje at google dot com [this message] 2014-11-12 22:50 ` dje at google dot com 2014-11-12 22:57 ` dje at google dot com 2014-11-13 20:02 ` dje at google dot com 2014-11-14 0:52 ` cvs-commit at gcc dot gnu.org 2014-11-14 0:59 ` dje at google dot com 2014-11-14 19:30 ` dje at google dot com 2014-12-03 0:25 ` cvs-commit at gcc dot gnu.org 2014-12-25 0:45 ` cvs-commit at gcc dot gnu.org 2015-02-13 19:15 ` dje at google dot com 2015-02-13 19:30 ` dje at google dot com
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=bug-17591-4717-5oHdbxYJsW@http.sourceware.org/bugzilla/ \ --to=sourceware-bugzilla@sourceware.org \ --cc=gdb-prs@sourceware.org \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).