The new x86 ALLOCATE-CONS-* assembly routines had a RET inside
a pseudo-atomic section, which resulted in pending interrupts
getting lost. Caused for example out-of-memory crashes on
threads.impure.lisp.
((:temp ,arg-tn descriptor-reg ,(intern (format nil "~A-OFFSET" arg-tn))))
(pseudo-atomic
(allocation ,arg-tn (pad-data-block ,(intern (format nil "~A-SIZE" obj))))
- (inst lea ,arg-tn (make-ea :byte :base ,arg-tn :disp ,lowtag))
- (inst ret))))
+ (inst lea ,arg-tn (make-ea :byte :base ,arg-tn :disp ,lowtag)))
+ (inst ret)))
#+sb-assembling
(macrolet ((frob-cons-routines ()
;;; 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.14.26"
+"0.9.14.27"