s_bmul_1x1
void s_bmul_1x1(mp_digit *rh, mp_digit *rl, const mp_digit a, const mp_digit b);
s_bmul_1x1(r+3, r+2, a1, b1);
s_bmul_1x1(r+1, r, a0, b0);
s_bmul_1x1(&m1, &m0, a0 ^ a1, b0 ^ b1);
s_bmul_1x1(r+5, r+4, a2, b2); /* fill top 2 words */
s_bmul_1x1(&a1b1, &a0b0, a_i, b);
s_bmul_1x1(&a1b1, &a0b0, a_i, b);