From b1e901b5ea18eb5b1fc985ae2d44737858afc3e2 Mon Sep 17 00:00:00 2001 From: bd Date: Sat, 18 Jan 2025 11:40:25 -0700 Subject: Complete full translation for unary operators --- src/modules/tacky/traverse.scm | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) (limited to 'src/modules/tacky/traverse.scm') diff --git a/src/modules/tacky/traverse.scm b/src/modules/tacky/traverse.scm index 5f1ad1f..2fd4ca7 100644 --- a/src/modules/tacky/traverse.scm +++ b/src/modules/tacky/traverse.scm @@ -19,9 +19,10 @@ (list (list 'ret (car val))))))) (define (expr op val) - (cond - ((integer? val) (make-instruction op (imm val) '())) - (#t (make-instruction op (car val) (cdr val))))) + (make-instruction op (car val) (cdr val))) + +(define (const val) + (cons (imm val) '())) (define (make-instruction op src instrs) (let ((dst (make-temporary))) -- cgit v1.2.3