summaryrefslogtreecommitdiff
path: root/jefs.s
diff options
context:
space:
mode:
authorkitty <nepeta@canaglie.net>2026-02-26 15:45:15 +1100
committerkitty <nepeta@canaglie.net>2026-02-26 15:45:15 +1100
commitccd001edb78f39e7ae3f2f29ea67cc4fae9cd1b4 (patch)
treea71440e16db97ab48ee595e07a1a1cabbd1a03e4 /jefs.s
parent99b0d29d403a3f57db8760282be6acbb6c8fe532 (diff)
maybe this program is extremely broken. possible
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 {{{