Improve pointer hash function to include all bits
authorak <ak@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 23 Apr 2013 03:09:47 +0000 (03:09 +0000)
committerak <ak@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 23 Apr 2013 03:09:47 +0000 (03:09 +0000)
commit88a96138095975577488bcb3667a85107977b433
tree23ffa8b00dd8951c14d347d1ad8327bd887526c2
parentab16985ed348bea61e913f3743bd5764a91b8f33
Improve pointer hash function to include all bits

The hashtab pointer hash function is not very good. It throws most of the
bits in the pointer away.

This changes pointer_hash to use the mix code from jhash function that mixes
all the bits on the pointer and makes them dependent on each other, before doing
the modulo.

libiberty/:

2013-04-22  Andi Kleen <ak@linux.intel.com>

* hashtab.c (hash_pointer): Move to end of file and reimplement.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@198171 138bc75d-0d04-0410-961f-82ee72b054a4
libiberty/ChangeLog
libiberty/hashtab.c