aboutsummaryrefslogtreecommitdiff
path: root/src/interp
diff options
context:
space:
mode:
Diffstat (limited to 'src/interp')
-rw-r--r--src/interp/c-util.boot5
-rw-r--r--src/interp/debug.lisp4
-rw-r--r--src/interp/lisp-backend.boot2
-rw-r--r--src/interp/nlib.lisp24
-rw-r--r--src/interp/spad.lisp2
-rw-r--r--src/interp/sys-globals.boot3
6 files changed, 23 insertions, 17 deletions
diff --git a/src/interp/c-util.boot b/src/interp/c-util.boot
index e658f851..7203eca6 100644
--- a/src/interp/c-util.boot
+++ b/src/interp/c-util.boot
@@ -1743,3 +1743,8 @@ cleanParameterList! parms ==
t := makeSymbol strconc('"T",toString count)
vars.first := t
parms
+
+--%
+--% Other compiler artifact support
+--%
+
diff --git a/src/interp/debug.lisp b/src/interp/debug.lisp
index 467716ac..057caf98 100644
--- a/src/interp/debug.lisp
+++ b/src/interp/debug.lisp
@@ -61,9 +61,9 @@
(MAKEPROP 'SPAD '/TERMCHR '(#\: #\< #\ #\())
(MAKEPROP 'BOOT '/TERMCHR '(#\: #\< #\ #\())
-(defmacro |/C,LIB| (&rest L &aux optionlist |$editFile|
+(defmacro |/C,LIB| (&rest L &aux |$compilerOptions| |$editFile|
($prettyprint 't) ($reportCompilation 't))
- (declare (special optionlist |$editFile| $prettyprint $reportComilation))
+ (declare (special |$compilerOptions| |$editFile| $prettyprint $reportComilation))
`',(|compileConstructorLib| L (/COMP) NIL NIL))
(defmacro /C (&rest L) `',(/D-1 L (/COMP) NIL NIL))
diff --git a/src/interp/lisp-backend.boot b/src/interp/lisp-backend.boot
index 3139a0f3..d421fc3a 100644
--- a/src/interp/lisp-backend.boot
+++ b/src/interp/lisp-backend.boot
@@ -843,7 +843,7 @@ evalAndPrintBackendStmt stmt ==
printBackendDecl(label,decl) ==
st :=
- sp := symbolAssoc('COMPILER_-OUTPUT_-STREAM,OPTIONLIST) => rest sp
+ sp := symbolAssoc('COMPILER_-OUTPUT_-STREAM,$compilerOptions) => rest sp
$OutputStream
if label ~= nil and ioTerminal? st and functionSymbol? label
and not COMPILED_-FUNCTION_-P symbolFunction label then
diff --git a/src/interp/nlib.lisp b/src/interp/nlib.lisp
index e17bc448..e682b2f5 100644
--- a/src/interp/nlib.lisp
+++ b/src/interp/nlib.lisp
@@ -40,16 +40,14 @@
;indextable is a list of entries (key class <location or filename>)
;filename is of the form filenumber.lsp or filenumber.o
-(defvar optionlist nil "alist which controls compiler output")
-
-(defun addoptions (key value) "adds pairs to optionlist"
- (push (cons key value) optionlist)
+(defun addoptions (key value) "adds pairs to $compilerOptions"
+ (push (cons key value) |$compilerOptions|)
(if (equal key 'FILE)
(push
(cons 'COMPILER-OUTPUT-STREAM
(open (concat (libstream-dirname value) "/" "code.lsp")
:direction :output :if-exists :supersede))
- optionlist)))
+ |$compilerOptions|)))
;; (RDEFIOSTREAM ((MODE . IO) (FILE fn ft dir))) IO is I,O,INPUT,OUTPUT
(defun rdefiostream (options &optional (missing-file-error-flag t))
@@ -180,18 +178,18 @@
entry))
;;(defun rshut (rstream)
-;; (when (and (equal rstream (cdr (assoc 'FILE OPTIONLIST)))
-;; (assoc 'compiler-output-stream optionlist))
-;; (close (cdr (assoc 'compiler-output-stream optionlist)))
-;; (setq optionlist nil))
+;; (when (and (equal rstream (cdr (assoc 'FILE |$compilerOptions|)))
+;; (assoc 'compiler-output-stream |$compilerOptions|))
+;; (close (cdr (assoc 'compiler-output-stream |$compilerOptions|)))
+;; (setq |$compilerOptions| nil))
;; (if (eq (libstream-mode rstream) 'output)
;; (write-indextable (libstream-indextable rstream) (libstream-indexstream rstream)))
;; (close (libstream-indexstream rstream)))
(defun rshut (rstream)
- (when (and (equal rstream (cdr (assoc 'FILE OPTIONLIST)))
- (assoc 'compiler-output-stream optionlist))
- (close (cdr (assoc 'compiler-output-stream optionlist)))
- (setq optionlist (cddr optionlist)))
+ (when (and (equal rstream (cdr (assoc 'FILE |$compilerOptions|)))
+ (assoc 'compiler-output-stream |$compilerOptions|))
+ (close (cdr (assoc 'compiler-output-stream |$compilerOptions|)))
+ (setq |$compilerOptions| (cddr |$compilerOptions|)))
(if (eq (libstream-mode rstream) 'output)
(write-indextable (libstream-indextable rstream) (libstream-indexstream rstream)))
(close (libstream-indexstream rstream)))
diff --git a/src/interp/spad.lisp b/src/interp/spad.lisp
index fd101237..56c1cc80 100644
--- a/src/interp/spad.lisp
+++ b/src/interp/spad.lisp
@@ -69,7 +69,7 @@
(*comp370-apply* (function |printBackendDecl|))
(*fileactq-apply* (function |printBackendDecl|))
($SPAD T)
- (OPTIONLIST nil)
+ (|$compilerOptions| nil)
(|$editFile| ifile)
rd)
(declare (special |$Echo| |$editFile| *comp370-apply*))
diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot
index bcd26271..d9433cfe 100644
--- a/src/interp/sys-globals.boot
+++ b/src/interp/sys-globals.boot
@@ -411,3 +411,6 @@ $optimizeRep := false
++
$leanMode := false
+
+++ Table of compiler data driving compilation.
+$compilerOptions := nil