85 |
|
|
86 |
(defun wrap-literals (form) |
(defun wrap-literals (form) |
87 |
(cond ((consp form) |
(cond ((consp form) |
88 |
(if (eq (car form) 'quote ) |
(cond ((and (member (car form) '(quote function)) |
89 |
`(load-time-value (si::nani ,(si::address (cadr form)))) |
(or (not (symbolp (cadr form))) |
90 |
(cons (wrap-literals (car form)) (wrap-literals (cdr form))))) |
(not (eq :external (cadr (multiple-value-list (find-symbol (symbol-name (cadr form)) 'lisp))))))) |
91 |
((or (symbolp form) (integerp form)) |
`(load-time-value (si::nani ,(si::address (cadr form))))) |
92 |
form) |
((cons (wrap-literals (car form)) (wrap-literals (cdr form)))))) |
93 |
(t |
((and (not (symbolp form)) (eql-is-eq form)) |
94 |
`(load-time-value (si::nani ,(si::address form)))))) |
`(load-time-value (si::nani ,(si::address form)))) |
95 |
|
(form))) |
96 |
|
|
97 |
(defun c1load-time-value (arg) |
(defun c1load-time-value (arg) |
98 |
(c1constant-value |
(c1constant-value |