bool
findOverflow(int width, uint64_t dest, uint64_t src1, uint64_t src2) {
int shift = width - 1;
- return ((src1 ^ ~src2) & (src1 ^ dest)) & (1 << shift);
+ return ((src1 ^ ~src2) & (src1 ^ dest)) & (1ULL << shift);
}
/**
inline
bool
findParity(int width, uint64_t dest) {
- dest &= width;
+ dest &= mask(width);
dest ^= (dest >> 32);
dest ^= (dest >> 16);
dest ^= (dest >> 8);