Add a check for NULL nlr_top in nlr_jump.
If no nlr_buf has been pushed, and an nlr_jump is called, then control
is transferred to nlr_jump_fail (which should bail out with a fatal
error).
diff --git a/py/nlrthumb.S b/py/nlrthumb.S
index 8c6eb95..6a0c7ee 100644
--- a/py/nlrthumb.S
+++ b/py/nlrthumb.S
@@ -60,6 +60,8 @@
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)