The Lambda Lab
/
projects
/
jars.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Fixed typo in SPL action.
[jars.git]
/
mars.scm
diff --git
a/mars.scm
b/mars.scm
index
3ead51f
..
677d754
100644
(file)
--- a/
mars.scm
+++ b/
mars.scm
@@
-79,7
+79,9
@@
;;; Memory setup and addressing
;;
;;; Memory setup and addressing
;;
- (define (make-core core-size initial-instr . set-functions)
+ (define INITIAL-INSTR (make-instr 'DAT 'F 'immediate 0 'immediate 0))
+
+ (define (make-core core-size . set-functions)
(let ((core-vec (make-vector core-size '()))
(names-vec (make-vector core-size '())))
(define (norm-addr i)
(let ((core-vec (make-vector core-size '()))
(names-vec (make-vector core-size '())))
(define (norm-addr i)
@@
-105,7
+107,7
@@
(print))
(let loop ((i 0))
(unless (>= i core-size)
(print))
(let loop ((i 0))
(unless (>= i core-size)
- (vector-set! core-vec i (
initial-instr
'make-copy))
+ (vector-set! core-vec i (
INITIAL-INSTR
'make-copy))
(loop (+ i 1))))
(lambda args
(match args
(loop (+ i 1))))
(lambda args
(match args
@@
-281,7
+283,7
@@
((SLT)
(list (core '->addr (+ ptr (if (compare-instrs core A-ptr B-ptr modifier <) 2 1)))))
((SPL)
((SLT)
(list (core '->addr (+ ptr (if (compare-instrs core A-ptr B-ptr modifier <) 2 1)))))
((SPL)
- (list (core '->addr (+ ptr 1)
(core '->addr A-ptr)
)))
+ (list (core '->addr (+ ptr 1)
) (core '->addr A-ptr
)))
((NOP)
(list (core '->addr (+ ptr 1))))
(else
((NOP)
(list (core '->addr (+ ptr 1))))
(else