0.9.1.17:
authorNathan Froyd <froydnj@cs.rice.edu>
Wed, 1 Jun 2005 14:06:49 +0000 (14:06 +0000)
committerNathan Froyd <froydnj@cs.rice.edu>
Wed, 1 Jun 2005 14:06:49 +0000 (14:06 +0000)
Disable bit-bashing transforms on (VECTOR NIL).

src/compiler/seqtran.lisp
version.lisp-expr

index eb0547c..ed8cae7 100644 (file)
 (defun valid-bit-bash-saetp-p (saetp)
   ;; BIT-BASHing isn't allowed on simple vectors that contain pointers
   (and (not (eq t (sb!vm:saetp-specifier saetp)))
+       ;; Disallowing (VECTOR NIL) also means that we won't transform
+       ;; sequence functions into bit-bashing code and we let the
+       ;; generic sequence functions signal errors if necessary.
+       (not (zerop (sb!vm:saetp-n-bits saetp)))
        ;; Due to limitations with the current BIT-BASHing code, we can't
        ;; BIT-BASH reliably on arrays whose element types are larger
        ;; than the word size.
index 60cf6f4..e14c141 100644 (file)
@@ -17,4 +17,4 @@
 ;;; checkins which aren't released. (And occasionally for internal
 ;;; versions, especially for internal versions off the main CVS
 ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".)
-"0.9.1.16"
+"0.9.1.17"