* The compiler now recognizes the (current-primitive-locations)

and generates appropriate code for symbols in the alist.
This commit is contained in:
Abdulaziz Ghuloum 2007-05-04 03:48:49 -04:00
parent 890c322adb
commit 54c48777d7
3 changed files with 8 additions and 3 deletions

5
BUGS
View File

@ -1,5 +1,9 @@
* 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.
> (define (f) (write (gensym)) (newline) (f))
@ -12,3 +16,4 @@
>
Two displays occurred at the end.

Binary file not shown.

View File

@ -3220,9 +3220,9 @@
(define (primref-loc op)
(unless (symbol? op) (error 'primref-loc "not a symbol ~s" op))
(cond
;[(assq op (current-primitive-locations)) =>
; (lambda (x)
; (mem (fx- disp-symbol-value symbol-tag) (obj (cdr x))))]
[(assq op (current-primitive-locations)) =>
(lambda (x)
(mem (fx- disp-symbol-value symbol-tag) (obj (cdr x))))]
[else
(mem (fx- disp-symbol-system-value symbol-tag)
(obj op))]))