mirror of
https://github.com/micropython/micropython.git
synced 2026-01-05 19:50:30 +01:00
py/gc: Make GC block size be configurable.
This commit is contained in:
4
py/gc.c
4
py/gc.c
@@ -46,8 +46,8 @@
|
|||||||
// make this 1 to dump the heap each time it changes
|
// make this 1 to dump the heap each time it changes
|
||||||
#define EXTENSIVE_HEAP_PROFILING (0)
|
#define EXTENSIVE_HEAP_PROFILING (0)
|
||||||
|
|
||||||
#define WORDS_PER_BLOCK (4)
|
#define WORDS_PER_BLOCK ((MICROPY_BYTES_PER_GC_BLOCK) / BYTES_PER_WORD)
|
||||||
#define BYTES_PER_BLOCK (WORDS_PER_BLOCK * BYTES_PER_WORD)
|
#define BYTES_PER_BLOCK (MICROPY_BYTES_PER_GC_BLOCK)
|
||||||
|
|
||||||
// ATB = allocation table byte
|
// ATB = allocation table byte
|
||||||
// 0b00 = FREE -- free block
|
// 0b00 = FREE -- free block
|
||||||
|
|||||||
@@ -96,6 +96,10 @@
|
|||||||
/*****************************************************************************/
|
/*****************************************************************************/
|
||||||
/* Memory allocation policy */
|
/* Memory allocation policy */
|
||||||
|
|
||||||
|
// Number of bytes in memory allocation/GC block. Any size allocated will be
|
||||||
|
// rounded up to be multiples of this.
|
||||||
|
#define MICROPY_BYTES_PER_GC_BLOCK (4 * BYTES_PER_WORD)
|
||||||
|
|
||||||
// Number of words allocated (in BSS) to the GC stack (minimum is 1)
|
// Number of words allocated (in BSS) to the GC stack (minimum is 1)
|
||||||
#ifndef MICROPY_ALLOC_GC_STACK_SIZE
|
#ifndef MICROPY_ALLOC_GC_STACK_SIZE
|
||||||
#define MICROPY_ALLOC_GC_STACK_SIZE (64)
|
#define MICROPY_ALLOC_GC_STACK_SIZE (64)
|
||||||
|
|||||||
Reference in New Issue
Block a user