diff options
author | Tom Tromey <tom@tromey.com> | 2021-04-28 18:44:48 -0600 |
---|---|---|
committer | Richard Earnshaw <rearnsha@arm.com> | 2021-05-07 11:17:11 +0100 |
commit | c759c777c98fab555d28d133ef0793607f8c3afc (patch) | |
tree | 05b6f52b6a4ec335853f019ce9cd2a9e6330f034 /libiberty | |
parent | 4cf88725da1cb503be04d3237354105ec170bc86 (diff) | |
download | gdb-c759c777c98fab555d28d133ef0793607f8c3afc.zip gdb-c759c777c98fab555d28d133ef0793607f8c3afc.tar.gz gdb-c759c777c98fab555d28d133ef0793607f8c3afc.tar.bz2 |
libiberty: add htab_eq_string
The libiberty hash table includes a helper function for strings, but
no equality function. Consequently, this equality function has been
reimplemented a number of times in both the gcc and binutils-gdb
source trees. This patch adds the function to the libiberty hash
table, as a step toward the goal of removing all the copies.
One change to gcc is included here. Normally I would have put this in
the next patch, but gensupport.c used the most natural name for its
reimplementation of this function, and this can't coexist with the
extern function in libiberty.
include
* hashtab.h (htab_eq_string): Declare.
libiberty
* hashtab.c (htab_eq_string): New function.
Diffstat (limited to 'libiberty')
-rw-r--r-- | libiberty/hashtab.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/libiberty/hashtab.c b/libiberty/hashtab.c index 0c7208e..7c424e8 100644 --- a/libiberty/hashtab.c +++ b/libiberty/hashtab.c @@ -841,6 +841,13 @@ htab_hash_string (const PTR p) return r; } +/* An equality function for null-terminated strings. */ +int +htab_eq_string (const void *a, const void *b) +{ + return strcmp ((const char *) a, (const char *) b) == 0; +} + /* DERIVED FROM: -------------------------------------------------------------------- lookup2.c, by Bob Jenkins, December 1996, Public Domain. |