diff options
author | Daniel Berlin <dberlin@dberlin.org> | 2000-06-05 20:49:53 +0000 |
---|---|---|
committer | Daniel Berlin <dberlin@dberlin.org> | 2000-06-05 20:49:53 +0000 |
commit | ec6b2172bfaadd906f4733317a1836fa8146594d (patch) | |
tree | 8a276d02b41ce59dc3a291b5ab941c5fbdded86c /gdb/buildsym.c | |
parent | ca5dbca12998350b336d0d82496e52061ce5f0f1 (diff) | |
download | gdb-ec6b2172bfaadd906f4733317a1836fa8146594d.tar.gz |
C++ improvementsgdb-premipsmulti-2000-06-06-branchpoint
Diffstat (limited to 'gdb/buildsym.c')
-rw-r--r-- | gdb/buildsym.c | 26 |
1 files changed, 3 insertions, 23 deletions
diff --git a/gdb/buildsym.c b/gdb/buildsym.c index dff92936cfd..70105be0157 100644 --- a/gdb/buildsym.c +++ b/gdb/buildsym.c @@ -36,7 +36,7 @@ #include "gdb_string.h" #include "expression.h" /* For "enum exp_opcode" used by... */ #include "language.h" /* For "longest_local_hex_string_custom" */ - +#include "bcache.h" /* Ask buildsym.h to define the vars it normally declares `extern'. */ #define EXTERN /**/ @@ -1055,33 +1055,13 @@ push_context (int desc, CORE_ADDR valu) return new; } + /* Compute a small integer hash code for the given name. */ int hashname (char *name) { - register char *p = name; - register int total = p[0]; - register int c; - - c = p[1]; - total += c << 2; - if (c) - { - c = p[2]; - total += c << 4; - if (c) - { - total += p[3] << 6; - } - } - - /* Ensure result is positive. */ - if (total < 0) - { - total += (1000 << 6); - } - return (total % HASHSIZE); + return (hash(name,strlen(name)) % HASHSIZE); } |