summaryrefslogtreecommitdiff
path: root/py/nlrsetjmp.c
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2015-01-01 21:47:58 +0000
committerDamien George <damien.p.george@gmail.com>2015-01-01 21:47:58 +0000
commit8a2347723eba9899a12799021b4e47bd1fa20282 (patch)
tree9724b91cfbc5c4b6eec2cee2c88f6607c7d0b1f0 /py/nlrsetjmp.c
parent0b2a60acbec3e2789e75c63b391828656ccf1c77 (diff)
py: Move global variable nlr_top to one place, in a .c file.
This reduces dependency on assembler, and allows to consolidate global variables in the future.
Diffstat (limited to 'py/nlrsetjmp.c')
-rw-r--r--py/nlrsetjmp.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/py/nlrsetjmp.c b/py/nlrsetjmp.c
index 176138db0..76d718bba 100644
--- a/py/nlrsetjmp.c
+++ b/py/nlrsetjmp.c
@@ -26,13 +26,14 @@
#include "py/nlr.h"
-#if MICROPY_NLR_SETJMP
+// this global variable is used for all nlr implementations
+nlr_buf_t *nlr_top;
-nlr_buf_t *nlr_setjmp_top;
+#if MICROPY_NLR_SETJMP
void nlr_setjmp_jump(void *val) {
- nlr_buf_t *buf = nlr_setjmp_top;
- nlr_setjmp_top = buf->prev;
+ nlr_buf_t *buf = nlr_top;
+ nlr_top = buf->prev;
buf->ret_val = val;
longjmp(buf->jmpbuf, 1);
}