diff options
author | Mark Mitchell <mark@codesourcery.com> | 2000-04-24 07:29:11 +0000 |
---|---|---|
committer | Mark Mitchell <mmitchel@gcc.gnu.org> | 2000-04-24 07:29:11 +0000 |
commit | 18a94a2f75417b44551c1e0e02865a9d7632e564 (patch) | |
tree | 488af2866d01b416ccf20f74818935ec34822045 /libiberty/hashtab.c | |
parent | 7d78e330d1169ef4bf7a47a67c73001b9d0fac6c (diff) | |
download | gcc-18a94a2f75417b44551c1e0e02865a9d7632e564.zip gcc-18a94a2f75417b44551c1e0e02865a9d7632e564.tar.gz gcc-18a94a2f75417b44551c1e0e02865a9d7632e564.tar.bz2 |
hashtab.h (hash_pointer): Declare.
* hashtab.h (hash_pointer): Declare.
(eq_pointer): Likewise.
* hashtab.c (hash_pointer): New function.
(eq_pointer): Likewise.
(htab_hash_pointer): New variable.
(htab_eq_pointer): Likewise.
From-SVN: r33372
Diffstat (limited to 'libiberty/hashtab.c')
-rw-r--r-- | libiberty/hashtab.c | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/libiberty/hashtab.c b/libiberty/hashtab.c index 2d1c09d..9cde177 100644 --- a/libiberty/hashtab.c +++ b/libiberty/hashtab.c @@ -56,6 +56,14 @@ Boston, MA 02111-1307, USA. */ #define DELETED_ENTRY ((void *) 1) static unsigned long higher_prime_number PARAMS ((unsigned long)); +static hashval_t hash_pointer PARAMS ((const void *)); +static int eq_pointer PARAMS ((const void *, const void *)); + +/* At some point, we could make these be NULL, and modify the + hash-table routines to handle NULL specially; that would avoid + function-call overhead for the common case of hashing pointers. */ +htab_hash htab_hash_pointer = hash_pointer; +htab_eq htab_eq_pointer = eq_pointer; /* The following function returns the nearest prime number which is greater than a given source number, N. */ @@ -88,6 +96,25 @@ higher_prime_number (n) return n; } +/* Returns a hash code for P. */ + +hashval_t +hash_pointer (p) + const void *p; +{ + return (hashval_t) p; +} + +/* Returns non-zero if P1 and P2 are equal. */ + +int +eq_pointer (p1, p2) + const void *p1; + const void *p2; +{ + return p1 == p2; +} + /* This function creates table with length slightly longer than given source length. Created hash table is initiated as empty (all the hash table entries are EMPTY_ENTRY). The function returns the |