PPC allocate-vector fix, plus OpenMCL buildability ...
... write a 0 at the end of the allocated vector to ensure
all of its pages are unprotected. Otherwise if one is
passed off to C (by READ-N-BYTES for example) the GC
trigger can be hit in foreign code. (Compare to SPARC)
... revert "#+cmu #+cmu a b" back to "#+cmu a #+cmu b",
as OpenMCL and ACL's readers have buggy implementations
of CLHS 2.4.8.17.
(inst srwi ndescr type sb!vm:word-shift)
(storew ndescr vector 0 sb!vm:other-pointer-lowtag)
(storew length vector sb!vm:vector-length-slot sb!vm:other-pointer-lowtag))
+ ;; This makes sure the zero byte at the end of a string is paged in so
+ ;; the kernel doesn't bitch if we pass it the string.
+ (storew zero-tn alloc-tn 0)
(move result vector))
((call :initarg :call
:reader cross-type-style-warning-call)
(message :reader cross-type-style-warning-message
- #+cmu #+cmu :initarg :message ; (to stop bogus non-STYLE WARNING)
+ #+cmu :initarg #+cmu :message ; (to stop bogus non-STYLE WARNING)
))
(:report (lambda (c s)
(format
(define-condition cross-type-giving-up-conservatively
(cross-type-style-warning)
((message :initform "giving up conservatively"
- #+cmu #+cmu :reader #.(gensym) ; (to stop bogus non-STYLE WARNING)
+ #+cmu :reader #+cmu #.(gensym) ; (to stop bogus non-STYLE WARNING)
)))
;;; This warning refers to the flexibility in the ANSI spec with
;;; 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.8.21.34"
+"0.8.21.35"