summaryrefslogtreecommitdiff
path: root/jefs.s
diff options
context:
space:
mode:
Diffstat (limited to 'jefs.s')
-rw-r--r--jefs.s16
1 files changed, 10 insertions, 6 deletions
diff --git a/jefs.s b/jefs.s
index 7820b78..b76eb11 100644
--- a/jefs.s
+++ b/jefs.s
@@ -6,15 +6,19 @@
mov qword [r14], %1
%endmacro
+; TODO
+; i'm worried that the reason the error handling
+; doesnt work without the +24
+; is that my code is bad and underflows the stack
%macro pspop 1
mov %1, qword [r14]
lea r14, [r14+8]
- ; cmp r14, wstack
- ; jle %%ok
- ; mov qword [error], 1
- ; mov r8, qword [handler]
- ; call r8
- ; %%ok:
+ cmp r14, wstack + 24
+ jle %%ok
+ mov qword [error], 1
+ mov r8, qword [handler]
+ call r8
+ %%ok:
%endmacro
;;; dictionary macros {{{