Fix bug 242 for fd-streams
[sbcl.git] / src / code / cold-init.lisp
index f3217e6..1e31f57 100644 (file)
@@ -92,8 +92,7 @@
   ;; !UNIX-COLD-INIT. And *TYPE-SYSTEM-INITIALIZED* could be changed to
   ;; *TYPE-SYSTEM-INITIALIZED-WHEN-BOUND* so that it doesn't need to
   ;; be explicitly set in order to be meaningful.
-  (setf *before-gc-hooks* nil
-        *after-gc-hooks* nil
+  (setf *after-gc-hooks* nil
        *gc-inhibit* 1
        *need-to-collect-garbage* nil
        sb!unix::*interrupts-enabled* t
            (setf (svref *!load-time-values* (third toplevel-thing))
                  (funcall (second toplevel-thing))))
           (:load-time-value-fixup
-           (setf (sap-ref-32 (second toplevel-thing) 0)
+           (setf (sap-ref-word (second toplevel-thing) 0)
                  (get-lisp-obj-address
                   (svref *!load-time-values* (third toplevel-thing)))))
-          #!+(and x86 gencgc)
+          #!+(and (or x86 x86-64) gencgc)
           (:load-time-code-fixup
            (sb!vm::!envector-load-time-code-fixup (second toplevel-thing)
                                                   (third  toplevel-thing)
@@ -297,8 +296,7 @@ UNIX-like systems, UNIX-STATUS is used as the status code."
       ;; see also comment at the previous SET-FLOATING-POINT-MODES
       ;; call site.
       (set-floating-point-modes
-       :traps '(:overflow #!-netbsd :invalid :divide-by-zero))
-      (sb!thread::maybe-install-futex-functions)))
+       :traps '(:overflow #!-netbsd :invalid :divide-by-zero))))
   (thread-init-or-reinit)
   (gc-reinit)
   ;; make sure TIME works correctly from saved cores