X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=lib%2Fhash.h;h=5a9e2894131f552932bd455aee39e14634fa9829;hb=0ef165ecb57943e17a8ee8270df68ffb8d032e29;hp=979214af01978c51c71a6fa9a2d5e170bbe6779c;hpb=965607c850bb14e24905c46845d050f14105d923;p=sliver-openvswitch.git diff --git a/lib/hash.h b/lib/hash.h index 979214af0..5a9e28941 100644 --- a/lib/hash.h +++ b/lib/hash.h @@ -38,6 +38,7 @@ uint32_t hash_bytes(const void *, size_t n_bytes, uint32_t basis); static inline uint32_t hash_int(uint32_t x, uint32_t basis); static inline uint32_t hash_2words(uint32_t, uint32_t); static inline uint32_t hash_uint64(uint64_t); +static inline uint32_t hash_uint64_basis(uint64_t x, uint32_t basis); uint32_t hash_3words(uint32_t, uint32_t, uint32_t); static inline uint32_t hash_boolean(bool x, uint32_t basis); @@ -124,6 +125,11 @@ static inline uint32_t hash_uint64(const uint64_t x) return hash_2words((uint32_t)(x >> 32), (uint32_t)x); } +static inline uint32_t hash_uint64_basis(const uint64_t x, + const uint32_t basis) +{ + return hash_3words((uint32_t)(x >> 32), (uint32_t)x, basis); +} #ifdef __cplusplus } #endif