From cc3d57611255e4c5d7262134688db7a2cfdfc20e Mon Sep 17 00:00:00 2001 From: Dane Johnson Date: Sat, 28 Jun 2025 10:35:07 -0500 Subject: [PATCH] Add "if" as alias for "branch" --- scmvm/assembler.scm | 8 +++++++- tests.scm | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/scmvm/assembler.scm b/scmvm/assembler.scm index a479d55..f2f8b31 100644 --- a/scmvm/assembler.scm +++ b/scmvm/assembler.scm @@ -7,8 +7,14 @@ #:select (write-u8 write-bytevector)) #:export (assemble)) +(define *aliases* + '((if . branch))) + +(define (or-alias inst) + (or (assq-ref *aliases* inst) inst)) + (define (lookup-instruction inst) - (define inst-obj (assq inst *instruction-set*)) + (define inst-obj (assq (or-alias inst) *instruction-set*)) (if inst-obj inst-obj (error (format #f "could not find instruction ~a" inst)))) diff --git a/tests.scm b/tests.scm index bb112e1..7943fb7 100644 --- a/tests.scm +++ b/tests.scm @@ -32,7 +32,7 @@ (=) (or) (push recur) - (branch) + (if) (return) recur (dup)