aboutsummaryrefslogtreecommitdiff
path: root/src/interp/debug.lisp
diff options
context:
space:
mode:
authorGabriel Dos Reis <GabrielDosReis@users.noreply.github.com>2022-08-30 02:37:21 -0700
committerGitHub <noreply@github.com>2022-08-30 02:37:21 -0700
commitc557c02fc88f18644b1ab0aa85756af09585ed47 (patch)
tree1c22c016f2ff4389cd5485c911ce7ca509221a54 /src/interp/debug.lisp
parentc6187dc679a536686afbdeb0999346699df625ce (diff)
downloadopen-axiom-c557c02fc88f18644b1ab0aa85756af09585ed47.tar.gz
Do not generate `SPADLET` opcode (#23)
This patch makes the Spad compiler no longer generate `SPADLET`.
Diffstat (limited to 'src/interp/debug.lisp')
-rw-r--r--src/interp/debug.lisp6
1 files changed, 6 insertions, 0 deletions
diff --git a/src/interp/debug.lisp b/src/interp/debug.lisp
index e091b57f..2e425aa1 100644
--- a/src/interp/debug.lisp
+++ b/src/interp/debug.lisp
@@ -46,6 +46,12 @@
(import-module "sys-macros")
(import-module "lexing")
(in-package "BOOT")
+
+(defmacro SPADLET (A B)
+ (if (ATOM A)
+ `(SETQ ,A ,B)
+ `(OR (IS ,B ,A)
+ (LET_ERROR ,(MK_LEFORM A) ,(MKQ B) ))))
(defvar S-SPADKEY NIL) ;" this is augmented by MAKESPADOP"