From c6ce484f2e954e0d0e1eb1d72732e756c7e4acd7 Mon Sep 17 00:00:00 2001 From: Chris Hanson Date: Mon, 16 Jul 1990 17:12:56 +0000 Subject: [PATCH] Change restart sequence so that bands dumped from Emacs will restore correctly. --- v7/src/runtime/gc.scm | 11 +++++++++-- v7/src/runtime/runtime.pkg | 4 +++- v7/src/runtime/savres.scm | 5 +++-- v7/src/runtime/version.scm | 4 ++-- v8/src/runtime/runtime.pkg | 4 +++- 5 files changed, 20 insertions(+), 8 deletions(-) diff --git a/v7/src/runtime/gc.scm b/v7/src/runtime/gc.scm index 642779edb..836a466e9 100644 --- a/v7/src/runtime/gc.scm +++ b/v7/src/runtime/gc.scm @@ -1,8 +1,8 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/gc.scm,v 14.4 1989/08/15 13:19:40 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/gc.scm,v 14.5 1990/07/16 17:12:23 cph Rel $ -Copyright (c) 1988, 1989 Massachusetts Institute of Technology +Copyright (c) 1988, 1989, 1990 Massachusetts Institute of Technology This material was developed by the Scheme project at the Massachusetts Institute of Technology, Department of Electrical Engineering and @@ -54,6 +54,13 @@ MIT in each case. |# (vector-set! fixed-objects #x0C condition-handler/hardware-trap) ((ucode-primitive set-fixed-objects-vector!) fixed-objects))) +(define (reset-gc-after-restore!) + ;; This will be overridden by the Emacs-interface installation code + ;; after the rest of the runtime system is restored. + (set! hook/gc-start default/gc-start) + (set! hook/gc-finish default/gc-finish) + unspecific) + (define (condition-handler/gc interrupt-code interrupt-enables) interrupt-code interrupt-enables (hook/gc-flip default-safety-margin)) diff --git a/v7/src/runtime/runtime.pkg b/v7/src/runtime/runtime.pkg index 42152bff9..90509d556 100644 --- a/v7/src/runtime/runtime.pkg +++ b/v7/src/runtime/runtime.pkg @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/runtime.pkg,v 14.70 1990/06/28 18:09:44 jinx Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/runtime.pkg,v 14.71 1990/07/16 17:12:12 cph Exp $ Copyright (c) 1988, 1989, 1990 Massachusetts Institute of Technology @@ -587,6 +587,8 @@ MIT in each case. |# hook/gc-start) (export (runtime error-handler) hook/hardware-trap) + (export (runtime save/restore) + reset-gc-after-restore!) (initialization (initialize-package!))) (define-package (runtime gc-daemons) diff --git a/v7/src/runtime/savres.scm b/v7/src/runtime/savres.scm index 811e1d9ad..8a31b05f5 100644 --- a/v7/src/runtime/savres.scm +++ b/v7/src/runtime/savres.scm @@ -1,8 +1,8 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/savres.scm,v 14.11 1990/01/24 16:45:07 jinx Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/savres.scm,v 14.12 1990/07/16 17:11:58 cph Exp $ -Copyright (c) 1988, 1989 Massachusetts Institute of Technology +Copyright (c) 1988, 1989, 1990 Massachusetts Institute of Technology This material was developed by the Scheme project at the Massachusetts Institute of Technology, Department of Electrical Engineering and @@ -110,6 +110,7 @@ MIT in each case. |# ;; This instruction is a noop, so I flushed it -- cph. ;; (enable-interrupts! interrupt-mask/none) (read-microcode-tables!) + (reset-gc-after-restore!) after-restore)))))))) (define (dump-world/kernel filename after-suspend after-restore) diff --git a/v7/src/runtime/version.scm b/v7/src/runtime/version.scm index 9ec9cf103..924912d89 100644 --- a/v7/src/runtime/version.scm +++ b/v7/src/runtime/version.scm @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/version.scm,v 14.87 1990/07/03 19:49:24 markf Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/runtime/version.scm,v 14.88 1990/07/16 17:12:56 cph Exp $ Copyright (c) 1988, 1989, 1990 Massachusetts Institute of Technology @@ -45,7 +45,7 @@ MIT in each case. |# '())) (add-system! microcode-system) (add-event-receiver! event:after-restore snarf-microcode-version!) - (add-identification! "Runtime" 14 87)) + (add-identification! "Runtime" 14 88)) (define microcode-system) diff --git a/v8/src/runtime/runtime.pkg b/v8/src/runtime/runtime.pkg index 1ee3f609f..53a489d0b 100644 --- a/v8/src/runtime/runtime.pkg +++ b/v8/src/runtime/runtime.pkg @@ -1,6 +1,6 @@ #| -*-Scheme-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/runtime.pkg,v 14.70 1990/06/28 18:09:44 jinx Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v8/src/runtime/runtime.pkg,v 14.71 1990/07/16 17:12:12 cph Exp $ Copyright (c) 1988, 1989, 1990 Massachusetts Institute of Technology @@ -587,6 +587,8 @@ MIT in each case. |# hook/gc-start) (export (runtime error-handler) hook/hardware-trap) + (export (runtime save/restore) + reset-gc-after-restore!) (initialization (initialize-package!))) (define-package (runtime gc-daemons) -- 2.25.1