var mulWWTests = []mulWWTest{
- mulWWTest{_M, _M, _M - 1, 1},
+ mulWWTest{_M, _M, _M-1, 1},
}
// TODO(agl): These will only work on 64-bit platforms.
// mulAddWWWTest{15064310297182388543, 0xe7df04d2d35d5d80, 13537600649892366549, 13644450054494335067, 10832252001440893781},
// mulAddWWWTest{15064310297182388543, 0xdab2f18048baa68d, 13644450054494335067, 12869334219691522700, 14233854684711418382},
- mulAddWWWTest{_M, _M, 0, _M - 1, 1},
+ mulAddWWWTest{_M, _M, 0, _M-1, 1},
mulAddWWWTest{_M, _M, _M, _M, 0},
}
10: "3628800",
20: "2432902008176640000",
100: "933262154439441526816992388562667004907159682643816214685929"
- "638952175999932299156089414639761565182862536979208272237582"
- "51185210916864000000000000000000000000",
+ "638952175999932299156089414639761565182862536979208272237582"
+ "51185210916864000000000000000000000000",
}
// leadingZeroBits returns the number of leading zero bits in x.
func leadingZeroBits(x Word) int {
c := 0;
- if x < 1 << (_W/2) {
+ if x < 1<<(_W/2) {
x <<= _W/2;
c = int(_W/2);
}
for i := 0; x != 0; i++ {
if x&(1<<(_W-1)) != 0 {
- return i + c;
+ return i+c;
}
x <<= 1;
}
return;
}
- ñ := uint(_W) - uint(n);
+ ñ := uint(_W)-uint(n);
for i := len(src)-1; i >= 1; i-- {
dst[i] = src[i]<<uint(n);
dst[i] |= src[i-1]>>ñ;
return;
}
- ñ := uint(_W) - uint(n);
+ ñ := uint(_W)-uint(n);
for i := 0; i < len(src)-1; i++ {
dst[i] = src[i]>>uint(n);
dst[i] |= src[i+1]<<ñ;