Handbook
Glossary
hash64-33to64 ( bytes -- hash )
Vocabulary
checksums
.
cityhash
.
private
Inputs
bytes
an
object
Outputs
hash
an
object
Definition
USING:
math
math.bitwise
sequences
;
IN:
checksums.cityhash.private
::
hash64-33to64
( bytes -- hash )
bytes
length
:>
len
k2
len 2
*
W+
:>
mul bytes 0
fetch64
k2
W*
:>
a bytes 8
fetch64
:>
b bytes len 24
-
fetch64
:>
c bytes len 32
-
fetch64
:>
d bytes 16
fetch64
k2
W*
:>
e bytes 24
fetch64
9
W*
:>
f bytes len 8
-
fetch64
:>
g bytes len 16
-
fetch64
mul
W*
:>
h a g
W+
-43
bitroll-64
b -30
bitroll-64
c
W+
9
W*
W+
:>
u a g
W+
d
bitxor
f
W+
1
W+
:>
v u v
W+
mul
W*
swap64
h
W+
:>
w e f
W+
-42
bitroll-64
c
W+
:>
x v ~41 more~
;