[c0,c1] = a * b */
| 31 | |
| 32 | /** [c0,c1] = a * b */ |
| 33 | inline void mul(limb_t& c0, limb_t& c1, const limb_t& a, const limb_t& b) |
| 34 | { |
| 35 | double_limb_t t = (double_limb_t)a * b; |
| 36 | c1 = t >> LIMB_SIZE; |
| 37 | c0 = t; |
| 38 | } |
| 39 | |
| 40 | /* [c0,c1,c2] += n * [d0,d1,d2]. c2 is 0 initially */ |
| 41 | inline void mulnadd3(limb_t& c0, limb_t& c1, limb_t& c2, limb_t& d0, limb_t& d1, limb_t& d2, const limb_t& n) |
no outgoing calls
no test coverage detected