ref: 3f168e51ab3000409905edd2e2b6e1ba6cd60aa5
dir: /bitvector.c/
#include "flisp.h" uint32_t * bitvector_resize(uint32_t *b, uint64_t oldsz, uint64_t newsz, int initzero) { uint32_t *p; size_t sz = ((newsz+31)>>5) * sizeof(uint32_t); p = MEM_REALLOC(b, sz); if(p == nil) return nil; if(initzero && newsz>oldsz){ size_t osz = ((oldsz+31)>>5) * sizeof(uint32_t); memset(&p[osz/sizeof(uint32_t)], 0, sz-osz); } return p; }