28 lines
427 B
C
28 lines
427 B
C
|
|
typedef unsigned short fl_cursor;
|
|
|
|
typedef struct {
|
|
fl_cursor pos;
|
|
fl_cursor count;
|
|
} gc_fl;
|
|
|
|
typedef struct _gc_freelist {
|
|
int current;
|
|
int count;
|
|
int size_bits;
|
|
gc_fl *data;
|
|
} gc_freelist;
|
|
|
|
typedef struct {
|
|
int block_size;
|
|
int max_blocks;
|
|
int first_block;
|
|
bool need_flush;
|
|
// mutable
|
|
gc_freelist free;
|
|
unsigned char *sizes;
|
|
int sizes_ref;
|
|
int sizes_ref2;
|
|
} gc_allocator_page_data;
|
|
|