X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=src%2Fcode%2Fearly-fasl.lisp;h=a6259dba4df3bffa71de49ee2eef5ac7064c28af;hb=b0b168c08b31a748150f404398af754f26fd4813;hp=64a5f681e66938019b461d3b4927dbedc39b5d48;hpb=bee53328c93be3433477821131ab805557476c8b;p=sbcl.git diff --git a/src/code/early-fasl.lisp b/src/code/early-fasl.lisp index 64a5f68..a6259db 100644 --- a/src/code/early-fasl.lisp +++ b/src/code/early-fasl.lisp @@ -38,7 +38,7 @@ ;;; This value should be incremented when the system changes in such ;;; a way that it will no longer work reliably with old fasl files. -(defconstant +fasl-file-version+ 16) +(defconstant +fasl-file-version+ 21) ;;; 2 = sbcl-0.6.4 uses COMPILE-OR-LOAD-DEFGENERIC. ;;; 3 = sbcl-0.6.6 uses private symbol, not :EMPTY, for empty HASH-TABLE slot. ;;; 4 = sbcl-0.6.7 uses HAIRY-DATA-VECTOR-REF and HAIRY-DATA-VECTOR-SET @@ -66,17 +66,30 @@ ;;; 14 = sbcl-0.6.12.29 removed more elements from *STATIC-SYMBOLS* ;;; 15 = sbcl-0.6.12.33 changed the layout of STREAM ;;; 16 = sbcl-0.pre7.15 changed the layout of PRETTY-STREAM +;;; 17 = sbcl-0.pre7.38 (merging many changes accumulated in +;;; the sbcl-0.pre7.37.flaky5.* branch back into the main branch) +;;; got rid of byte compiler, byte interpreter, and IR1 +;;; interpreter, changed %DEFUN and DEFSTRUCT, changed the +;;; meaning of FOP-FSET, and changed the layouts of various +;;; internal compiler structures (e.g. DEFSTRUCT CLAMBDA) +;;; 18 = sbcl-0.pre7.39 swapped FUNCTION-POINTER-TYPE and +;;; INSTANCE-POINTER-LOWTAG low-level type codes to help with +;;; the PPC port +;;; (In 0.pre7.48, the low-level object layout of SYMBOL on the +;;; non-X86 ports changed. I forgot to bump the fasl version number: +;;; I only have an X86.. -- WHN) +;;; 19 = sbcl-0.pre7.50 deleted byte-compiler-related low-level type codes +;;; 20 = sbcl-0.pre7.51 modified names and layouts of +;;; physical-environment-related structures in the compiler +;;; 21 = sbcl-0.pre7.62 finally incremented the version after several +;;; incompatible changes in earlier versions: many many symbols +;;; renamed, changes in globaldb representation of constants +;;; and inline functions, and change in the value of +;;; INTERNAL-TIME-UNITS-PER-SECOND ;;; the conventional file extension for our fasl files (declaim (type simple-string *fasl-file-type*)) (defvar *fasl-file-type* "fasl") - -;;; This is a sort of pun that we inherited from CMU CL. For ordinary, -;;; non-byte-coded fasl files, the "implementation" is basically the -;;; CPU. For byte-coded fasl files, the "implementation" is whether -;;; the data are stored big-endianly or little-endianly. -(defun backend-byte-fasl-file-implementation () - *backend-byte-order*) ;;; information about below-Lisp-level linkage ;;; @@ -97,14 +110,14 @@ ;;;; the FOP database -(declaim (simple-vector *fop-names* *fop-functions*)) +(declaim (simple-vector *fop-names* *fop-funs*)) ;;; a vector indexed by a FaslOP that yields the FOP's name (defvar *fop-names* (make-array 256 :initial-element nil)) ;;; a vector indexed by a FaslOP that yields a function of 0 arguments ;;; which will perform the operation -(defvar *fop-functions* +(defvar *fop-funs* (make-array 256 :initial-element (lambda () (error "corrupt fasl file: losing FOP")))) @@ -121,7 +134,7 @@ ;;; the FASL file we're reading from (defvar *fasl-input-stream*) -(declaim (type lisp-stream *fasl-input-stream*)) +(declaim (type ansi-stream *fasl-input-stream*)) (defvar *load-print* nil #!+sb-doc