aboutsummaryrefslogtreecommitdiffstats
path: root/csc/cps.csc
diff options
context:
space:
mode:
authorRose Hogenson <rhogenson@posteo.net>2022-07-30 13:31:05 -0700
committerRose Hogenson <rhogenson@posteo.net>2022-07-30 13:31:19 -0700
commit6ffa3538cfeb5a97e967544bfbbcf907f4aa565f (patch)
tree691d7b73e47c8c07acbf3fef5cee11d76bb34a52 /csc/cps.csc
parent0632650d0e4250e08a76982ab2713a34e3531b33 (diff)
downloadchromatopelma-6ffa3538cfeb5a97e967544bfbbcf907f4aa565f.tar.zst
Add call-builtin syntax.
This syntax allows calling opcodes directly from scheme code. Very powerful technique.
Diffstat (limited to 'csc/cps.csc')
-rw-r--r--csc/cps.csc2
1 files changed, 1 insertions, 1 deletions
diff --git a/csc/cps.csc b/csc/cps.csc
index 0dc8a96..f2a9c90 100644
--- a/csc/cps.csc
+++ b/csc/cps.csc
@@ -262,7 +262,7 @@
(lambda (v)
(make-apply f (list return-address v))))))))
((% %call-builtin op args)
- (define returns-value? (not (symbol=? op 'poke)))
+ (define returns-value? (not (memq op '(poke exit))))
(loop for arg in (reverse args)
with expr = (lambda (vals)
(if returns-value?