MCPcopy Create free account
hub / github.com/HelenOS/helenos / bitmap_copy

Function bitmap_copy

kernel/generic/src/adt/bitmap.c:222–238  ·  view source on GitHub ↗

Copy portion of one bitmap into another bitmap. * * @param dst Destination bitmap. * @param src Source bitmap. * @param count Number of bits to copy. * */

Source from the content-addressed store, hash-verified

220 *
221 */
222void bitmap_copy(bitmap_t *dst, bitmap_t *src, size_t count)
223{
224 assert(count <= dst->elements);
225 assert(count <= src->elements);
226
227 size_t i;
228
229 for (i = 0; i < count / BITMAP_ELEMENT; i++)
230 dst->bits[i] = src->bits[i];
231
232 if (count % BITMAP_ELEMENT) {
233 bitmap_clear_range(dst, i * BITMAP_ELEMENT,
234 count % BITMAP_ELEMENT);
235 dst->bits[i] |= src->bits[i] &
236 ((1 << (count % BITMAP_ELEMENT)) - 1);
237 }
238}
239
240static int constraint_satisfy(size_t index, size_t base, size_t constraint)
241{

Callers 3

io_perm_bitmap_installFunction · 0.85
io_perm_bitmap_installFunction · 0.85
ddi_iospace_enable_archFunction · 0.85

Calls 1

bitmap_clear_rangeFunction · 0.85

Tested by

no test coverage detected