Lines Matching refs:cursor
52 usword_t *cursor = bp_cursor(bp); // address of first word
56 *cursor++ |= (all_ones << sh);
62 for ( ; spill >= (sword_t)bits_per_word; spill -= bits_per_word) *cursor++ = all_ones;
65 if (spill > 0) *cursor |= (all_ones >> (bits_per_word - spill));
76 usword_t *cursor = bp_cursor(bp); // address of first word
80 *cursor++ &= ~(all_ones << sh);
86 for ( ; spill >= (sword_t)bits_per_word; spill -= bits_per_word) *cursor++ = all_zeros;
89 if (spill > 0) *cursor &= ~(all_ones >> (bits_per_word - spill));
94 usword_t *cursor = bp_cursor(bp); // address of first word
98 if (*cursor++ & (all_ones << sh)) return false;
105 if (*cursor++) return false;
109 if (*cursor & (all_ones >> (bits_per_word - spill)))
161 usword_t *cursor = bp_cursor(bp); // address of bit map data
167 if (sh) word = *cursor & mask(sh);
172 cursor = skip_backward_all_zeros(cursor - 1, first);
175 if ( cursor >= first) word = *cursor;
180 return cursor_bp(cursor) + ilog2(word);
190 usword_t *cursor = bp_cursor(bp); // address of bit map data
195 if (cursor >= end) return not_found;
198 usword_t word = *cursor;
206 cursor = skip_all_zeros(cursor + 1, end);
209 word = cursor < end ? *cursor : all_ones;
213 return cursor < end ? cursor_bp(cursor) + count_trailing_zeros(word) : not_found;
241 // the first callto next_set_bit() will return 3. (This is done because the cursor is used
257 usword_t *cursor = _bitmap.skip_all_zeros(start, end);
258 _index = _bitmap.cursor_bp(cursor);