aboutsummaryrefslogtreecommitdiff
path: root/py/nlrxtensa.c
diff options
context:
space:
mode:
Diffstat (limited to 'py/nlrxtensa.c')
-rw-r--r--py/nlrxtensa.c2
1 files changed, 2 insertions, 0 deletions
diff --git a/py/nlrxtensa.c b/py/nlrxtensa.c
index 4520e7e7a..5a969fc87 100644
--- a/py/nlrxtensa.c
+++ b/py/nlrxtensa.c
@@ -58,6 +58,7 @@ unsigned int nlr_push(nlr_buf_t *nlr) {
__attribute__((used)) unsigned int nlr_push_tail(nlr_buf_t *nlr) {
nlr_buf_t **top = &MP_STATE_THREAD(nlr_top);
nlr->prev = *top;
+ MP_NLR_SAVE_PYSTACK(nlr);
*top = nlr;
return 0; // normal return
}
@@ -75,6 +76,7 @@ NORETURN void nlr_jump(void *val) {
}
top->ret_val = val;
+ MP_NLR_RESTORE_PYSTACK(top);
*top_ptr = top->prev;
__asm volatile (