def small1

bend-collections@1.0.0.0 · src/crypto/sha512/core.bend:47

import bend-collections@1.0.0.0/src/crypto/sha512/core.bend as Core
import Base
import bend-collections@1.0.0.0/src/crypto/sha512/types.bend as T

47# FIPS 180-4 (4.13): ROTR19 ^ ROTR61 ^ SHR6
48def small1(x: T.Lane) -> T.Lane:
49  match x:
50    case T.W{+hi, +lo}:
51      T.W{U32.xor(U32.xor(U32.or(U32.shrn(hi, 19n), U32.shln(lo, 13n)), U32.or(U32.shrn(lo, 29n), U32.shln(hi, 3n))), U32.shrn(hi, 6n)),
52        U32.xor(U32.xor(U32.or(U32.shrn(lo, 19n), U32.shln(hi, 13n)), U32.or(U32.shrn(hi, 29n), U32.shln(lo, 3n))), U32.or(U32.shrn(lo, 6n), U32.shln(hi, 26n)))}

Uses (5)

Used by (1)