* The compiler now recognizes the (current-primitive-locations)
and generates appropriate code for symbols in the alist.
This commit is contained in:
parent
890c322adb
commit
54c48777d7
5
BUGS
5
BUGS
|
@ -1,5 +1,9 @@
|
||||||
* FIX: Error in generate-code: BUG: unhandles single rv.
|
* FIX: Error in generate-code: BUG: unhandles single rv.
|
||||||
|
|
||||||
|
* In libcompile.ss:
|
||||||
|
If you move the (initialize-system) call to the very bottom of the
|
||||||
|
library, the system crashes on startup.
|
||||||
|
|
||||||
* Investigate what happens when an interrupt occurs during a write.
|
* Investigate what happens when an interrupt occurs during a write.
|
||||||
|
|
||||||
> (define (f) (write (gensym)) (newline) (f))
|
> (define (f) (write (gensym)) (newline) (f))
|
||||||
|
@ -12,3 +16,4 @@
|
||||||
>
|
>
|
||||||
|
|
||||||
Two displays occurred at the end.
|
Two displays occurred at the end.
|
||||||
|
|
||||||
|
|
BIN
src/ikarus.boot
BIN
src/ikarus.boot
Binary file not shown.
|
@ -3220,9 +3220,9 @@
|
||||||
(define (primref-loc op)
|
(define (primref-loc op)
|
||||||
(unless (symbol? op) (error 'primref-loc "not a symbol ~s" op))
|
(unless (symbol? op) (error 'primref-loc "not a symbol ~s" op))
|
||||||
(cond
|
(cond
|
||||||
;[(assq op (current-primitive-locations)) =>
|
[(assq op (current-primitive-locations)) =>
|
||||||
; (lambda (x)
|
(lambda (x)
|
||||||
; (mem (fx- disp-symbol-value symbol-tag) (obj (cdr x))))]
|
(mem (fx- disp-symbol-value symbol-tag) (obj (cdr x))))]
|
||||||
[else
|
[else
|
||||||
(mem (fx- disp-symbol-system-value symbol-tag)
|
(mem (fx- disp-symbol-system-value symbol-tag)
|
||||||
(obj op))]))
|
(obj op))]))
|
||||||
|
|
Loading…
Reference in New Issue