Merge remote-tracking branch 'origin/main' into fix-codeformat-subdirs

This commit is contained in:
Jeff Epler 2021-04-30 15:31:08 -05:00
commit da19e8e2d7
2 changed files with 20 additions and 3 deletions

View File

@ -142,8 +142,15 @@ void common_hal_pulseio_pulsein_interrupt() {
// ignore pulses that are too short
if (result <= MAX_PULSE && result > MIN_PULSE) {
self->buffer[buf_index] = (uint16_t)result;
buf_index++;
self->len++;
if (self->len < self->maxlen) {
self->len++;
}
if (buf_index < self->maxlen) {
buf_index++;
} else {
self->start = 0;
buf_index = 0;
}
}
}
}

12
py/vm.c
View File

@ -127,11 +127,21 @@ mp_vm_return_kind_t PLACE_IN_ITCM(mp_execute_bytecode)(mp_code_state_t * code_st
#endif
#if MICROPY_OPT_COMPUTED_GOTO
#include "py/vmentrytable.h"
#if MICROPY_OPT_COMPUTED_GOTO_SAVE_SPACE
#define ONE_TRUE_DISPATCH() one_true_dispatch : do { \
TRACE(ip); \
MARK_EXC_IP_GLOBAL(); \
goto *(void *)((char *) && entry_MP_BC_LOAD_CONST_FALSE + entry_table[*ip++]); \
} while (0)
#define DISPATCH() do { goto one_true_dispatch; } while (0)
#else
#define ONE_TRUE_DISPATCH() DISPATCH()
#define DISPATCH() do { \
TRACE(ip); \
MARK_EXC_IP_GLOBAL(); \
goto *entry_table[*ip++]; \
} while (0)
#endif
#define DISPATCH_WITH_PEND_EXC_CHECK() goto pending_exception_check
#define ENTRY(op) entry_##op
#define ENTRY_DEFAULT entry_default
@ -197,7 +207,7 @@ mp_vm_return_kind_t PLACE_IN_ITCM(mp_execute_bytecode)(mp_code_state_t * code_st
for (;;) {
dispatch_loop:
#if MICROPY_OPT_COMPUTED_GOTO
DISPATCH();
ONE_TRUE_DISPATCH();
#else
TRACE(ip);
MARK_EXC_IP_GLOBAL();