aboutsummaryrefslogtreecommitdiff
path: root/py/nlrsetjmp.c
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2017-12-28 16:46:30 +1100
committerDamien George <damien.p.george@gmail.com>2017-12-28 16:46:30 +1100
commitb25f92160b318a096c516c430afde5472a944c19 (patch)
tree18022d1de245f9fca253f2a8076c4e8c79f6fca8 /py/nlrsetjmp.c
parent5bf8e85fc828974199d469db711aa2f9649c467b (diff)
py/nlr: Factor out common NLR code to macro and generic funcs in nlr.c.
Each NLR implementation (Thumb, x86, x64, xtensa, setjmp) duplicates a lot of the NLR code, specifically that dealing with pushing and popping the NLR pointer to maintain the linked-list of NLR buffers. This patch factors all of that code out of the specific implementations into generic functions in nlr.c, along with a helper macro in nlr.h. This eliminates duplicated code.
Diffstat (limited to 'py/nlrsetjmp.c')
-rw-r--r--py/nlrsetjmp.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/py/nlrsetjmp.c b/py/nlrsetjmp.c
index 63376a553..960dd86f5 100644
--- a/py/nlrsetjmp.c
+++ b/py/nlrsetjmp.c
@@ -3,7 +3,7 @@
*
* The MIT License (MIT)
*
- * Copyright (c) 2013, 2014 Damien P. George
+ * Copyright (c) 2013-2017 Damien P. George
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
@@ -24,11 +24,11 @@
* THE SOFTWARE.
*/
-#include "py/nlr.h"
+#include "py/mpstate.h"
#if MICROPY_NLR_SETJMP
-void nlr_setjmp_jump(void *val) {
+void nlr_jump(void *val) {
nlr_buf_t **top_ptr = &MP_STATE_THREAD(nlr_top);
nlr_buf_t *top = *top_ptr;
if (top == NULL) {