Reverts
0073a9c8941a0e04a10035e7cc00ffddc8c0f083
Turns out the C99 standard guarantees a 2's complement representation
for fixed width integers: section 7.20.1.1, paragraph 1:
> The typedef name intN_t designates a signed integer type with width N,
> no padding bits, and a two's complement representation.
The comment was not needed though (those line are fully portable C99),
so I preserved its removal.
static void fe_cswap(fe f, fe g, int b)
{
- u32 mask = -b; // -1 = 0xffffffff
+ i32 mask = -b; // -1 = 0xffffffff
FOR (i, 0, 10) {
i32 x = (f[i] ^ g[i]) & mask;
f[i] = f[i] ^ x;
static void fe_ccopy(fe f, const fe g, int b)
{
- u32 mask = -b; // -1 = 0xffffffff
+ i32 mask = -b; // -1 = 0xffffffff
FOR (i, 0, 10) {
i32 x = (f[i] ^ g[i]) & mask;
f[i] = f[i] ^ x;