farm64-33to64 ( bytes -- hash )


Vocabulary
checksums.farmhash.private

Inputs
bytesan object


Outputs
hashan object


Definition


:: farm64-33to64 ( bytes -- hash )
bytes length :> len k2 len 2 * W+ :> mul bytes 0 fetch64
k2 W* :> a bytes 8 fetch64 :> b bytes len 8 - fetch64 mul W*
:> c bytes len 16 - fetch64 k2 W* :> d a b W+ -43 bitroll-64
c -30 bitroll-64 W+ d W+ :> y y a b k2 W+ -18 bitroll-64 W+
c W+ mul hash16-mul :> z bytes 16 fetch64 mul W*
:> e bytes 24 fetch64 :> f y bytes len 32 - fetch64 W+
mul W* :> g z bytes len 24 - fetch64 W+ mul W* :> h e f W+
-43 bitroll-64 g -30 bitroll-64 W+ ~13 more~ ;