Refactored unsigned long negations
am: 10fbe684fb
* commit '10fbe684fbabfb51112bcd44e7f2a80d5c9807cb':
Refactored unsigned long negations
This commit is contained in:
@@ -90,13 +90,13 @@ void SparseBitSet::initFromRanges(const uint32_t* ranges, size_t nRanges) {
|
||||
size_t nElements = (end - (start & ~kElMask) + kElMask) >> kLogBitsPerEl;
|
||||
if (nElements == 1) {
|
||||
mBitmaps[index] |= (kElAllOnes >> (start & kElMask)) &
|
||||
(kElAllOnes << ((-end) & kElMask));
|
||||
(kElAllOnes << ((~end + 1) & kElMask));
|
||||
} else {
|
||||
mBitmaps[index] |= kElAllOnes >> (start & kElMask);
|
||||
for (size_t j = 1; j < nElements - 1; j++) {
|
||||
mBitmaps[index + j] = kElAllOnes;
|
||||
}
|
||||
mBitmaps[index + nElements - 1] |= kElAllOnes << ((-end) & kElMask);
|
||||
mBitmaps[index + nElements - 1] |= kElAllOnes << ((~end + 1) & kElMask);
|
||||
}
|
||||
for (size_t j = startPage + 1; j < endPage + 1; j++) {
|
||||
mIndices[j] = (currentPage++) << (kLogValuesPerPage - kLogBitsPerEl);
|
||||
|
||||
Reference in New Issue
Block a user