;;; -*- Mode:Lisp; Readtable:ZL; Package:USER; Base:8; Patch-File:T -*-
;;; Patch file for System version 126.90
;;; Reason:
;;;  If not already bound, bind COMPILER:*P1VALUE* in optimizer interface
;;;  COMPILER-OPTIMIZE-EXTERNAL (just used BY COM-COMPILER-OPTIMIZE) so
;;;  certain optimizers don't crap out.
;;; Written 24-Sep-88 00:12:56 by keith (Keith Corbett) at site Gigamos Cambridge
;;; while running on Breaking Glass from band 1
;;; with Experimental System 126.89, Experimental ZMail 74.1, Experimental Local-File 76.0, Experimental File-Server 25.0, Experimental Unix-Interface 14.0, Experimental Tape 25.1, Experimental Lambda-Diag 18.0, Experimental ZWEI 126.11, microcode 1762, SDU Boot Tape 3.14, SDU ROM 103.



; From modified file DJ: L.SYS; QCP1.LISP#736 at 24-Sep-88 00:12:57
#8R COMPILER#: 
(COMPILER-LET ((*PACKAGE* (PKG-FIND-PACKAGE "COMPILER")))
  (PATCH-SOURCE-FILE "SYS: SYS; QCP1  "

(DEFUN COMPILER-OPTIMIZE-EXTERNAL (FORM)
  "Binds top level variables needed by compiler-optimize"
  (LOCKING-RESOURCES-NO-QFASL
    (FILE-OPERATION-WITH-WARNINGS (T ':COMPILE)
      (COMPILER-WARNINGS-CONTEXT-BIND
	(QC-PROCESS-INITIALIZE)
	(LET ((QC-TF-OUTPUT-MODE 'COMPILE-TO-CORE)
	      (*FUNCTION-ENVIRONMENT* NIL)
	      (LOCAL-DECLARATIONS NIL)
	      (INHIBIT-STYLE-WARNINGS-SWITCH NIL)
	      ;;The caller may bind this, but we'll give a default:
	      (*p1value* (if (boundp '*p1value*) *p1value* t)))
	  (COMPILER-OPTIMIZE FORM))))))

))
