Lines Matching refs:uint64
18 uint128(uint64 top, uint64 bottom);
21 uint128(uint64 bottom); // hi_ = 0
25 void Initialize(uint64 top, uint64 bottom);
44 friend uint64 Uint128Low64(const uint128& v);
45 friend uint64 Uint128High64(const uint128& v);
55 uint64 lo_;
56 uint64 hi_;
73 uint64 hi;
74 uint64 lo;
86 inline uint64 Uint128Low64(const uint128& v) { return v.lo_; } in Uint128Low64()
87 inline uint64 Uint128High64(const uint128& v) { return v.hi_; } in Uint128High64()
108 inline uint128::uint128(uint64 top, uint64 bottom) : lo_(bottom), hi_(top) { } in uint128()
111 inline uint128::uint128(uint64 bottom) : lo_(bottom), hi_(0) { } in uint128()
118 inline void uint128::Initialize(uint64 top, uint64 bottom) { in Initialize()
142 const uint64 hi_flip = ~Uint128High64(val);
143 const uint64 lo_flip = ~Uint128Low64(val);
144 const uint64 lo_add = lo_flip + 1;
194 uint64 new_hi = (Uint128High64(val) << amount) |
196 uint64 new_lo = Uint128Low64(val) << amount;
211 uint64 new_hi = Uint128High64(val) >> amount;
212 uint64 new_lo = (Uint128Low64(val) >> amount) |
270 uint64 lolo = lo_ + b.lo_;
286 uint64 a96 = hi_ >> 32;
287 uint64 a64 = hi_ & 0xffffffffu;
288 uint64 a32 = lo_ >> 32;
289 uint64 a00 = lo_ & 0xffffffffu;
290 uint64 b96 = b.hi_ >> 32;
291 uint64 b64 = b.hi_ & 0xffffffffu;
292 uint64 b32 = b.lo_ >> 32;
293 uint64 b00 = b.lo_ & 0xffffffffu;
297 uint64 c96 = a96 * b00 + a64 * b32 + a32 * b64 + a00 * b96;
298 uint64 c64 = a64 * b00 + a32 * b32 + a00 * b64;