hash64-33to64 ( bytes -- hash )


Vocabulary
checksums.cityhash.private

Inputs
bytesan object


Outputs
hashan object


Definition


:: 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~ ;