Lines Matching refs:bit
38 * 1) a bit map to track which blocks have been written
92 u_char * block_bitmap; /* 1 bit per block; 1=written */
103 u_long bit;
107 bit(int b)
120 return ((u_char)(bit(b) - 1));
131 return ((u_char)((~bits_lower(start)) & (bits_lower(end) | bit(end))));
140 b.bit = where % NBBY;
164 if (start.bit) {
165 map[start.byte] |= byte_set_bits(start.bit, NBBY - 1);
166 start.bit = 0;
192 if (end.bit > start.bit) {
193 map[start.byte] |= byte_set_bits(start.bit, end.bit - 1);
208 * a byte, then any remaining bits to find the bit that is different.
224 is_set = (map[start.byte] & bit(start.bit)) ? TRUE : FALSE;
230 if (start.bit) { /* try to align to a byte */
231 for (i = start.bit; i < NBBY; i++) {
234 this_is_set = (map[start.byte] & bit(i)) ? TRUE : FALSE;
236 goto done; /* found bit that was different, we're done */
240 start.bit = 0; /* made it to the next byte */
286 this_is_set = (map[start.byte] & bit(i)) ? TRUE : FALSE;
298 for (i = start.bit; i < (int)end.bit; i++) {
299 boolean_t this_is_set = (map[start.byte] & bit(i)) ? TRUE : FALSE;
540 return ((map->block_bitmap[b.byte] & bit(b.bit)) ? TRUE : FALSE);
585 /* create a block bitmap, one bit per block */