X-Git-Url: https://bearssl.org/gitweb//home/git/?p=BearSSL;a=blobdiff_plain;f=src%2Fint%2Fi15_core.c;fp=src%2Fint%2Fi15_core.c;h=a33469ae7db8fc043b44c3505ee301fc6e7e817c;hp=5ae3b314e8636d35b2240a7919ac88a2220f88e7;hb=2f9c953af45299f8546df8984d5262e767a7d943;hpb=ef318ef83a3a58b0a9e036676b84d11261ed7bb4 diff --git a/src/int/i15_core.c b/src/int/i15_core.c index 5ae3b31..a33469a 100644 --- a/src/int/i15_core.c +++ b/src/int/i15_core.c @@ -263,7 +263,8 @@ br_i15_montymul(uint16_t *d, const uint16_t *x, const uint16_t *y, uint32_t f, xu, r, zh; xu = x[u + 1]; - f = MUL15(d[1] + MUL15(x[u + 1], y[1]), m0i) & 0x7FFF; + f = MUL15((d[1] + MUL15(x[u + 1], y[1])) & 0x7FFF, m0i) + & 0x7FFF; r = 0; for (v = 0; v < len4; v += 4) { @@ -297,7 +298,7 @@ br_i15_montymul(uint16_t *d, const uint16_t *x, const uint16_t *y, zh = dh + r; d[len] = zh & 0x7FFF; - dh = zh >> 31; + dh = zh >> 15; } /*