50 uword *old_bmp, *old_abp, v;
60 old_bmp[
i] = (old_bmp[
i] | v) &
pow2_mask (n_int -
i * uword_bits);
68 uword *old_bmp, *old_abp, *new_bmp;
79 new_bmp[
i] = old_bmp[
i] | old_abp[
i];
clib_memset(h->entries, 0, sizeof(h->entries[0]) *entries)
static_always_inline uword * clib_interrupt_get_bitmap(void *d)
static uword pow2_mask(uword x)
__clib_export void clib_interrupt_resize(void **data, uword n_int)
__clib_export void clib_interrupt_init(void **data, uword n_int)
sll srl srl sll sra u16x4 i
static uword round_pow2(uword x, uword pow2)
static void clib_mem_free(void *p)
static_always_inline uword * clib_interrupt_get_atomic_bitmap(void *d)
static void * clib_mem_alloc_aligned(uword size, uword align)
#define CLIB_CACHE_LINE_BYTES
CLIB vectors are ubiquitous dynamically resized arrays with by user defined "headers".