- qr = mp_mul(MP_NEW, a, b);
- mp_div(0, &qr, qr, m);
-
- if (MP_CMP(qr, !=, r)) {
- fputs("\n*** classical modmul failed", stderr);
- fputs("\n m = ", stderr); mp_writefile(m, stderr, 10);
- fputs("\n a = ", stderr); mp_writefile(a, stderr, 10);
- fputs("\n b = ", stderr); mp_writefile(b, stderr, 10);
- fputs("\n r = ", stderr); mp_writefile(r, stderr, 10);
- fputs("\nqr = ", stderr); mp_writefile(qr, stderr, 10);
- fputc('\n', stderr);
- ok = 0;
- }
-
- if (MP_CMP(mr, !=, r)) {
- fputs("\n*** montgomery modmul failed", stderr);
- fputs("\n m = ", stderr); mp_writefile(m, stderr, 10);
- fputs("\n a = ", stderr); mp_writefile(a, stderr, 10);
- fputs("\n b = ", stderr); mp_writefile(b, stderr, 10);
- fputs("\n r = ", stderr); mp_writefile(r, stderr, 10);
- fputs("\nmr = ", stderr); mp_writefile(mr, stderr, 10);
- fputc('\n', stderr);
- ok = 0;
- }