projects
/
sbcl.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
0.9.16.17:
[sbcl.git]
/
src
/
code
/
cold-init.lisp
diff --git
a/src/code/cold-init.lisp
b/src/code/cold-init.lisp
index
33378df
..
3ab05a9
100644
(file)
--- a/
src/code/cold-init.lisp
+++ b/
src/code/cold-init.lisp
@@
-93,8
+93,9
@@
;; *TYPE-SYSTEM-INITIALIZED-WHEN-BOUND* so that it doesn't need to
;; be explicitly set in order to be meaningful.
(setf *after-gc-hooks* nil
;; *TYPE-SYSTEM-INITIALIZED-WHEN-BOUND* so that it doesn't need to
;; be explicitly set in order to be meaningful.
(setf *after-gc-hooks* nil
- *gc-inhibit* 1
- *need-to-collect-garbage* nil
+ *gc-inhibit* t
+ *gc-pending* nil
+ #!+sb-thread *stop-for-gc-pending* #!+sb-thread nil
sb!unix::*interrupts-enabled* t
sb!unix::*interrupt-pending* nil
*break-on-signals* nil
sb!unix::*interrupts-enabled* t
sb!unix::*interrupt-pending* nil
*break-on-signals* nil
@@
-103,6
+104,7
@@
*cold-init-complete-p* nil
*type-system-initialized* nil)
*cold-init-complete-p* nil
*type-system-initialized* nil)
+ (show-and-call thread-init-or-reinit)
(show-and-call !typecheckfuns-cold-init)
;; Anyone might call RANDOM to initialize a hash value or something;
(show-and-call !typecheckfuns-cold-init)
;; Anyone might call RANDOM to initialize a hash value or something;
@@
-111,6
+113,7
@@
(show-and-call !random-cold-init)
(show-and-call !character-database-cold-init)
(show-and-call !random-cold-init)
(show-and-call !character-database-cold-init)
+ (show-and-call !character-name-database-cold-init)
(show-and-call !early-package-cold-init)
(show-and-call !package-cold-init)
(show-and-call !early-package-cold-init)
(show-and-call !package-cold-init)
@@
-143,6
+146,7
@@
(show-and-call !policy-cold-init-or-resanify)
(/show0 "back from !POLICY-COLD-INIT-OR-RESANIFY")
(show-and-call !policy-cold-init-or-resanify)
(/show0 "back from !POLICY-COLD-INIT-OR-RESANIFY")
+ (show-and-call !constantp-cold-init)
(show-and-call !early-proclaim-cold-init)
;; KLUDGE: Why are fixups mixed up with toplevel forms? Couldn't
(show-and-call !early-proclaim-cold-init)
;; KLUDGE: Why are fixups mixed up with toplevel forms? Couldn't
@@
-213,11
+217,10
@@
(show-and-call os-cold-init-or-reinit)
(show-and-call os-cold-init-or-reinit)
- (show-and-call thread-init-or-reinit)
(show-and-call stream-cold-init-or-reset)
(show-and-call !loader-cold-init)
(show-and-call !foreign-cold-init)
(show-and-call stream-cold-init-or-reset)
(show-and-call !loader-cold-init)
(show-and-call !foreign-cold-init)
- (show-and-call signal-cold-init-or-reinit)
+ #!-win32 (show-and-call signal-cold-init-or-reinit)
(/show0 "enabling internal errors")
(setf (sb!alien:extern-alien "internal_errors_enabled" boolean) t)
(/show0 "enabling internal errors")
(setf (sb!alien:extern-alien "internal_errors_enabled" boolean) t)
@@
-284,12
+287,13
@@
UNIX-like systems, UNIX-STATUS is used as the status code."
(defun reinit ()
(setf *default-external-format* nil)
(defun reinit ()
(setf *default-external-format* nil)
+ (setf sb!alien::*default-c-string-external-format* nil)
(without-interrupts
(without-gcing
(os-cold-init-or-reinit)
(thread-init-or-reinit)
(stream-reinit)
(without-interrupts
(without-gcing
(os-cold-init-or-reinit)
(thread-init-or-reinit)
(stream-reinit)
- (signal-cold-init-or-reinit)
+ #!-win32 (signal-cold-init-or-reinit)
(setf (sb!alien:extern-alien "internal_errors_enabled" boolean) t)
;; PRINT seems not to like x86 NPX denormal floats like
;; LEAST-NEGATIVE-SINGLE-FLOAT, so the :UNDERFLOW exceptions are
(setf (sb!alien:extern-alien "internal_errors_enabled" boolean) t)
;; PRINT seems not to like x86 NPX denormal floats like
;; LEAST-NEGATIVE-SINGLE-FLOAT, so the :UNDERFLOW exceptions are
@@
-303,7
+307,12
@@
UNIX-like systems, UNIX-STATUS is used as the status code."
(gc-reinit)
;; make sure TIME works correctly from saved cores
(setf *internal-real-time-base-seconds* nil)
(gc-reinit)
;; make sure TIME works correctly from saved cores
(setf *internal-real-time-base-seconds* nil)
+ (setf *gc-run-time* 0)
(foreign-reinit)
(foreign-reinit)
+ ;; If the debugger was disabled in the saved core, we need to
+ ;; re-disable ldb again.
+ (when (eq *invoke-debugger-hook* 'sb!debug::debugger-disabled-hook)
+ (sb!debug::disable-debugger))
(dolist (hook *init-hooks*)
(with-simple-restart (continue "Skip this initialization hook.")
(funcall hook))))
(dolist (hook *init-hooks*)
(with-simple-restart (continue "Skip this initialization hook.")
(funcall hook))))