Merge remote-tracking branch 'origin/main' into main
This commit is contained in:
commit
98cf17ff69
2
main.c
2
main.c
@ -236,7 +236,7 @@ STATIC void cleanup_after_vm(supervisor_allocation* heap, mp_obj_t exception) {
|
|||||||
size_t traceback_len = 0;
|
size_t traceback_len = 0;
|
||||||
mp_print_t print_count = {&traceback_len, count_strn};
|
mp_print_t print_count = {&traceback_len, count_strn};
|
||||||
mp_obj_print_exception(&print_count, exception);
|
mp_obj_print_exception(&print_count, exception);
|
||||||
prev_traceback_allocation = allocate_memory(align32_size(traceback_len + 1), false, false);
|
prev_traceback_allocation = allocate_memory(align32_size(traceback_len + 1), false, true);
|
||||||
// Empirically, this never fails in practice - even when the heap is totally filled up
|
// Empirically, this never fails in practice - even when the heap is totally filled up
|
||||||
// with single-block-sized objects referenced by a root pointer, exiting the VM frees
|
// with single-block-sized objects referenced by a root pointer, exiting the VM frees
|
||||||
// up several hundred bytes, sufficient for the traceback (which tends to be shortened
|
// up several hundred bytes, sufficient for the traceback (which tends to be shortened
|
||||||
|
@ -9,3 +9,5 @@ CHIP_FAMILY = samd21
|
|||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
CIRCUITPY_FULL_BUILD = 0
|
CIRCUITPY_FULL_BUILD = 0
|
||||||
|
|
||||||
|
CIRCUITPY_RAINBOWIO = 0
|
||||||
|
@ -9,3 +9,5 @@ CHIP_FAMILY = samd21
|
|||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
CIRCUITPY_FULL_BUILD = 0
|
CIRCUITPY_FULL_BUILD = 0
|
||||||
|
|
||||||
|
CIRCUITPY_RAINBOWIO = 0
|
||||||
|
@ -9,3 +9,5 @@ CHIP_FAMILY = samd21
|
|||||||
INTERNAL_FLASH_FILESYSTEM = 1
|
INTERNAL_FLASH_FILESYSTEM = 1
|
||||||
LONGINT_IMPL = NONE
|
LONGINT_IMPL = NONE
|
||||||
CIRCUITPY_FULL_BUILD = 0
|
CIRCUITPY_FULL_BUILD = 0
|
||||||
|
|
||||||
|
CIRCUITPY_RAINBOWIO = 0
|
||||||
|
@ -11,5 +11,6 @@ LONGINT_IMPL = NONE
|
|||||||
CIRCUITPY_FULL_BUILD = 0
|
CIRCUITPY_FULL_BUILD = 0
|
||||||
|
|
||||||
# There are many pin definitions on this board; it doesn't quite fit on very large translations.
|
# There are many pin definitions on this board; it doesn't quite fit on very large translations.
|
||||||
# So remove what might be least likely module to be used.
|
# Remove a couple of modules.
|
||||||
|
CIRCUITPY_ONEWIREIO = 0
|
||||||
CIRCUITPY_RAINBOWIO = 0
|
CIRCUITPY_RAINBOWIO = 0
|
||||||
|
@ -20,6 +20,7 @@ CIRCUITPY_COUNTIO = 0
|
|||||||
CIRCUITPY_DISPLAYIO = 0
|
CIRCUITPY_DISPLAYIO = 0
|
||||||
CIRCUITPY_ERRNO = 0
|
CIRCUITPY_ERRNO = 0
|
||||||
CIRCUITPY_FRAMEBUFFERIO = 0
|
CIRCUITPY_FRAMEBUFFERIO = 0
|
||||||
|
CIRCUITPY_GETPASS = 0
|
||||||
CIRCUITPY_KEYPAD = 0
|
CIRCUITPY_KEYPAD = 0
|
||||||
CIRCUITPY_MSGPACK = 0
|
CIRCUITPY_MSGPACK = 0
|
||||||
CIRCUITPY_NEOPIXEL_WRITE = 0
|
CIRCUITPY_NEOPIXEL_WRITE = 0
|
||||||
@ -27,6 +28,7 @@ CIRCUITPY_NVM = 0
|
|||||||
CIRCUITPY_PIXELBUF = 0
|
CIRCUITPY_PIXELBUF = 0
|
||||||
CIRCUITPY_PULSEIO = 0
|
CIRCUITPY_PULSEIO = 0
|
||||||
CIRCUITPY_PWMIO = 1
|
CIRCUITPY_PWMIO = 1
|
||||||
|
CIRCUITPY_RAINBOWIO = 0
|
||||||
CIRCUITPY_RGBMATRIX = 0
|
CIRCUITPY_RGBMATRIX = 0
|
||||||
CIRCUITPY_ROTARYIO = 0
|
CIRCUITPY_ROTARYIO = 0
|
||||||
CIRCUITPY_RTC = 1
|
CIRCUITPY_RTC = 1
|
||||||
|
@ -195,7 +195,7 @@ STATIC mp_obj_t supervisor_set_next_code_file(size_t n_args, const mp_obj_t *pos
|
|||||||
const char *filename = mp_obj_str_get_data(args.filename.u_obj, &len);
|
const char *filename = mp_obj_str_get_data(args.filename.u_obj, &len);
|
||||||
free_memory(next_code_allocation);
|
free_memory(next_code_allocation);
|
||||||
if (options != 0 || len != 0) {
|
if (options != 0 || len != 0) {
|
||||||
next_code_allocation = allocate_memory(align32_size(sizeof(next_code_info_t) + len + 1), false, false);
|
next_code_allocation = allocate_memory(align32_size(sizeof(next_code_info_t) + len + 1), false, true);
|
||||||
if (next_code_allocation == NULL) {
|
if (next_code_allocation == NULL) {
|
||||||
m_malloc_fail(sizeof(next_code_info_t) + len + 1);
|
m_malloc_fail(sizeof(next_code_info_t) + len + 1);
|
||||||
}
|
}
|
||||||
|
@ -34,12 +34,9 @@
|
|||||||
|
|
||||||
enum {
|
enum {
|
||||||
CIRCUITPY_SUPERVISOR_IMMOVABLE_ALLOC_COUNT =
|
CIRCUITPY_SUPERVISOR_IMMOVABLE_ALLOC_COUNT =
|
||||||
|
0
|
||||||
// stack + heap
|
// stack + heap
|
||||||
2
|
+ 2
|
||||||
// next_code_allocation
|
|
||||||
+ 1
|
|
||||||
// prev_traceback_allocation
|
|
||||||
+ 1
|
|
||||||
|
|
||||||
#if INTERNAL_FLASH_FILESYSTEM == 0
|
#if INTERNAL_FLASH_FILESYSTEM == 0
|
||||||
+ 1
|
+ 1
|
||||||
@ -59,6 +56,10 @@ enum {
|
|||||||
|
|
||||||
CIRCUITPY_SUPERVISOR_MOVABLE_ALLOC_COUNT =
|
CIRCUITPY_SUPERVISOR_MOVABLE_ALLOC_COUNT =
|
||||||
0
|
0
|
||||||
|
// next_code_allocation
|
||||||
|
+ 1
|
||||||
|
// prev_traceback_allocation
|
||||||
|
+ 1
|
||||||
#if CIRCUITPY_DISPLAYIO
|
#if CIRCUITPY_DISPLAYIO
|
||||||
#if CIRCUITPY_TERMINALIO
|
#if CIRCUITPY_TERMINALIO
|
||||||
+ 1
|
+ 1
|
||||||
|
Loading…
Reference in New Issue
Block a user