const U128 = struct
lo: u64
hi: u64
pub fn new(lo: u64, hi: u64) U128
pub fn mul(a: u64, b: u64) U128
131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146
const U128 = struct { lo: u64, hi: u64, pub fn new(lo: u64, hi: u64) U128 { return .{ .lo = lo, .hi = hi }; } pub fn mul(a: u64, b: u64) U128 { const x = @as(u128, a) * b; return .{ .hi = @as(u64, @truncate(x >> 64)), .lo = @as(u64, @truncate(x)), }; } }