summaryrefslogtreecommitdiff
path: root/py/nlrthumb.S
diff options
context:
space:
mode:
Diffstat (limited to 'py/nlrthumb.S')
-rw-r--r--py/nlrthumb.S2
1 files changed, 2 insertions, 0 deletions
diff --git a/py/nlrthumb.S b/py/nlrthumb.S
index 8c6eb9552..6a0c7ee1e 100644
--- a/py/nlrthumb.S
+++ b/py/nlrthumb.S
@@ -60,6 +60,8 @@ nlr_pop:
nlr_jump:
ldr r3, .L2 @ load addr of nlr_top
ldr r2, [r3] @ load nlr_top
+ cmp r2, #0 @ test if nlr_top is NULL
+ beq nlr_jump_fail @ if nlr_top is NULL, transfer control to nlr_jump_fail
str r0, [r2, #4] @ store return value
ldr r0, [r2] @ load prev nlr_buf
str r0, [r3] @ store prev nol_buf into nlr_top (to unlink list)