mirror of
https://github.com/micropython/micropython.git
synced 2026-01-07 12:40:15 +01:00
unix/coverage: Add extra GC coverage test for ATB gap byte.
The assertion that is added here (to gc.c) fails when running this new test if ALLOC_TABLE_GAP_BYTE is set to 0. Signed-off-by: Jeff Epler <jepler@gmail.com> Signed-off-by: Damien George <damien@micropython.org>
This commit is contained in:
committed by
Damien George
parent
9f434dd8de
commit
d75ff42297
3
py/gc.c
3
py/gc.c
@@ -297,6 +297,9 @@ STATIC void gc_mark_subtree(size_t block)
|
||||
n_blocks += 1;
|
||||
} while (ATB_GET_KIND(area, block + n_blocks) == AT_TAIL);
|
||||
|
||||
// check that the consecutive blocks didn't overflow past the end of the area
|
||||
assert(area->gc_pool_start + (block + n_blocks) * BYTES_PER_BLOCK <= area->gc_pool_end);
|
||||
|
||||
// check this block's children
|
||||
void **ptrs = (void **)PTR_FROM_BLOCK(area, block);
|
||||
for (size_t i = n_blocks * BYTES_PER_BLOCK / sizeof(void *); i > 0; i--, ptrs++) {
|
||||
|
||||
Reference in New Issue
Block a user