fdefn ; 01010110
no-tls-value-marker ; 01011010
- #!-sb-lutex
+ #!-(and sb-lutex sb-thread)
unused01
- #!+sb-lutex
+ #!+(and sb-lutex sb-thread)
lutex ; 01011110
unused02 ; 01100010
unused03 ; 01100110
(defconstant new-directory-core-entry-type-code 3861)
(defconstant initial-fun-core-entry-type-code 3863)
(defconstant page-table-core-entry-type-code 3880)
-#!+sb-lutex
+#!+(and sb-lutex sb-thread)
(defconstant lutex-table-core-entry-type-code 3887)
(defconstant end-core-entry-type-code 3840)
(real :c-type "double" :length #!-x86-64 2 #!+x86-64 1)
(imag :c-type "double" :length #!-x86-64 2 #!+x86-64 1))
-#!+sb-lutex
+#!+(and sb-lutex sb-thread)
(define-primitive-object (lutex
:lowtag other-pointer-lowtag
:widetag lutex-widetag
;;;; threading
-#!+sb-lutex
+#!+(and sb-lutex sb-thread)
(progn
(defknown sb!vm::%make-lutex () sb!vm::lutex ())
(defknown sb!vm::lutexp (t) boolean (foldable flushable)))
#include "genesis/static-symbols.h"
#include "genesis/symbol.h"
-#ifdef LISP_FEATURE_SB_LUTEX
+#if defined(LISP_FEATURE_SB_THREAD) && defined(LISP_FEATURE_SB_LUTEX)
#include "genesis/lutex.h"
#endif
(defun make-pipe ()
(multiple-value-bind (in out) (sb-posix:pipe)
- (let ((input (sb-sys:make-fd-stream in
- :input t
+ (let ((input (sb-sys:make-fd-stream in
+ :input t
:external-format :ascii
:buffering :none :name "in"))
- (output (sb-sys:make-fd-stream out
- :output t
+ (output (sb-sys:make-fd-stream out
+ :output t
:external-format :ascii
:buffering :none :name "out")))
(make-two-way-stream input output))))
(defvar *out-pipe* (make-pipe))
(defvar *out* (make-synonym-stream '*out-pipe*))
-(defvar *ed*
+(defvar *ed*
(run-program "/bin/ed" (list *tmpfile*) :input *in* :output *out* :wait nil))
(defun real-input (stream)
;;; 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.13.41"
+"0.9.13.42"