unsigned long low;
long hi;
{
- words[0] = ((low) & (((unsigned long) 1 << ((8 * 8) / 2)) - 1));
- words[1] = ((unsigned long) (low) >> (8 * 8) / 2);
- words[2] = ((hi) & (((unsigned long) 1 << ((8 * 8) / 2)) - 1));
- words[3] = ((unsigned long) (hi) >> (8 * 8) / 2);
+ words[0] = ((low) & (((unsigned long) 1 << (sizeof(unsigned long) / 2)) - 1));
+ words[1] = ((unsigned long) (low) >> sizeof(unsigned long) / 2);
+ words[2] = ((hi) & (((unsigned long) 1 << (sizeof(unsigned long) / 2)) - 1));
+ words[3] = ((unsigned long) (hi) >> sizeof(unsigned long) / 2);
}
static void
unsigned long *low;
long *hi;
{
- *low = words[0] + words[1] * ((unsigned long) 1 << (8 * 8) / 2);
- *hi = words[2] + words[3] * ((unsigned long) 1 << (8 * 8) / 2);
+ *low = words[0] + words[1] * ((unsigned long) 1 << sizeof(unsigned long) / 2);
+ *hi = words[2] + words[3] * ((unsigned long) 1 << sizeof(unsigned long) / 2);
}
int
carry += arg1[i] * arg2[j];
carry += prod[k];
- prod[k] = ((carry) & (((unsigned long) 1 << ((8 * 8) / 2)) - 1));
- carry = ((unsigned long) (carry) >> (8 * 8) / 2);
+ prod[k] = ((carry) & (((unsigned long) 1 << (sizeof(unsigned long) / 2)) - 1));
+ carry = ((unsigned long) (carry) >> sizeof(unsigned long) / 2);
}
prod[i + 4] = carry;
}