From: Guillermo J. Rozas Date: Thu, 18 Jun 1987 21:16:04 +0000 (+0000) Subject: Some changes for BBN and VMS. X-Git-Tag: 20090517-FFI~13349 X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=42a74465d7a7f00a7234b3eab5a81de510f600b9;p=mit-scheme.git Some changes for BBN and VMS. --- diff --git a/v7/src/microcode/bchdmp.c b/v7/src/microcode/bchdmp.c index e756caf34..09d0cc8a4 100644 --- a/v7/src/microcode/bchdmp.c +++ b/v7/src/microcode/bchdmp.c @@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising, promotional, or sales literature without prior written consent from MIT in each case. */ -/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/bchdmp.c,v 9.32 1987/06/15 19:25:22 jinx Exp $ */ +/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/bchdmp.c,v 9.33 1987/06/18 21:14:40 jinx Rel $ */ /* bchgcl, bchmmg, bchpur, and bchdmp can replace gcloop, memmag, purify, and fasdump, respectively, to provide garbage collection @@ -443,6 +443,7 @@ Built_In_Primitive(Prim_Band_Dump, 2, "DUMP-BAND", 0xB7) ((long) (Free_Constant - Constant_Space)), Constant_Space, (Free - 1)); result = (result && Close_Dump_File()); + Band_Dump_Exit_Hook(); if (result) PRIMITIVE_RETURN(TRUTH); else diff --git a/v7/src/microcode/boot.c b/v7/src/microcode/boot.c index 7c2842c10..a27d57e5e 100644 --- a/v7/src/microcode/boot.c +++ b/v7/src/microcode/boot.c @@ -1,6 +1,6 @@ /* -*-C-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/boot.c,v 9.36 1987/06/05 04:12:40 jinx Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/boot.c,v 9.37 1987/06/18 21:14:55 jinx Exp $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -142,11 +142,12 @@ Exit_Scheme_Declarations; forward void Start_Scheme(); extern void Clear_Memory(), Setup_Memory(), Reset_Memory(); -void +main_type main(argc, argv) int argc; char **argv; -{ Boolean FASL_It = false; +{ + Boolean FASL_It = false; char *File_Name = NULL; int Saved_Heap_Size, Saved_Stack_Size, Saved_Constant_Size; extern void compiler_initialize(); diff --git a/v7/src/microcode/fasdump.c b/v7/src/microcode/fasdump.c index 9bc22318d..519bd6ac8 100644 --- a/v7/src/microcode/fasdump.c +++ b/v7/src/microcode/fasdump.c @@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising, promotional, or sales literature without prior written consent from MIT in each case. */ -/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/fasdump.c,v 9.28 1987/06/05 04:14:05 jinx Exp $ +/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/fasdump.c,v 9.29 1987/06/18 21:15:11 jinx Rel $ This file contains code for fasdump and dump-band. */ @@ -339,5 +339,6 @@ Built_In_Primitive(Prim_Band_Dump, 2, "DUMP-BAND", 0xB7) ((long) (Free_Constant - Constant_Space)), Constant_Space, (Free - 1)); result = (result && Close_Dump_File()); + Band_Dump_Exit_Hook(); PRIMITIVE_RETURN(result ? TRUTH : NIL); } diff --git a/v7/src/microcode/fhooks.c b/v7/src/microcode/fhooks.c index 0feedde5d..7ed859f97 100644 --- a/v7/src/microcode/fhooks.c +++ b/v7/src/microcode/fhooks.c @@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising, promotional, or sales literature without prior written consent from MIT in each case. */ -/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/fhooks.c,v 9.23 1987/05/29 02:22:51 jinx Exp $ +/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/Attic/fhooks.c,v 9.24 1987/06/18 21:15:25 jinx Rel $ * * This file contains hooks and handles for the new fluid bindings * scheme for multiprocessors. @@ -185,7 +185,7 @@ new_fluid_binding_restart: break; case TRAP_COMPILER_CACHED: - case TRAP_COMPILED_CACHED_DANGEROUS: + case TRAP_COMPILER_CACHED_DANGEROUS: cell = Nth_Vector_Loc(Fast_Vector_Ref(*cell, TRAP_EXTRA), TRAP_EXTENSION_CELL); goto new_fluid_binding_restart; @@ -292,7 +292,7 @@ Define_Primitive(Prim_Make_Fluid_Binding, 3, "MAKE-FLUID-BINDING!") default: Primitive_Error(ERR_ARG_2_WRONG_TYPE); } - + if (cell == unbound_trap_object) { long message; @@ -310,9 +310,13 @@ Define_Primitive(Prim_Make_Fluid_Binding, 3, "MAKE-FLUID-BINDING!") if (message != PRIM_DONE) { if (message == PRIM_INTERRUPT) + { Primitive_Interrupt(); + } else + { Primitive_Error(message); + } } } diff --git a/v7/src/microcode/prims.h b/v7/src/microcode/prims.h index 35a399483..434034112 100644 --- a/v7/src/microcode/prims.h +++ b/v7/src/microcode/prims.h @@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising, promotional, or sales literature without prior written consent from MIT in each case. */ -/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/prims.h,v 9.26 1987/05/23 14:31:17 jinx Exp $ */ +/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/prims.h,v 9.27 1987/06/18 21:15:37 jinx Rel $ */ /* This file contains some macros for defining primitives, for argument type or value checking, and for accessing @@ -122,7 +122,7 @@ Pointer C_Name() #define Special_Primitive_Interrupt(Local_Mask) \ { \ - special_interrupt_from_primitive (Local_Mask); \ + specl_interrupt_from_primitive (Local_Mask); \ } #define Primitive_GC(Amount) \ diff --git a/v7/src/microcode/syntax.c b/v7/src/microcode/syntax.c index 2e028f2c6..6ea949334 100644 --- a/v7/src/microcode/syntax.c +++ b/v7/src/microcode/syntax.c @@ -1,6 +1,6 @@ /* -*-C-*- -$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/syntax.c,v 1.2 1987/05/14 13:50:15 cph Exp $ +$Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/syntax.c,v 1.3 1987/06/18 21:15:47 jinx Exp $ Copyright (c) 1987 Massachusetts Institute of Technology @@ -144,7 +144,7 @@ Built_In_Primitive (Prim_Char_To_Syntax_Code, 2, "CHAR->SYNTAX-CODE", 0x17E) /* Parser Initialization */ -#define STANDARD_INITIALIZATION_COMMON(primitive_initialization) \ +#define NORMAL_INITIALIZATION_COMMON(primitive_initialization) \ fast char *start; \ char *first_char, *end; \ long entry; \ @@ -161,20 +161,20 @@ Built_In_Primitive (Prim_Char_To_Syntax_Code, 2, "CHAR->SYNTAX-CODE", 0x17E) gap_length = (GROUP_GAP_LENGTH (Arg2)); \ gap_end = (first_char + (GROUP_GAP_END (Arg2))) -#define STANDARD_INITIALIZATION_FORWARD(primitive_initialization) \ +#define NORMAL_INITIALIZATION_FORWARD(primitive_initialization) \ char *gap_start; \ fast char *gap_end; \ - STANDARD_INITIALIZATION_COMMON (primitive_initialization); \ + NORMAL_INITIALIZATION_COMMON (primitive_initialization); \ if (start >= gap_start) \ start += gap_length; \ if (end >= gap_start) \ end += gap_length -#define STANDARD_INITIALIZATION_BACKWARD(primitive_initialization) \ +#define NORMAL_INITIALIZATION_BACKWARD(primitive_initialization) \ fast char *gap_start; \ char *gap_end; \ Boolean quoted; \ - STANDARD_INITIALIZATION_COMMON (primitive_initialization); \ + NORMAL_INITIALIZATION_COMMON (primitive_initialization); \ if (start > gap_start) \ start += gap_length; \ if (end > gap_start) \ @@ -293,7 +293,7 @@ do \ Built_In_Primitive (Prim_Quoted_Char_P, 4, "QUOTED-CHAR?", 0x17F) { - STANDARD_INITIALIZATION_BACKWARD (Primitive_4_Args); + NORMAL_INITIALIZATION_BACKWARD (Primitive_4_Args); RIGHT_QUOTED_P (start, quoted); return (quoted ? TRUTH : NIL); @@ -305,7 +305,7 @@ Built_In_Primitive (Prim_Quoted_Char_P, 4, "QUOTED-CHAR?", 0x17F) Built_In_Primitive (Prim_Scan_Backward_Prefix_Chars, 4, "SCAN-BACKWARD-PREFIX-CHARS", 0x17D) { - STANDARD_INITIALIZATION_BACKWARD (Primitive_4_Args); + NORMAL_INITIALIZATION_BACKWARD (Primitive_4_Args); while (true) { @@ -319,10 +319,10 @@ Built_In_Primitive (Prim_Scan_Backward_Prefix_Chars, 4, /* Word Parsers */ -Built_In_Primitive - (Prim_Scan_Forward_To_Word, 4, "SCAN-FORWARD-TO-WORD", 0x17C) +Built_In_Primitive (Prim_Scan_Forward_To_Word, 4, + "SCAN-FORWARD-TO-WORD", 0x17C) { - STANDARD_INITIALIZATION_FORWARD (Primitive_4_Args); + NORMAL_INITIALIZATION_FORWARD (Primitive_4_Args); while (true) { @@ -334,7 +334,7 @@ Built_In_Primitive Built_In_Primitive (Prim_Scan_Word_Forward, 4, "SCAN-WORD-FORWARD", 0x177) { - STANDARD_INITIALIZATION_FORWARD (Primitive_4_Args); + NORMAL_INITIALIZATION_FORWARD (Primitive_4_Args); while (true) { @@ -353,7 +353,7 @@ Built_In_Primitive (Prim_Scan_Word_Forward, 4, "SCAN-WORD-FORWARD", 0x177) Built_In_Primitive (Prim_Scan_Word_Backward, 4, "SCAN-WORD-BACKWARD", 0x178) { - STANDARD_INITIALIZATION_BACKWARD (Primitive_4_Args); + NORMAL_INITIALIZATION_BACKWARD (Primitive_4_Args); while (true) { @@ -374,7 +374,7 @@ Built_In_Primitive (Prim_Scan_Word_Backward, 4, "SCAN-WORD-BACKWARD", 0x178) Built_In_Primitive (Prim_Scan_List_Forward, 7, "SCAN-LIST-FORWARD", 0x179) { - SCAN_LIST_INITIALIZATION (STANDARD_INITIALIZATION_FORWARD); + SCAN_LIST_INITIALIZATION (NORMAL_INITIALIZATION_FORWARD); while (true) { @@ -498,7 +498,7 @@ Built_In_Primitive (Prim_Scan_List_Forward, 7, "SCAN-LIST-FORWARD", 0x179) Built_In_Primitive (Prim_Scan_List_Backward, 7, "SCAN-LIST-BACKWARD", 0x17A) { - SCAN_LIST_INITIALIZATION (STANDARD_INITIALIZATION_BACKWARD); + SCAN_LIST_INITIALIZATION (NORMAL_INITIALIZATION_BACKWARD); while (true) { @@ -649,7 +649,7 @@ Built_In_Primitive (Prim_Scan_Sexps_Forward, 7, "SCAN-SEXPS-FORWARD", 0x17B) struct levelstruct *level_end; char c; Pointer result; - STANDARD_INITIALIZATION_FORWARD (Primitive_7_Args); + NORMAL_INITIALIZATION_FORWARD (Primitive_7_Args); CHECK_ARG (5, FIXNUM_P); FIXNUM_VALUE (Arg5, target_depth); diff --git a/v7/src/microcode/utils.c b/v7/src/microcode/utils.c index 3cb813cd4..ff65c5e6b 100644 --- a/v7/src/microcode/utils.c +++ b/v7/src/microcode/utils.c @@ -30,7 +30,7 @@ Technology nor of any adaptation thereof in any advertising, promotional, or sales literature without prior written consent from MIT in each case. */ -/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/utils.c,v 9.31 1987/06/11 21:51:44 cph Exp $ */ +/* $Header: /Users/cph/tmp/foo/mit-scheme/mit-scheme/v7/src/microcode/utils.c,v 9.32 1987/06/18 21:16:04 jinx Rel $ */ /* This file contains utilities for interrupts, errors, etc. */ @@ -266,7 +266,7 @@ Back_Out_Of_Primitive () extern void signal_error_from_primitive(), signal_interrupt_from_primitive(), - special_interrupt_from_primitive(), + specl_interrupt_from_primitive(), error_wrong_type_arg(), error_bad_range_arg(), error_external_return(); @@ -289,7 +289,7 @@ signal_interrupt_from_primitive () } void -special_interrupt_from_primitive(local_mask) +specl_interrupt_from_primitive(local_mask) int local_mask; { Back_Out_Of_Primitive();