diff options
author | Keith Seitz <keiths@redhat.com> | 2014-06-07 10:40:39 -0700 |
---|---|---|
committer | Keith Seitz <keiths@redhat.com> | 2014-06-07 10:40:39 -0700 |
commit | 4186eb54dd4d57b59d58f470ec0fa9b19b9c9d5e (patch) | |
tree | a06ca25b09e28008b738dbbda552e4628c4fdbc4 /gdb/psymtab.c | |
parent | b893397a4b1316610f49819344817715e4305de9 (diff) | |
download | gdb-4186eb54dd4d57b59d58f470ec0fa9b19b9c9d5e.zip gdb-4186eb54dd4d57b59d58f470ec0fa9b19b9c9d5e.tar.gz gdb-4186eb54dd4d57b59d58f470ec0fa9b19b9c9d5e.tar.bz2 |
Revert patchset for c++/16253: it causes a large performance regression.
See the bug for further information.
Diffstat (limited to 'gdb/psymtab.c')
-rw-r--r-- | gdb/psymtab.c | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/gdb/psymtab.c b/gdb/psymtab.c index 8f2de2a..2787f4c 100644 --- a/gdb/psymtab.c +++ b/gdb/psymtab.c @@ -594,7 +594,8 @@ match_partial_symbol (struct objfile *objfile, while (top <= real_top && match (SYMBOL_SEARCH_NAME (*top), name) == 0) { - if (SYMBOL_DOMAIN (*top) == domain) + if (symbol_matches_domain (SYMBOL_LANGUAGE (*top), + SYMBOL_DOMAIN (*top), domain)) return *top; top++; } @@ -607,7 +608,8 @@ match_partial_symbol (struct objfile *objfile, { for (psym = start; psym < start + length; psym++) { - if (SYMBOL_DOMAIN (*psym) == domain + if (symbol_matches_domain (SYMBOL_LANGUAGE (*psym), + SYMBOL_DOMAIN (*psym), domain) && match (SYMBOL_SEARCH_NAME (*psym), name) == 0) return *psym; } @@ -723,7 +725,8 @@ lookup_partial_symbol (struct objfile *objfile, while (top <= real_top && SYMBOL_MATCHES_SEARCH_NAME (*top, search_name)) { - if (SYMBOL_DOMAIN (*top) == domain) + if (symbol_matches_domain (SYMBOL_LANGUAGE (*top), + SYMBOL_DOMAIN (*top), domain)) { do_cleanups (cleanup); return (*top); @@ -739,7 +742,8 @@ lookup_partial_symbol (struct objfile *objfile, { for (psym = start; psym < start + length; psym++) { - if (SYMBOL_DOMAIN (*psym) == domain + if (symbol_matches_domain (SYMBOL_LANGUAGE (*psym), + SYMBOL_DOMAIN (*psym), domain) && SYMBOL_MATCHES_SEARCH_NAME (*psym, search_name)) { do_cleanups (cleanup); @@ -1219,7 +1223,8 @@ map_block (const char *name, domain_enum namespace, struct objfile *objfile, for (sym = block_iter_match_first (block, name, match, &iter); sym != NULL; sym = block_iter_match_next (name, match, &iter)) { - if (SYMBOL_DOMAIN (sym) == namespace) + if (symbol_matches_domain (SYMBOL_LANGUAGE (sym), + SYMBOL_DOMAIN (sym), namespace)) { if (callback (block, sym, data)) return 1; |