diff options
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/c-util.boot | 5 | ||||
-rw-r--r-- | src/interp/debug.lisp | 4 | ||||
-rw-r--r-- | src/interp/lisp-backend.boot | 2 | ||||
-rw-r--r-- | src/interp/nlib.lisp | 24 | ||||
-rw-r--r-- | src/interp/spad.lisp | 2 | ||||
-rw-r--r-- | src/interp/sys-globals.boot | 3 |
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 |