def bump
bend-collections-laws-crypto@1.0.0.0 · src/crypto/blake/blake2b/compress.bend:719
import bend-collections-laws-crypto@1.0.0.0/src/crypto/blake/blake2b/compress.bend as Compress
import Base
import bend-collections-laws-crypto@1.0.0.0/src/crypto/blake/blake2b/types.bend as T
719
720def bump(c: T.Counter, +x: U32) -> T.Counter:
721 match c:
722 case T.C{c0,c1,c2,c3}:
723 +s0 = U32.add(c0,x)
724 +k0 = Bool.to_u32(U32.is_lt(s0,x))
725 +s1 = U32.add(c1,k0)
726 +k1 = Bool.to_u32(U32.is_lt(s1,k0))
727 +s2 = U32.add(c2,k1)
728 T.C{s0,s1,s2,U32.add(c3,Bool.to_u32(U32.is_lt(s2,k1)))}