MCPcopy Create free account
hub / github.com/CppCXY/EmmyLuaCodeStyle / mi_bitmap_mask_across

Function mi_bitmap_mask_across

3rd/mimalloc-2.0.9/src/bitmap.c:302–311  ·  view source on GitHub ↗

Helper for masks across fields; returns the mid count, post_mask may be 0

Source from the content-addressed store, hash-verified

300
301// Helper for masks across fields; returns the mid count, post_mask may be 0
302static size_t mi_bitmap_mask_across(mi_bitmap_index_t bitmap_idx, size_t bitmap_fields, size_t count, size_t* pre_mask, size_t* mid_mask, size_t* post_mask) {
303 MI_UNUSED_RELEASE(bitmap_fields);
304 const size_t bitidx = mi_bitmap_index_bit_in_field(bitmap_idx);
305 if mi_likely(bitidx + count <= MI_BITMAP_FIELD_BITS) {
306 *pre_mask = mi_bitmap_mask_(count, bitidx);
307 *mid_mask = 0;
308 *post_mask = 0;
309 mi_assert_internal(mi_bitmap_index_field(bitmap_idx) < bitmap_fields);
310 return 0;
311 }
312 else {
313 const size_t pre_bits = MI_BITMAP_FIELD_BITS - bitidx;
314 mi_assert_internal(pre_bits < count);

Callers 3

_mi_bitmap_claim_acrossFunction · 0.85

Calls 3

mi_bitmap_mask_Function · 0.85
mi_bitmap_index_fieldFunction · 0.85

Tested by

no test coverage detected