Replace hash function from bcache with fast_hash
authorChristian Biesinger <cbiesinger@google.com>
Tue, 3 Dec 2019 00:58:35 +0000 (18:58 -0600)
committerChristian Biesinger <cbiesinger@google.com>
Tue, 3 Dec 2019 21:27:15 +0000 (15:27 -0600)
commit4cbd39b289b012782df2fdda9adc7eacdcfc6ad7
treef52aba927c48c83dca2923c7c3c0c55657ca29c1
parent82f910ea9cce04b0faabfcd022d9d8949567541e
Replace hash function from bcache with fast_hash

This function is not just slower than xxhash, it is slower than
even libiberty's iterative_hash, so there does not seem to be
a reason for it to exist.

------------------------------------------------------------
Benchmark                     Time           CPU Iterations
------------------------------------------------------------
BM_xxh3                      11 ns         11 ns   66127192
BM_xxh32                     19 ns         19 ns   36792609
BM_xxh64                     16 ns         16 ns   42941328
BM_city32                    26 ns         26 ns   27028370
BM_city64                    17 ns         17 ns   40472793
BM_iterative_hash            77 ns         77 ns    9088854
BM_bcache_hash              125 ns        125 ns    5599232

gdb/ChangeLog:

2019-12-03  Christian Biesinger  <cbiesinger@google.com>

* bcache.c (hash): Remove.
(hash_continue): Remove.
* bcache.h (hash): Remove.
(hash_continue): Remove.
(struct bcache) <ctor>: Update.
* psymtab.c (psymbol_hash): Update.
* stabsread.c (hashname): Update.
* utils.h (fast_hash): Add an argument for a start value,
defaulting to zero.

Change-Id: I107f013eda5fdd3293326b5a206be43155dae0f8
gdb/ChangeLog
gdb/bcache.c
gdb/bcache.h
gdb/psymtab.c
gdb/stabsread.c
gdb/utils.h