* improved support for type intersection and union, fixing bug 12
(e.g., now (SUBTYPEP 'KEYWORD 'SYMBOL)=>T,T) and some other
more obscure bugs as well
+* some steps toward byte-compiling non-performance-critical
+ parts of the system, courtesy of patches from Martin Atzmueller
* Christophe Rhodes has made some debian packages of sbcl at
<http://www-jcsu.jesus.cam.ac.uk/ftp/pub/debian/lisp>.
From his sbcl-devel e-mail of 2001-04-08 they're not completely
* MAYBE-INLINE will probably go away at some point, maybe 0.7.x,
maybe later, in favor of the ANSI-recommended idiom for making
a function optionally inline.
+* FASL file extensions change to ".fasl", instead of the various
+ CPU-dependent values (".x86f" etc.) inherited from CMU CL.
(defknown %make-funcallable-instance (index layout) function
(unsafe))
-;;; FIXME/REMOVEME: MNA patched these like this, but I don't
-;;; understand why, so I mutated them back to see what goes wrong.
-;;;-(defknown %funcallable-instance-info (function index) t (flushable))
-;;;-(defknown %set-funcallable-instance-info (function index t) t (unsafe))
-;;;+(defknown %funcallable-instance-info ((or function cons) index) t (flushable))
-;;;+(defknown %set-funcallable-instance-info ((or function cons) index t) t (unsafe))
-;;;
(defknown %funcallable-instance-info (function index) t (flushable))
(defknown %set-funcallable-instance-info (function index t) t (unsafe))
\f
(without-gcing
(memmove (sap+ (sap ,dst) ,dst-start)
(sap+ (sap ,src) ,src-start)
- (- ,dst-end ,dst-start)))))
-
- ;; REMOVEME when new version works
- ;;
- ;; old version, had overflow problems because it converts byte
- ;; indices to bit indices, which is not good when GENESIS is trying
- ;; to read into a byte vector which represents the cold image (>16M bytes)
- #+nil
- `(let ((src ,src)
- (src-start (* ,src-start sb!vm:byte-bits))
- (dst ,dst)
- (dst-start (* ,dst-start sb!vm:byte-bits))
- (dst-end (* ,dst-end sb!vm:byte-bits)))
- (let ((length (- dst-end dst-start)))
- (etypecase src
- (system-area-pointer
- (etypecase dst
- (system-area-pointer
- (system-area-copy src src-start dst dst-start length))
- ((simple-unboxed-array (*))
- (copy-from-system-area src src-start
- dst (+ dst-start ,vector-data-bit-offset)
- length))))
- ((simple-unboxed-array (*))
- (etypecase dst
- (system-area-pointer
- (copy-to-system-area src (+ src-start ,vector-data-bit-offset)
- dst dst-start
- length))
- ((simple-unboxed-array (*))
- (bit-bash-copy src (+ src-start ,vector-data-bit-offset)
- dst (+ dst-start ,vector-data-bit-offset)
- length))))))))
+ (- ,dst-end ,dst-start))))))
\f
;;;; transforms for EQL of floating point values
;;; versions, and a string like "0.6.5.12" is used for versions which
;;; aren't released but correspond only to CVS tags or snapshots.
-"0.6.11.45"
+"0.6.12"