func zero(x uint64) uint64 { … } func nonzero(x uint64) uint64 { … } func shl(u1, u2 uint64, n uint) (r1, r2 uint64) { … } func shr(u1, u2 uint64, n uint) (r1, r2 uint64) { … } // shrcompress compresses the bottom n+1 bits of the two-word // value into a single bit. the result is equal to the value // shifted to the right by n, except the result's 0th bit is // set to the bitwise OR of the bottom n+1 bits. func shrcompress(u1, u2 uint64, n uint) (r1, r2 uint64) { … } func lz(u1, u2 uint64) (l int32) { … } // split splits b into sign, biased exponent, and mantissa. // It adds the implicit 1 bit to the mantissa for normal values, // and normalizes subnormal values. func split(b uint64) (sign uint32, exp int32, mantissa uint64) { … } // FMA returns x * y + z, computed with only one rounding. // (That is, FMA returns the fused multiply-add of x, y, and z.) func FMA(x, y, z float64) float64 { … }