def u64.div10
import bend-kit-redis@0.3.0.0/redis.bend as Redisimport Base
60# The 64-bit (hi, lo) divided by 10, and the remainder, over 16-bit limbs.
61def u64.div10(+hi: U32, +lo: U32) -> U32 & U32 & U32:
62 +a = (hi >> 16n : U32)
63 +x = (((a % 10) << 16n) .|. (hi .&. 65535) : U32)
64 +y = (((x % 10) << 16n) .|. (lo >> 16n) : U32)
65 +z = (((y % 10) << 16n) .|. (lo .&. 65535) : U32)
66 ((((a / 10) << 16n) .|. (x / 10) : U32), (((y / 10) << 16n) .|. (z / 10) : U32), (z % 10 : U32))