|
DataMuseum.dkPresents historical artifacts from the history of: DKUUG/EUUG Conference tapes |
This is an automatic "excavation" of a thematic subset of
See our Wiki for more about DKUUG/EUUG Conference tapes Excavated with: AutoArchaeologist - Free & Open Source Software. |
top - metrics - downloadIndex: T s
Length: 49410 (0xc102) Types: TextFile Names: »storage.c«
└─⟦a0efdde77⟧ Bits:30001252 EUUGD11 Tape, 1987 Spring Conference Helsinki └─⟦this⟧ »EUUGD11/gnu-31mar87/scheme/microcode/storage.c«
/* Hey EMACS, this is -*- C -*- code! */ /**************************************************************** * * * Copyright (c) 1985 * * Massachusetts Institute of Technology * * * * This material was developed by the Scheme project at the * * Massachusetts Institute of Technology, Department of * * Electrical Engineering and Computer Science. Permission to * * copy this software, to redistribute it, and to use it for any * * purpose is granted, subject to the following restrictions and * * understandings. * * * * 1. Any copy made of this software must include this copyright * * notice in full. * * * * 2. Users of this software agree to make their best efforts (a)* * to return to the MIT Scheme project any improvements or * * extensions that they make, so that these may be included in * * future releases; and (b) to inform MIT of noteworthy uses of * * this software. * * * * 3. All materials developed as a consequence of the use of * * this software shall duly acknowledge such use, in accordance * * with the usual standards of acknowledging credit in academic * * research. * * * * 4. MIT has made no warrantee or representation that the * * operation of this software will be error-free, and MIT is * * under no obligation to provide any services, by way of * * maintenance, update, or otherwise. * * * * 5. In conjunction with products arising from the use of this * * material, there shall be no use of the name of the * * Massachusetts Institute of Technology nor of any adaptation * * thereof in any advertising, promotional, or sales literature * * without prior written consent from MIT in each case. * * * ****************************************************************/ \f /* File: STORAGE.C * * This file defines the storage for global variables for * the Scheme Interpreter */ #include "scheme.h" #include "prims.h" #include "gctype.c" /*************/ /* REGISTERS */ /*************/ Pointer Env, /* The environment */ Val, /* The value returned from primitives or apply */ Return, /* The return address code */ Expression, /* Expression to EVALuate */ *History, /* History register */ *Free, /* Next free word in storage */ *MemTop, /* Top of free space available */ *Stack_Pointer, /* Next available slot in control stack */ *Stack_Top, /* Top of control stack */ *Stack_Guard, /* Guard area at end of stack */ *Constant_Space, /* Bottom of constant+pure space */ *Free_Constant, /* Next free cell in constant+pure area */ *Constant_Top, /* End of constant space, if any */ *Unused_Heap_Top, *Unused_Heap, /* Top and bottom of 'other' heap for GC */ *Heap_Top, *Heap_Bottom, /* Top and bottom of current heap area */ *Local_Heap_Base, /* Per-processor CONSing area */ *Heap, /* Bottom of entire heap */ Swap_Temp; /* Used by Swap_Pointers in default.h */ \f long ErrCode, /* Error code returned to user */ IntCode, /* Interrupts requesting */ IntEnb, /* Interrupts enabled */ GC_Reserve = 500; /* Scheme pointer overflow space in heap */ Declare_Fixed_Objects(); Pointer Truth; FILE *(Channels[FILE_CHANNELS]), *File_Handle, *Photo_File_Handle; int Saved_argc; char **Saved_argv; char *OS_Name, *OS_Variant; Boolean Photo_Open = false; /* Photo file open */ Boolean Trapping, Can_Do_Cursor; Pointer Old_Return_Code, *Return_Hook_Address, *Previous_Restore_History; jmp_buf *Back_To_Eval; /* Buffer for set/longjmp */ char *Load_Option_File_Name; Boolean Load_Option; Boolean File_Specified; long Heap_Size, Constant_Size, Stack_Size; #ifndef Heap_In_Low_Memory char *Memory_Base; #endif \f /**********************/ /* DEBUGGING SWITCHES */ /**********************/ #ifdef ENABLE_DEBUGGING_TOOLS Boolean Eval_Debug = false; Boolean Hex_Input_Debug = false; Boolean File_Load_Debug = false; Boolean Reloc_Debug = false; Boolean Intern_Debug = false; Boolean Cont_Debug = false; Boolean Primitive_Debug = false; Boolean Lookup_Debug = false; Boolean Define_Debug = false; Boolean GC_Debug = false; Boolean Upgrade_Debug = false; Boolean Dump_Debug = false; Boolean Trace_On_Error = false; Boolean Bignum_Debug = false; Boolean Per_File = true; More_Debug_Flag_Allocs(); #endif /****************************/ /* Debugging Macro Messages */ /****************************/ char *CONT_PRINT_RETURN_MESSAGE = "Save_Cont, return code"; char *CONT_PRINT_EXPR_MESSAGE = "Save_Cont, expression"; char *RESTORE_CONT_RETURN_MESSAGE = "Restore_Cont, return code"; char *RESTORE_CONT_EXPR_MESSAGE = "Restore_Cont, expression"; \f /*********************************/ /* Argument Count for Primitives */ /*********************************/ char Arg_Count_Table[] = { /* 000 */ 3, /* LEXICAL-ASSIGNMENT */ /* 001 */ 2, /* LOCAL-REFERENCE */ /* 002 */ 3, /* LOCAL-ASSIGNMENT */ /* 003 */ 1, /* CATCH */ /* 004 */ 2, /* SCODE-EVAL */ /* 005 */ 2, /* APPLY */ /* 006 */ 1, /* SET!-INTERRUPT-ENABLES */ /* 007 */ 1, /* will be STRING->SYMBOL */ /* 008 */ 1, /* GET-WORK */ /* 009 */ 1, /* unused */ /* 00A */ 1, /* unused */ /* 00B */ 0, /* unused */ /* 00C */ 1, /* NULL? NOT */ /* 00D */ 2, /* EQ? */ /* 00E */ 2, /* STRING-EQUAL? */ /* 00F */ 2, /* PRIMITIVE-TYPE? */ /* 010 */ 1, /* PRIMITIVE-TYPE */ /* 011 */ 2, /* PRIMITIVE-SET-TYPE */ /* 012 */ 2, /* LEXICAL-REFERENCE */ /* 013 */ 2, /* LEXICAL_UNREFERENCEABLE_TEST */ /* 014 */ 0, /* unused */ /* 015 */ 0, /* unused */ /* 016 */ 0, /* NON-RESTARTABLE-EXIT */ /* 017 */ 0, /* unused */ /* 018 */ 2, /* UNASSIGNED_TEST */ /* 019 */ 3, /* INSERT-NON-MARKED-VECTOR */ /* 01A */ 0, /* RESTARTABLE-EXIT */ /* 01B */ 0, /* unused */ /* 01C */ 2, /* MEMQ */ /* 01D */ 3, /* INSERT-STRING */ /* 01E */ 1, /* ENABLE-INTERRUPTS */ /* 01F */ 1, /* MAKE-EMPTY-STRING */ /* 020 */ 2, /* CONS */ /* 021 */ 1, /* CAR */ /* 022 */ 1, /* CDR */ /* 023 */ 2, /* SET!-CAR */ /* 024 */ 2, /* SET!-CDR */ /* 025 */ 2, /* PRINT-STRING */ /* 026 */ 0, /* GET-CURSOR */ /* 027 */ 2, /* GENERAL-CAR-CDR */ /* 028 */ 3, /* HUNK3-CONS */ /* Argument Count Table continues on next page */ \f /* Argument Count Table, continued */ /* 029 */ 2, /* HUNK3-CXR */ /* 02A */ 3, /* HUNK3-SET!-CXR */ /* 02B */ 3, /* OVERWRITE-STRING */ /* 02C */ 2, /* VECTOR-CONS */ /* 02D */ 1, /* VECTOR-SIZE */ /* 02E */ 2, /* VECTOR-REF */ /* 02F */ 1, /* SET-CURRENT-HISTORY */ /* 030 */ 3, /* VECTOR-SET! */ /* 031 */ 1, /* NON-MARKED-VECTOR-CONS */ /* 032 */ 1, /* GET-CHARACTER */ /* 033 */ 2, /* UNBOUND_TEST */ /* 034 */ 0, /* unused */ /* 035 */ 0, /* unused */ /* 036 */ 0, /* unused */ /* 037 */ 0, /* unused */ /* 038 */ 0, /* unused */ /* 039 */ 0, /* unused */ /* 03A */ 1, /* GARBAGE-COLLECT */ /* 03B */ 2, /* PLUS-FIXNUM */ /* 03C */ 2, /* MINUS-FIXNUM */ /* 03D */ 2, /* MULTIPLY-FIXNUM */ /* 03E */ 2, /* DIVIDE-FIXNUM */ /* 03F */ 2, /* EQUAL-FIXNUM? */ /* 040 */ 2, /* LESS-THAN-FIXNUM? */ /* 041 */ 1, /* POSITIVE-FIXNUM? */ /* 042 */ 1, /* ONE-PLUS-FIXNUM */ /* 043 */ 1, /* MINUS-ONE-PLUS-FIXNUM */ /* 044 */ 2, /* TRUNCATE-STRING */ /* 045 */ 3, /* SUBSTRING */ /* 046 */ 1, /* ZERO-FIXNUM? */ /* 047 */ 1, /* UNDANGERIZE */ /* 048 */ 1, /* DANGERIZE */ /* 049 */ 1, /* DANGEROUS? */ /* 04A */ 3, /* SUBSTRING-TO-LIST */ /* 04B */ 2, /* MAKE-FILLED-STRING */ /* 04C */ 2, /* PLUS-BIGNUM */ /* 04D */ 2, /* MINUS-BIGNUM */ /* 04E */ 2, /* MULTIPLY-BIGNUM */ /* 04F */ 2, /* DIVIDE-BIGNUM */ /* 050 */ 2, /* LISTIFY-BIGNUM */ /* 051 */ 2, /* EQUAL-BIGNUM? */ /* 052 */ 2, /* LESS-THAN-BIGNUM? */ /* 053 */ 1, /* POSITIVE-BIGNUM? */ /* Argument Count Table continues on next page */ \f /* Argument Count Table, continued */ /* 054 */ 0, /* Unused */ /* 055 */ 0, /* Unused */ /* 056 */ 3, /* PRIMITIVE-FASDUMP */ /* 057 */ 1, /* BINARY-FASLOAD */ /* 058 */ 3, /* STRING-POSITION */ /* 059 */ 2, /* STRING-LESS? */ /* 05A */ 1, /* OBJECT-HASH */ /* 05B */ 1, /* OBJECT-UNHASH */ /* 05C */ 0, /* GC-REHASH-DAEMON */ /* 05D */ 1, /* LENGTH */ /* 05E */ 2, /* ASSQ */ /* 05F */ 1, /* BUILD-STRING-FROM-LIST */ /* 060 */ 2, /* EQUAL-STRING-TO-LIST? */ /* 061 */ 1, /* MAKE-CELL */ /* 062 */ 1, /* CONTENTS */ /* 063 */ 1, /* CELL? */ /* 064 */ 1, /* CHARACTER-UPCASE */ /* 065 */ 1, /* CHARACTER-LIST-HASH */ /* 066 */ 2, /* GCD-FIXNUM */ /* 067 */ 1, /* COERCE-FIXNUM-TO-BIGNUM */ /* 068 */ 1, /* COERCE-BIGNUM-TO-FIXNUM */ /* 069 */ 2, /* PLUS-FLONUM */ /* 06A */ 2, /* MINUS-FLONUM */ /* 06B */ 2, /* MULTIPLY-FLONUM */ /* 06C */ 2, /* DIVIDE-FLONUM */ /* 06D */ 2, /* EQUAL-FLONUM? */ /* 06E */ 2, /* LESS-THAN-FLONUM? */ /* 06F */ 1, /* ZERO-BIGNUM? */ /* 070 */ 1, /* TRUNCATE-FLONUM */ /* 071 */ 1, /* ROUND-FLONUM */ /* 072 */ 1, /* COERCE-INTEGER-TO-FLONUM */ /* 073 */ 1, /* SINE-FLONUM */ /* 074 */ 1, /* COSINE-FLONUM */ /* 075 */ 1, /* ARCTAN-FLONUM */ /* 076 */ 1, /* EXP-FLONUM */ /* 077 */ 1, /* LN-FLONUM */ /* 078 */ 1, /* SQRT-FLONUM */ /* 079 */ 1, /* PRIMITIVE-FASLOAD */ /* 07A */ 0, /* GET-FIXED-OBJECTS-VECTOR */ /* 07B */ 1, /* SET!-FIXED-OBJECTS-VECTOR */ /* 07C */ 1, /* LIST-TO-VECTOR */ /* 07D */ 3, /* SUBVECTOR-TO-LIST */ /* 07E */ 1, /* PAIR? */ /* 07F */ 1, /* NEGATIVE-FIXNUM? */ /* 080 */ 1, /* NEGATIVE-BIGNUM? */ /* Argument Count Table continues on next page */ \f /* Argument Count Table, continued */ /* 081 */ 2, /* GREATER-THAN-FIXNUM? */ /* 082 */ 2, /* GREATER-THAN-BIGNUM? */ /* 083 */ 1, /* STRING-HASH */ /* 084 */ 3, /* Sys-PAIR-CONS */ /* 085 */ 1, /* Sys-PAIR? */ /* 086 */ 1, /* Sys-PAIR-CAR */ /* 087 */ 1, /* Sys-PAIR-CDR */ /* 088 */ 2, /* Sys-PAIR-SET!-CAR */ /* 089 */ 2, /* Sys-PAIR-SET!-CDR */ /* 08A */ 1, /* INITIALIZE-OBJECT-HASH */ /* 08B */ 1, /* GET-CHARACTER-IMMEDIATE */ /* 08C */ 2, /* SET-CONTENTS! */ /* 08D */ 2, /* EQUAL_BIT_STRING */ /* 08E */ 1, /* Sys-HUNK3-CXR0 */ /* 08F */ 2, /* Sys-HUNK3-SET!-CXR0 */ /* 090 */ 2, /* MAP-MACHINE-ADDRESS-TO-CODE */ /* 091 */ 1, /* Sys-HUNK3-CXR1 */ /* 092 */ 2, /* Sys-HUNK3-SET!-CXR1 */ /* 093 */ 2, /* MAP-CODE-TO-MACHINE-ADDRESS */ /* 094 */ 1, /* Sys-HUNK3-CXR2 */ /* 095 */ 2, /* Sys-HUNK3-SET!-CXR2 */ /* 096 */ 1, /* MAP-PRIMITIVE-ADDRESS-TO-ARITY */ /* 097 */ 2, /* Sys-LIST-TO-VECTOR */ /* 098 */ 3, /* Sys-SUBVECTOR-TO-LIST */ /* 099 */ 1, /* Sys-VECTOR? */ /* 09A */ 2, /* Sys-VECTOR-REF */ /* 09B */ 3, /* Sys-VECTOR-SET! */ /* 09C */ 1, /* WITH-HISTORY-DISABLED */ /* 09D */ 1, /* VECTOR-1B-CONS */ /* 09E */ 1, /* VECTOR-1B? */ /* 09F */ 2, /* VECTOR-1B-REF */ /* 0A0 */ 3, /* VECTOR-1B-SET! */ /* 0A1 */ 2, /* VECTOR-1B-SET!-FALSE */ /* 0A2 */ 2, /* VECTOR-1B-SET!-TRUE */ /* 0A3 */ 1, /* VECTOR-8B-CONS */ /* 0A4 */ 1, /* VECTOR-8B? */ /* 0A5 */ 2, /* VECTOR-8B-REF */ /* 0A6 */ 3, /* VECTOR-8B-SET! */ /* 0A7 */ 1, /* ZERO-FLONUM? */ /* 0A8 */ 1, /* POSITIVE-FLONUM? */ /* 0A9 */ 1, /* NEGATIVE-FLONUM? */ /* 0AA */ 2, /* GREATER-THAN-FLONUM? */ /* 0AB */ 1, /* INTERN-CHARACTER-LIST */ /* Argument Count Table continues on next page */ \f /* Argument Count Table, continued */ /* 0AC */ 1, /* VECTOR-1B-SIZE */ /* 0AD */ 1, /* VECTOR-8B-SIZE */ /* 0AE */ 1, /* Sys-VECTOR-SIZE */ /* 0AF */ 1, /* FORCE */ /* 0B0 */ 1, /* PRIMITIVE-DATUM */ /* 0B1 */ 1, /* MAKE-NON-POINTER-OBJECT */ /* 0B2 */ 1, /* DEBUGGING-PRINTER */ /* 0B3 */ 1, /* STRING-UPCASE */ /* 0B4 */ 2, /* PRIMITIVE_PURIFY */ /* 0B5 */ 0, /* unused */ /* 0B6 */ 2, /* COMPLETE_GARBAGE_COLLECT */ /* 0B7 */ 2, /* BAND_DUMP */ /* 0B8 */ 2, /* SUBSTRING_SEARCH */ /* 0B9 */ 1, /* BAND_LOAD */ /* 0BA */ 1, /* CONSTANT_P */ /* 0BB */ 1, /* PURE_P */ /* 0BC */ 1, /* GC_TYPE */ /* 0BD */ 1, /* IMPURIFY */ /* 0BE */ 2, /* WITH_THREADED_STACK */ /* 0BF */ 2, /* WITHIN_CONTROL_POINT */ /* 0C0 */ 1, /* SET_RUN_LIGHT */ /* 0C1 */ 0, /* unused */ /* 0C2 */ 0, /* unused */ /* 0C3 */ 0, /* unused */ /* 0C4 */ 0, /* unused */ /* 0C5 */ 0, /* unused */ /* 0C6 */ 0, /* unused */ /* 0C7 */ 0, /* CLOSE_LOST_OPEN_FILES */ /* 0C8 */ 2, /* PUT_CHARACTER_TO_OUTPUT_CHANNEL */ /* Argument Count Table continues on next page */ \f /* Argument Count Table, continued */ /* 0C9 */ 1, /* MASK_INTERRUPT_ENABLES */ /* 0CA */ 3, /* EVAL_STEP */ /* 0CB */ 3, /* APPLY_STEP */ /* 0CC */ 2, /* RETURN_STEP */ /* 0CD */ 0, /* unused */ /* 0CE */ 0, /* unused */ /* 0CF */ 0, /* unused */ /* 0D0 */ 0, /* unused */ /* 0D1 */ 1, /* MAKE_UNFILLED_BIT_STRING */ /* 0D2 */ 2, /* MAKE_FILLED_BIT_STRING */ /* 0D3 */ 1, /* BIT_STRING_QM */ /* 0D4 */ 1, /* BIT_STRING_SIZE */ /* 0D5 */ 2, /* BIT_STRING_REF */ /* 0D6 */ 3, /* BIT_STRING_SET */ /* 0D7 */ 2, /* BIT_STRING_SET_TRUE */ /* 0D8 */ 2, /* BIT_STRING_SET_FALSE */ /* 0D9 */ 3, /* BIT_SUBSTRING */ /* 0DA */ 3, /* INSERT_BIT_STRING */ /* 0DB */ 3, /* INSERT_BIT_STRING_EXCL */ /* 0DC */ 1, /* INTEGER_TO_BIT_STRING */ /* 0DD */ 1, /* BIT_STRING_TO_INTEGER */ /* 0DE */ 1, /* REVERSE_BIT_STRING */ /* 0DF */ 3, /* READ_BITS */ /* 0E0 */ 3, /* WRITE_BITS */ /* 0E1 */ 0, /* MAKE_STATE_SPACE */ /* 0E2 */ 3, /* EXECUTE_AT_NEW_POINT */ /* 0E3 */ 1, /* TRANSLATE_TO_POINT */ /* 0E4 */ 0, /* GET_NEXT_CONSTANT */ /* 0E5 */ 0, /* MICROCODE_IDENTIFY */ /* 0E6 */ 1, /* ZERO */ /* 0E7 */ 1, /* POSITIVE */ /* Argument Count Table continues on next page */ \f /* Argument Count Table, continued */ /* 0E8 */ 1, /* NEGATIVE */ /* 0E9 */ 2, /* EQUAL_NUMBER */ /* 0EA */ 2, /* LESS */ /* 0EB */ 2, /* GREATER */ /* 0EC */ 2, /* PLUS */ /* 0ED */ 2, /* MINUS */ /* 0EE */ 2, /* MULTIPLY */ /* 0EF */ 2, /* DIVIDE */ /* 0F0 */ 2, /* INTEGER_DIVIDE */ /* 0F1 */ 1, /* ONE_PLUS */ /* 0F2 */ 1, /* MINUS_ONE_PLUS */ /* 0F3 */ 1, /* TRUNCATE */ /* 0F4 */ 1, /* ROUND */ /* 0F5 */ 1, /* FLOOR */ /* 0F6 */ 1, /* CEILING */ /* 0F7 */ 1, /* SQRT */ /* 0F8 */ 1, /* EXP */ /* 0F9 */ 1, /* LN */ /* 0FA */ 1, /* SINE */ /* 0FB */ 1, /* COSINE */ /* 0FB */ 1, /* ARCTAN */ /* 0FD */ 0, /* unused */ /* 0FE */ 0, /* unused */ /* 0FF */ 0, /* unused */ /* 100 */ 0, /* unused */ /* 101 */ 0, /* GET_EXTERNAL_COUNTS */ /* 102 */ 1, /* GET_EXT_NAME */ /* 103 */ 2, /* GET_EXT_NUMBER */ /* 104 */ 2, /* OPEN_CHANNEL */ /* 105 */ 1, /* CLOSE_PHYSICAL_CHANNEL */ /* 106 */ 0, /* GET_NEXT_INTERRUPT_CHARACTER */ /* 107 */ 2, /* CHECK_AND_CLEAN_UP_INPUT_CHANNEL */ /* 108 */ 0, /* unused */ /* 109 */ 0, /* SYSTEM_CLOCK */ /* 10A */ 1, /* FILE_EXISTS */ /* 10B */ 1, /* DELETE_FILE */ /* 10C */ 2, /* MOVE_CURSOR */ /* 10D */ 2, /* INTERNAL_PHOTO */ /* 10E */ 0, /* CURRENT_DATE */ /* 10F */ 0, /* CURRENT_TIME */ /* 110 */ 2, /* TRANSLATE_FILE */ /* 111 */ 2, /* COPY_FILE */ /* 112 */ 2, /* RENAME_FILE */ /* 113 */ 1, /* REMOVE_FILE */ /* 114 */ 3, /* LINK_FILE */ /* 115 */ 1, /* MAKE_DIRECTORY */ /* 116 */ 1, /* VOLUME_NAME */ /* 117 */ 1, /* PREFIX_VOLUME */ /* 118 */ 1, /* OPEN_CATALOG */ /* 119 */ 0, /* CLOSE_CATALOG */ /* 11A */ 0, /* NEXT_FILE */ /* 11B */ 0, /* CAT_NAME */ /* 11C */ 0, /* CAT_KIND */ /* 11D */ 0, /* CAT_PSIZE */ /* 11E */ 0, /* CAT_LSIZE */ /* 11F */ 0, /* CAT_INFO */ /* 120 */ 0, /* CAT_BLOCK */ /* 121 */ 0, /* CAT_CREATE_DATE */ /* 122 */ 0, /* CAT_CREATE_TIME */ /* 123 */ 0, /* CAT_LAST_DATE */ /* 124 */ 0, /* CAT_LAST_TIME */ /* 125 */ 0, /* ERROR_MESSAGE */ /* 126 */ 0, /* CURRENT_YEAR */ /* 127 */ 0, /* CURRENT_MONTH */ /* 128 */ 0, /* CURRENT_DAY */ /* 129 */ 0, /* CURRENT_HOUR */ /* 12A */ 0, /* CURRENT_MINUTE */ /* 12B */ 0, /* CURRENT_SECOND */ /* 12C */ 1, /* INIT_FLOPPY */ /* 12D */ 1, /* ZERO_FLOPPY */ /* 12E */ 1, /* PACK_VOLUME */ /* 12F */ 1, /* LOAD_PICTURE */ /* 130 */ 1, /* STORE_PICTURE */ /* 131 */ 1, /* LOOKUP_SYSTEM_SYMBOL */ /* 132 */ 0, /* unused */ /* 133 */ 0, /* CLEAR_SCREEN */ /* 134 */ 0, /* CLEAR_TO_END_OF_LINE */ /* 135 */ 0, /* NUMBER_OF_COLUMNS */ /* 136 */ 0, /* NUMBER_OF_LINES */ /* 137 */ 2 /* WITH-INTERRUPT-MASK */ }; #if (MAX_PRIMITIVE_NUMBER != 0x137) /* Cause an error */ #include "Prims.h and storage.c are inconsistent -- Arity Table" #endif \f /* Declare the primitives themselves to be Externs */ extern Pointer Prim_Apply(), Prim_Apply_Step(), Prim_Arctan(), Prim_Arctan_Flonum(), Prim_Assq(), Prim_Band_Dump(), Prim_Band_Load(), Prim_Big_To_Fix(), Prim_Binary_Fasload(), Prim_BSt_Ref(), Prim_BSt_Ref(), Prim_BSt_Set(), Prim_BSt_Set_False(), Prim_BSt_Size(), Prim_BSt_Set_True(), Prim_Bit_Substring(), Prim_BSt_Qm(), Prim_Build_String_From_List(), Prim_Car(), Prim_Cat_Block(), Prim_Cat_Create_Date(), Prim_Cat_Create_Time(), Prim_Cat_Info(), Prim_Cat_Kind(), Prim_Cat_Last_Date(), Prim_Cat_Last_Time(), Prim_Cat_Lsize(), Prim_Cat_Name(), Prim_Cat_Psize(), Prim_Catch(), Prim_Cdr(), Prim_Ceiling(), Prim_Cell(), Prim_Cell_Contents(), Prim_Character_List_Hash(), Prim_Chk_And_Cln_Input_Channel(), Prim_Close_Lost_Open_Files(), Prim_Clear_Screen(), Prim_Clear_To_End_Of_Line(), Prim_Close_Catalog(), Prim_Close_Physical_Channel(), Prim_Complete_Garbage_Collect(), Prim_Cons(), Prim_Constant_P(), Prim_Copy_File(), Prim_Cosine(), Prim_Cosine_Flonum(), Prim_Current_Date(), Prim_Current_Day(), Prim_Current_Hour(), Prim_Current_Minute(), Prim_Current_Month(), Prim_Current_Second(), Prim_Current_Time(), Prim_Current_Year(), Prim_Dangerize(), Prim_Dangerous_QM(), Prim_Delete_File(), Prim_Divide(), Prim_Divide_Bignum(), Prim_Divide_Fixnum(), Prim_Divide_Flonum(), Prim_Enable_Interrupts(), Prim_Eq(), Prim_Equal_Bignum(), Prim_Equal_Bit_String(),Prim_Equal_Fixnum(), Prim_Equal_Flonum(), Prim_Equal_Number(), Prim_Equal_String_To_List(), Prim_Error_Message(), Prim_Eval_Step(), Prim_Execute_At_New_Point(), Prim_Exp(), Prim_Fix_To_Big(), Prim_Exp_Flonum(), Prim_File_Exists(), Prim_Floor(), Prim_Force(), Prim_Garbage_Collect(), Prim_Gcd_Fixnum(), Prim_Gc_Type(), Prim_General_Car_Cdr(), Prim_Get_Character(), Prim_Get_Char_Immediate(), Prim_Get_Cursor(), Prim_Get_External_Count(), Prim_Get_Ext_Name(), Prim_Get_Ext_Number(), /* Externs continue on next page */ \f /* Externs, continued */ Prim_Get_Fixed_Objects_Vector(), Prim_Get_Next_Constant(), Prim_Get_Next_Interrupt_Char(), #ifdef COMPILE_FUTURES Prim_Get_Work(), #endif Prim_Greater_Bignum(), Prim_Greater(), Prim_Greater_Fixnum(), Prim_Greater_Flonum(), Prim_Hunk3_Cons(), Prim_Hunk3_Cxr(), Prim_Hunk3_Set_Cxr(), Prim_Impurify(), Prim_Init_Floppy(), Prim_Initialize_Microcode_Debug(), Prim_Initialize_Object_Hash(), Prim_Ins_BStr(), Prim_Ins_BStr_Excl(), Prim_Insert_Non_Marked_Vector(), Prim_Insert_String(), Prim_Int_To_Float(), Prim_Integer_Divide(), Prim_Intern_Character_List(), Prim_Internal_Photo(), Prim_Length(), Prim_Less(), Prim_Less_Bignum(), Prim_Less_Fixnum(), Prim_Less_Flonum(), Prim_Lexical_Assignment(), Prim_Lexical_Reference(), Prim_Link_File(), Prim_Listify_Bignum(), Prim_List_To_Vector(), Prim_Ln(), Prim_Ln_Flonum(), Prim_Load_Picture(), Prim_Local_Assignment(), Prim_Local_Reference(), Prim_Lookup_System_Symbol(), Prim_M_1_Plus(), Prim_M_1_Plus_Fixnum(), Prim_Make_Cell(), Prim_Make_Directory(), Prim_Make_Empty_String(), Prim_Make_Fld_Bit_String(), Prim_Make_Fld_String(), Prim_Make_Non_Pointer(), Prim_Make_State_Space(), Prim_Make_Unfilled_Bit_String(), Prim_Map_Code_To_Address(), Prim_Map_Address_To_Code(), Prim_Map_Prim_Address_To_Arity(), /* Externs continue on next page */ \f /* Externs, continued */ Prim_Mask_Interrupt_Enables(), Prim_Memq(), Prim_Microcode_Identify(), Prim_Minus(), Prim_Minus_Bignum(), Prim_Minus_Fixnum(), Prim_Minus_Flonum(), Prim_Move_Cursor(), Prim_Multiply_Bignum(), Prim_Multiply(), Prim_Multiply_Fixnum(), Prim_Multiply_Flonum(), Prim_Negative(), Prim_Negative_Bignum(), Prim_Negative_Fixnum(), Prim_Negative_Flonum(), Prim_Next_File(), Prim_Non_Marked_Vector_Cons(), Prim_Non_Restartable_Exit(), Prim_Null(), Prim_Number_Of_Columns(), Prim_Number_Of_Lines(), Prim_Object_Hash(), Prim_Object_Unhash(), Prim_One_Plus(), Prim_One_Plus_Fixnum(), Prim_Open_Catalog(), Prim_Open_Channel(), Prim_Overwrite_String(), Prim_Pack_Volume(), Prim_Pair(), Prim_Plus_Bignum(), Prim_Plus(), Prim_Plus_Fixnum(), Prim_Plus_Flonum(), Prim_Positive(), Prim_Positive_Bignum(), Prim_Positive_Fixnum(), Prim_Positive_Flonum(), Prim_Prefix_Volume(), Prim_Primitive_Datum(), Prim_Prim_Fasdump(), Prim_Prim_Fasload(), Prim_Primitive_Purify(), Prim_Primitive_Set_Type(), Prim_Prim_Type(), Prim_Prim_Type_QM(), Prim_Print_String(), Prim_Pure_P(), Prim_Put_Char_To_Output_Channel(), Prim_Raise_Char(), Prim_Raise_String(), Prim_Read_Bits(), Prim_Rehash_Gc_Daemon(), Prim_Remove_File(), Prim_Rename_File(), Prim_Restartable_Exit(), Prim_Return_Step(), Prim_Reverse_Bit_String(), Prim_Round(), Prim_Round_Flonum(), Prim_Scode_Eval(), Prim_Set_Car(), Prim_Set_Cdr(), Prim_Set_Cell_Contents(), Prim_Set_Current_History(), Prim_Set_Fixed_Objects_Vector(), Prim_Set_Interrupt_Enables(), /* Externs continue on next page */ \f /* Externs, continued */ Prim_Set_Run_Light(), Prim_Sine(), Prim_Sine_Flonum(), Prim_Sqrt(), Prim_Sqrt_Flonum(), Prim_Store_Picture(), Prim_String_Equal(), Prim_String_Hash(), Prim_String_Less(), Prim_String_Position(), Prim_Substring(), Prim_Substring_Search(), Prim_Substring_To_List(), Prim_Subvector_To_List(), Prim_Sys_H3_0(), Prim_Sys_H3_1(), Prim_Sys_H3_2(), Prim_SH3_Set_0(), Prim_SH3_Set_1(), Prim_SH3_Set_2(), Prim_Sys_List_To_Vector(), Prim_Sys_Pair(), Prim_Sys_Pair_Car(), Prim_Sys_Pair_Cdr(), Prim_Sys_Pair_Cons(), Prim_Sys_Set_Car(), Prim_Sys_Set_Cdr(), Prim_Sys_Subvector_To_List(), Prim_Sys_Vector(), Prim_Sys_Vector_Ref(), Prim_Sys_Vec_Set(), Prim_Sys_Vec_Size(), Prim_System_Clock(), Prim_Temp_Printer(), Prim_Translate_File(), Prim_Translate_To_Point(), Prim_Truncate(), Prim_Truncate_Flonum(), Prim_Truncate_String(), Prim_Unassigned_Test(), Prim_Unbound_Test(), Prim_Undangerize(), Prim_Unreferenceable_Test(), Prim_Unused(), Prim_Vector_1b(), Prim_Vector_1b_Cons(), Prim_Vector_1b_Ref(), Prim_Vec_1b_Set(), Prim_Volume_Name(), Prim_1b_Set_False(), Prim_1b_Set_True(), Prim_Vec_1b_Size(), Prim_Vector_8b(), Prim_Vector_8b_Cons(), Prim_Vector_8b_Ref(), Prim_Vec_8b_Set(), Prim_Vec_8b_Size(), Prim_Vector_Cons(), Prim_Vector_Ref(), Prim_Vector_Set(), Prim_Vector_Size(), Prim_Within_Control_Point(), Prim_With_History_Disabled(), Prim_With_Interrupt_Mask(), Prim_With_Threaded_Stack(), Prim_Write_Bits(), Prim_Zero(), Prim_Zero_Bignum(), Prim_Zero_Fixnum(), Prim_Zero_Flonum(), Prim_Zero_Floppy(); \f /* The table of all primitive procedures */ Pointer (*(Primitive_Table[]))() = { /* 000 */ Prim_Lexical_Assignment, /* 001 */ Prim_Local_Reference, /* 002 */ Prim_Local_Assignment, /* 003 */ Prim_Catch, /* 004 */ Prim_Scode_Eval, /* 005 */ Prim_Apply, /* 006 */ Prim_Set_Interrupt_Enables, /* 007 */ Prim_Unused, #ifdef COMPILE_FUTURES /* 008 */ Prim_Get_Work, #else /* 008 */ Prim_Unused, #endif /* 009 */ Prim_Unused, /* 00A */ Prim_Unused, /* 00B */ Prim_Unused, /* 00C */ Prim_Null, /* 00D */ Prim_Eq, /* 00E */ Prim_String_Equal, /* 00F */ Prim_Prim_Type_QM, /* 010 */ Prim_Prim_Type, /* 011 */ Prim_Primitive_Set_Type, /* 012 */ Prim_Lexical_Reference, /* 013 */ Prim_Unreferenceable_Test, /* 014 */ Prim_Unused, /* 015 */ Prim_Unused, /* 016 */ Prim_Non_Restartable_Exit, /* 017 */ Prim_Unused, /* 018 */ Prim_Unassigned_Test, /* 019 */ Prim_Insert_Non_Marked_Vector, /* 01A */ Prim_Restartable_Exit, /* 01B */ Prim_Unused, /* 01C */ Prim_Memq, /* 01D */ Prim_Insert_String, /* 01E */ Prim_Enable_Interrupts, /* 01F */ Prim_Make_Empty_String, /* 020 */ Prim_Cons, /* 021 */ Prim_Car, /* 022 */ Prim_Cdr, /* 023 */ Prim_Set_Car, /* 024 */ Prim_Set_Cdr, /* 025 */ Prim_Print_String, /* 026 */ Prim_Get_Cursor, /* 027 */ Prim_General_Car_Cdr, /* 028 */ Prim_Hunk3_Cons, /* Primitive dispatch table continues on next page */ \f /* Primitive dispatch table, continued */ /* 029 */ Prim_Hunk3_Cxr, /* 02A */ Prim_Hunk3_Set_Cxr, /* 02B */ Prim_Overwrite_String, /* 02C */ Prim_Vector_Cons, /* 02D */ Prim_Vector_Size, /* 02E */ Prim_Vector_Ref, /* 02F */ Prim_Set_Current_History, /* 030 */ Prim_Vector_Set, /* 031 */ Prim_Non_Marked_Vector_Cons, /* 032 */ Prim_Get_Character, /* 033 */ Prim_Unbound_Test, /* 034 */ Prim_Unused, /* 035 */ Prim_Unused, /* 036 */ Prim_Unused, /* 037 */ Prim_Unused, /* 038 */ Prim_Unused, /* 039 */ Prim_Unused, /* 03A */ Prim_Garbage_Collect, /* 03B */ Prim_Plus_Fixnum, /* 03C */ Prim_Minus_Fixnum, /* 03D */ Prim_Multiply_Fixnum, /* 03E */ Prim_Divide_Fixnum, /* 03F */ Prim_Equal_Fixnum, /* 040 */ Prim_Less_Fixnum, /* 041 */ Prim_Positive_Fixnum, /* 042 */ Prim_One_Plus_Fixnum, /* 043 */ Prim_M_1_Plus_Fixnum, /* 044 */ Prim_Truncate_String, /* 045 */ Prim_Substring, /* 046 */ Prim_Zero_Fixnum, /* 047 */ Prim_Undangerize, /* 048 */ Prim_Dangerize, /* 049 */ Prim_Dangerous_QM, /* 04A */ Prim_Substring_To_List, /* 04B */ Prim_Make_Fld_String, /* 04C */ Prim_Plus_Bignum, /* 04D */ Prim_Minus_Bignum, /* 04E */ Prim_Multiply_Bignum, /* 04F */ Prim_Divide_Bignum, /* 050 */ Prim_Listify_Bignum, /* 051 */ Prim_Equal_Bignum, /* 052 */ Prim_Less_Bignum, /* 053 */ Prim_Positive_Bignum, /* Primitive dispatch table continues on next page */ \f /* Primitive dispatch table, continued */ /* 054 */ Prim_Unused, /* 055 */ Prim_Unused, /* 056 */ Prim_Prim_Fasdump, /* 057 */ Prim_Binary_Fasload, /* 058 */ Prim_String_Position, /* 059 */ Prim_String_Less, /* 05A */ Prim_Object_Hash, /* 05B */ Prim_Object_Unhash, /* 05C */ Prim_Rehash_Gc_Daemon, /* 05D */ Prim_Length, /* 05E */ Prim_Assq, /* 05F */ Prim_Build_String_From_List, /* 060 */ Prim_Equal_String_To_List, /* 061 */ Prim_Make_Cell, /* 062 */ Prim_Cell_Contents, /* 063 */ Prim_Cell, /* 064 */ Prim_Raise_Char, /* 065 */ Prim_Character_List_Hash, /* 066 */ Prim_Gcd_Fixnum, /* 067 */ Prim_Fix_To_Big, /* 068 */ Prim_Big_To_Fix, /* 069 */ Prim_Plus_Flonum, /* 06A */ Prim_Minus_Flonum, /* 06B */ Prim_Multiply_Flonum, /* 06C */ Prim_Divide_Flonum, /* 06D */ Prim_Equal_Flonum, /* 06E */ Prim_Less_Flonum, /* 06F */ Prim_Zero_Bignum, /* 070 */ Prim_Truncate_Flonum, /* 071 */ Prim_Round_Flonum, /* 072 */ Prim_Int_To_Float, /* 073 */ Prim_Sine_Flonum, /* 074 */ Prim_Cosine_Flonum, /* 075 */ Prim_Arctan_Flonum, /* 076 */ Prim_Exp_Flonum, /* 077 */ Prim_Ln_Flonum, /* 078 */ Prim_Sqrt_Flonum, /* 079 */ Prim_Prim_Fasload, /* 07A */ Prim_Get_Fixed_Objects_Vector, /* 07B */ Prim_Set_Fixed_Objects_Vector, /* 07C */ Prim_List_To_Vector, /* 07D */ Prim_Subvector_To_List, /* 07E */ Prim_Pair, /* 07F */ Prim_Negative_Fixnum, /* 080 */ Prim_Negative_Bignum, /* Primitive dispatch table continues on next page */ \f /* Primitive dispatch table, continued */ /* 081 */ Prim_Greater_Fixnum, /* 082 */ Prim_Greater_Bignum, /* 083 */ Prim_String_Hash, /* 084 */ Prim_Sys_Pair_Cons, /* 085 */ Prim_Sys_Pair, /* 086 */ Prim_Sys_Pair_Car, /* 087 */ Prim_Sys_Pair_Cdr, /* 088 */ Prim_Sys_Set_Car, /* 089 */ Prim_Sys_Set_Cdr, /* 08A */ Prim_Initialize_Object_Hash, /* 08B */ Prim_Get_Char_Immediate, /* 08C */ Prim_Set_Cell_Contents, /* 08D */ Prim_Equal_Bit_String, /* 08E */ Prim_Sys_H3_0, /* 08F */ Prim_SH3_Set_0, /* 090 */ Prim_Map_Address_To_Code, /* 091 */ Prim_Sys_H3_1, /* 092 */ Prim_SH3_Set_1, /* 093 */ Prim_Map_Code_To_Address, /* 094 */ Prim_Sys_H3_2, /* 095 */ Prim_SH3_Set_2, /* 096 */ Prim_Map_Prim_Address_To_Arity, /* 097 */ Prim_Sys_List_To_Vector, /* 098 */ Prim_Sys_Subvector_To_List, /* 099 */ Prim_Sys_Vector, /* 09A */ Prim_Sys_Vector_Ref, /* 09B */ Prim_Sys_Vec_Set, /* 09C */ Prim_With_History_Disabled, /* 09D */ Prim_Vector_1b_Cons, /* 09E */ Prim_Vector_1b, /* 09F */ Prim_Vector_1b_Ref, /* 0A0 */ Prim_Vec_1b_Set, /* 0A1 */ Prim_1b_Set_False, /* 0A2 */ Prim_1b_Set_True, /* 0A3 */ Prim_Vector_8b_Cons, /* 0A4 */ Prim_Vector_8b, /* 0A5 */ Prim_Vector_8b_Ref, /* 0A6 */ Prim_Vec_8b_Set, /* 0A7 */ Prim_Zero_Flonum, /* 0A8 */ Prim_Positive_Flonum, /* 0A9 */ Prim_Negative_Flonum, /* 0AA */ Prim_Greater_Flonum, /* 0AB */ Prim_Intern_Character_List, /* Primitive dispatch table continues on next page */ \f /* Primitive dispatch table, continued */ /* 0AC */ Prim_Vec_1b_Size, /* 0AD */ Prim_Vec_8b_Size, /* 0AE */ Prim_Sys_Vec_Size, /* 0AF */ Prim_Force, /* 0B0 */ Prim_Primitive_Datum, /* 0B1 */ Prim_Make_Non_Pointer, /* 0B2 */ Prim_Temp_Printer, /* 0B3 */ Prim_Raise_String, /* 0B4 */ Prim_Primitive_Purify, /* 0B5 */ Prim_Unused, /* 0B6 */ Prim_Complete_Garbage_Collect, /* 0B7 */ Prim_Band_Dump, /* 0B8 */ Prim_Substring_Search, /* 0B9 */ Prim_Band_Load, /* 0BA */ Prim_Constant_P, /* 0BB */ Prim_Pure_P, /* 0BC */ Prim_Gc_Type, /* 0BD */ Prim_Impurify, /* 0BE */ Prim_With_Threaded_Stack, /* 0BF */ Prim_Within_Control_Point, /* 0C0 */ Prim_Set_Run_Light, /* 0C1 */ Prim_Unused, /* 0C2 */ Prim_Unused, /* 0C3 */ Prim_Unused, /* 0C4 */ Prim_Unused, /* 0C5 */ Prim_Unused, /* 0C6 */ Prim_Unused, /* 0C7 */ Prim_Close_Lost_Open_Files, /* 0C8 */ Prim_Put_Char_To_Output_Channel, /* 0C9 */ Prim_Mask_Interrupt_Enables, /* Primitive dispatch table continues on next page */ \f /* Primitive dispatch table, continued */ /* 0CA */ Prim_Eval_Step, /* 0CB */ Prim_Apply_Step, /* 0CC */ Prim_Return_Step, /* 0CD */ Prim_Unused, /* 0CE */ Prim_Unused, /* 0CF */ Prim_Unused, /* 0D0 */ Prim_Unused, /* 0D1 */ Prim_Make_Unfilled_Bit_String, /* 0D2 */ Prim_Make_Fld_Bit_String, /* 0D3 */ Prim_BSt_Qm, /* 0D4 */ Prim_BSt_Size, /* 0D5 */ Prim_BSt_Ref, /* 0D6 */ Prim_BSt_Set, /* 0D7 */ Prim_BSt_Set_True, /* 0D8 */ Prim_BSt_Set_False, /* 0D9 */ Prim_Bit_Substring, /* 0DA */ Prim_Ins_BStr, /* 0DB */ Prim_Ins_BStr_Excl, /* 0DC */ Prim_Unused, /* Prim_Integer_To_Bit_String, */ /* 0DD */ Prim_Unused, /* Prim_BSt_To_Integer, */ /* 0DE */ Prim_Reverse_Bit_String, /* 0DF */ Prim_Read_Bits, /* 0E0 */ Prim_Write_Bits, /* 0E1 */ Prim_Make_State_Space, /* 0E2 */ Prim_Execute_At_New_Point, /* 0E3 */ Prim_Translate_To_Point, /* 0E4 */ Prim_Get_Next_Constant, /* 0E5 */ Prim_Microcode_Identify, /* Primitive dispatch table continues on next page */ \f /* Primitive dispatch table, continued */ /* 0E6 */ Prim_Zero, /* 0E7 */ Prim_Positive, /* 0E8 */ Prim_Negative, /* 0E9 */ Prim_Equal_Number, /* 0EA */ Prim_Less, /* 0EB */ Prim_Greater, /* 0EC */ Prim_Plus, /* 0ED */ Prim_Minus, /* 0EE */ Prim_Multiply, /* 0EF */ Prim_Divide, /* 0F0 */ Prim_Integer_Divide, /* 0F1 */ Prim_One_Plus, /* 0F2 */ Prim_M_1_Plus, /* 0F3 */ Prim_Truncate, /* 0F4 */ Prim_Round, /* 0F5 */ Prim_Floor, /* 0F6 */ Prim_Ceiling, /* 0F7 */ Prim_Sqrt, /* 0F8 */ Prim_Exp, /* 0F9 */ Prim_Ln, /* 0FA */ Prim_Sine, /* 0FB */ Prim_Cosine, /* 0FC */ Prim_Arctan, /* 0FD */ Prim_Unused, /* 0FE */ Prim_Unused, /* 0FF */ Prim_Unused, /* 100 */ Prim_Unused, /* 101 */ Prim_Get_External_Count, /* 102 */ Prim_Get_Ext_Name, /* 103 */ Prim_Get_Ext_Number, /* 104 */ Prim_Open_Channel, /* 105 */ Prim_Close_Physical_Channel, /* 106 */ Prim_Get_Next_Interrupt_Char, /* 107 */ Prim_Chk_And_Cln_Input_Channel, /* 108 */ Prim_Unused, /* 109 */ Prim_System_Clock, /* 10a */ Prim_File_Exists, /* 10b */ Prim_Delete_File, /* 10c */ Prim_Move_Cursor, /* 10d */ Prim_Internal_Photo, /* 10e */ Prim_Current_Date, /* 10f */ Prim_Current_Time, /* 110 */ Prim_Translate_File, /* 111 */ Prim_Copy_File, /* 112 */ Prim_Rename_File, /* 113 */ Prim_Remove_File, /* 114 */ Prim_Link_File, /* 115 */ Prim_Make_Directory, /* 116 */ Prim_Volume_Name, /* 117 */ Prim_Prefix_Volume, /* 118 */ Prim_Open_Catalog, /* 119 */ Prim_Close_Catalog, /* 11a */ Prim_Next_File, /* 11b */ Prim_Cat_Name, /* 11c */ Prim_Cat_Kind, /* 11d */ Prim_Cat_Psize, /* 11e */ Prim_Cat_Lsize, /* 11f */ Prim_Cat_Info, /* 120 */ Prim_Cat_Block, /* 121 */ Prim_Cat_Create_Date, /* 122 */ Prim_Cat_Create_Time, /* 123 */ Prim_Cat_Last_Date, /* 124 */ Prim_Cat_Last_Time, /* 125 */ Prim_Error_Message, /* 126 */ Prim_Current_Year, /* 127 */ Prim_Current_Month, /* 128 */ Prim_Current_Day, /* 129 */ Prim_Current_Hour, /* 12a */ Prim_Current_Minute, /* 12b */ Prim_Current_Second, /* 12c */ Prim_Init_Floppy, /* 12d */ Prim_Zero_Floppy, /* 12e */ Prim_Pack_Volume, /* 12f */ Prim_Load_Picture, /* 130 */ Prim_Store_Picture, /* 131 */ Prim_Lookup_System_Symbol, /* 132 */ Prim_Unused, /* 133 */ Prim_Clear_Screen, /* 134 */ Prim_Clear_To_End_Of_Line, /* 135 */ Prim_Number_Of_Columns, /* 136 */ Prim_Number_Of_Lines, /* 137 */ Prim_With_Interrupt_Mask }; #if (MAX_PRIMITIVE_NUMBER != 0x137) /* Cause an error */ #include "Prims.h and storage.c are inconsistent -- Procedure Table" #endif \f /* And, finally, the table of primitive names. */ char *Primitive_Names[] = { /* 0x00 in Lookup */ "PC_LEXICAL_ASSIGNMENT", /* 0x01 in Lookup */ "PC_LOCAL_REFERENCE", /* 0x02 in Lookup */ "PC_LOCAL_ASSIGNMENT", /* 0x03 in Hooks */ "PC_CATCH", /* 0x04 in Hooks */ "PC_SCODE_EVAL", /* 0x05 in Hooks */ "PC_APPLY", /* 0x06 in Hooks */ "PC_SET_INTERRUPT_ENABLES", /* 0x07 not here */ "PC_UNEXISTENT_PRIMITIVE", #ifdef COMPILE_FUTURES /* 0x08 in intercom */ "PC_GET_WORK", #else /* 0x08 not here */ "PC_UNEXISTENT_PRIMITIVE", #endif /* 0x09 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x0A not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x0B not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x0C in Prim */ "PC_NOT", /* 0x0D in Prim */ "PC_EQ", /* 0x0E in String */ "PC_STRING_EQUAL", /* 0x0F in Prim */ "PC_PRIM_TYPE_QM", /* 0x10 in Prim */ "PC_PRIM_TYPE", /* 0x11 in Prim */ "PC_PRIMITIVE_SET_TYPE", /* 0x12 in Lookup */ "PC_LEXICAL_REFERENCE", /* 0x13 in Lookup */ "PC_UNREFERENCEABLE_TEST", /* 0x14 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x15 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x16 in Prim */ "PC_NON_RESTARTABLE_EXIT", /* 0x17 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x18 in Lookup */ "PC_UNASSIGNED_TEST", /* 0x19 in Prim */ "PC_INSERT_NON_MARKED_VECTOR", /* 0x1A in OS */ "PC_RESTARTABLE_EXIT", /* 0x1B not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x1C in List */ "PC_MEMQ", /* 0x1D in String */ "PC_INSERT_STRING", /* 0x1E in Hooks */ "PC_ENABLE_INTERRUPTS", /* 0x1F in String */ "PC_MAKE_EMPTY_STRING", /* 0x20 in List */ "PC_CONS", /* 0x21 in List */ "PC_CAR", /* 0x22 in List */ "PC_CDR", /* 0x23 in List */ "PC_SET_CAR", /* 0x24 in List */ "PC_SET_CDR", /* Primitive names continue on the next page */ \f /* Primitive names, continued */ /* 0x25 in IO */ "PC_PRINT_STRING", /* 0x26 in Nihil */ "PC_GET_CURSOR", /* 0x27 in List */ "PC_GENERAL_CAR_CDR", /* 0x28 in Hunk */ "PC_HUNK3_CONS", /* 0x29 in Hunk */ "PC_HUNK3_CXR", /* 0x2A in Hunk */ "PC_HUNK3_SET_CXR", /* 0x2B in String */ "PC_OVERWRITE_STRING", /* 0x2C in Vector */ "PC_VECTOR_CONS", /* 0x2D in Vector */ "PC_VECTOR_SIZE", /* 0x2E in Vector */ "PC_VECTOR_REF", /* 0x2F in Hooks */ "PC_SET_CURRENT_HISTORY", /* 0x30 in Vector */ "PC_VECTOR_SET", /* 0x31 in Prim */ "PC_NON_MARKED_VECTOR_CONS", /* 0x32 in IO */ "PC_GET_CHAR", /* 0x33 in Lookup */ "PC_UNBOUND_TEST", /* 0x34 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x35 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x36 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x37 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x38 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x39 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x3A in GCLoop */ "PC_GARBAGE_COLLECT", /* 0x3B in Fixnum */ "PC_PLUS_FIXNUM", /* 0x3C in Fixnum */ "PC_MINUS_FIXNUM", /* 0x3D in Fixnum */ "PC_MULTIPLY_FIXNUM", /* 0x3E in Fixnum */ "PC_DIVIDE_FIXNUM", /* 0x3F in Fixnum */ "PC_EQUAL_FIXNUM", /* 0x40 in Fixnum */ "PC_LESS_FIXNUM", /* 0x41 in Fixnum */ "PC_POSITIVE_FIXNUM", /* 0x42 in Fixnum */ "PC_ONE_PLUS_FIXNUM", /* 0x43 in Fixnum */ "PC_M_ONE_PLUS_FIXNUM", /* 0x44 in String */ "PC_TRUNCATE_STRING", /* 0x45 in String */ "PC_SUBSTRING", /* 0x46 in Fixnum */ "PC_ZERO_FIXNUM", /* 0x47 in Prim */ "PC_UNDANGERIZE", /* 0x48 in Prim */ "PC_DANGERIZE", /* 0x49 in Prim */ "PC_DANGEROUS_QM", /* 0x4A in String */ "PC_SUBSTRING_TO_LIST", /* 0x4B in String */ "PC_MAKE_FILLED_STRING", /* 0x4C in Bignum */ "PC_PLUS_BIGNUM", /* 0x4D in Bignum */ "PC_MINUS_BIGNUM", /* 0x4E in Bignum */ "PC_MULTIPLY_BIGNUM", /* 0x4F in Bignum */ "PC_DIVIDE_BIGNUM", /* Primitive names continue on the next page */ \f /* Primitive names, continued */ /* 0x50 in Bignum */ "PC_LISTIFY_BIGNUM", /* 0x51 in Bignum */ "PC_EQUAL_BIGNUM", /* 0x52 in Bignum */ "PC_LESS_BIGNUM", /* 0x53 in Bignum */ "PC_POSITIVE_BIGNUM", /* 0x54 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x55 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x56 in Fasdump */ "PC_PRIMITIVE_FASDUMP", /* 0x57 in Fasload */ "PC_FASLOAD", /* 0x58 in String */ "PC_STRING_POSITION", /* 0x59 in String */ "PC_STRING_LESS", /* 0x5A in Daemon */ "PC_OBJECT_HASH", /* 0x5B in Daemon */ "PC_OBJECT_UNHASH", /* 0x5C in Daemon */ "PC_REHASH_GC_DAEMON", /* 0x5D in List */ "PC_LENGTH", /* 0x5E in List */ "PC_ASSQ", /* 0x5F in String */ "PC_BUILD_STRING_FROM_LIST", /* 0x60 in String */ "PC_EQUAL_STRING_TO_LIST", /* 0x61 in Prim */ "PC_MAKE_CELL", /* 0x62 in Prim */ "PC_CELL_CONTENTS", /* 0x63 in Prim */ "PC_CELL", /* 0x64 in String */ "PC_RAISE_CHAR", /* 0x65 in Fasload */ "PC_CHARACTER_LIST_HASH", /* 0x66 in Fixnum */ "PC_GCD_FIXNUM", /* 0x67 in Bignum */ "PC_FIX_TO_BIG", /* 0x68 in Bignum */ "PC_BIG_TO_FIX", /* 0x69 in Flonum */ "PC_PLUS_FLONUM", /* 0x6A in Flonum */ "PC_MINUS_FLONUM", /* 0x6B in Flonum */ "PC_MULTIPLY_FLONUM", /* 0x6C in Flonum */ "PC_DIVIDE_FLONUM", /* 0x6D in Flonum */ "PC_EQUAL_FLONUM", /* 0x6E in Flonum */ "PC_LESS_FLONUM", /* 0x6F in Bignum */ "PC_ZERO_BIGNUM", /* 0x70 in Flonum */ "PC_TRUNCATE_FLONUM", /* 0x71 in Flonum */ "PC_ROUND_FLONUM", /* 0x72 in Flonum */ "PC_INT_TO_FLOAT", /* 0x73 in Flonum */ "PC_SINE_FLONUM", /* 0x74 in Flonum */ "PC_COSINE_FLONUM", /* 0x75 in Flonum */ "PC_ARCTAN_FLONUM", /* 0x76 in Flonum */ "PC_EXP_FLONUM", /* 0x77 in Flonum */ "PC_LN_FLONUM", /* Primitive names continue on the next page */ \f /* Primitive names, continued */ /* 0x78 in Flonum */ "PC_SQRT_FLONUM", /* 0x79 in Nihil */ "PC_ASCII_FASLOAD", /* 0x7A in Hooks */ "PC_GET_FIXED_OBJECTS_VECTOR", /* 0x7B in Hooks */ "PC_SET_FIXED_OBJECTS_VECTOR", /* 0x7C in Vector */ "PC_LIST_TO_VECTOR", /* 0x7D in Vector */ "PC_SUBVECTOR_TO_LIST", /* 0x7E in List */ "PC_PAIR", /* 0x7F in Fixnum */ "PC_NEGATIVE_FIXNUM", /* 0x80 in Bignum */ "PC_NEGATIVE_BIGNUM", /* 0x81 in Fixnum */ "PC_GREATER_FIXNUM", /* 0x82 in Bignum */ "PC_GREATER_BIGNUM", /* 0x83 in String */ "PC_STRING_HASH", /* 0x84 in List */ "PC_SYS_PAIR_CONS", /* 0x85 in List */ "PC_SYS_PAIR", /* 0x86 in List */ "PC_SYS_PAIR_CAR", /* 0x87 in List */ "PC_SYS_PAIR_CDR", /* 0x88 in List */ "PC_SYS_SET_CAR", /* 0x89 in List */ "PC_SYS_SET_CDR", /* 0x8A in Daemon */ "PC_INITIALIZE_OBJECT_HASH", /* 0x8B in IO */ "PC_GET_CHAR_IMMEDIATE", /* 0x8C in Prim */ "PC_SET_CELL_CONTENTS", /* 0x8D in BitStr */ "PC_EQUAL_BIT_STRING", /* 0x8E in Hunk */ "PC_SYS_H3_0", /* 0x8F in Hunk */ "PC_SYS_H3_SET_0", /* 0x90 in Prim */ "PC_MAP_ADDRESS_TO_CODE", /* 0x91 in Hunk */ "PC_SYS_H3_1", /* 0x92 in Hunk */ "PC_SYS_H3_SET_1", /* 0x93 in Prim */ "PC_MAP_CODE_TO_ADDRESS", /* 0x94 in Hunk */ "PC_SYS_H3_2", /* 0x95 in Hunk */ "PC_SYS_H3_SET_2", /* 0x96 in Prim */ "PC_MAP_PRIM_ADDRESS_TO_ARITY", /* 0x97 in Vector */ "PC_SYS_LIST_TO_VECTOR", /* 0x98 in Vector */ "PC_SYS_SUBVECTOR_TO_LIST", /* 0x99 in Vector */ "PC_SYS_VECTOR", /* 0x9A in Vector */ "PC_SYS_VECTOR_REF", /* 0x9B in Vector */ "PC_SYS_VECTOR_SET", /* 0x9C in Hooks */ "PC_WITH_HISTORY_DISABLED", /* Primitive names continue on the next page */ \f /* Primitive names, continued */ /* 0x9D in BitStr */ "PC_VECTOR_1B_CONS", /* 0x9E in BitStr */ "PC_VECTOR_1B", /* 0x9F in BitStr */ "PC_VECTOR_1B_REF", /* 0xA0 in BitStr */ "PC_VECTOR_1B_SET", /* 0xA1 in BitStr */ "PC_VEC_1B_SET_FALSE", /* 0xA2 in BitStr */ "PC_VEC_1B_SET_TRUE", /* 0xA3 in String */ "PC_VECTOR_8B_CONS", /* 0xA4 in String */ "PC_VECTOR_8B", /* 0xA5 in String */ "PC_VECTOR_8B_REF", /* 0xA6 in String */ "PC_VECTOR_8B_SET", /* 0xA7 in Flonum */ "PC_ZERO_FLONUM", /* 0xA8 in Flonum */ "PC_POSITIVE_FLONUM", /* 0xA9 in Flonum */ "PC_NEGATIVE_FLONUM", /* 0xAA in Flonum */ "PC_GREATER_FLONUM", /* 0xAB in Fasload */ "PC_INTERN_CHARACTER_LIST", /* 0xAC in BitStr */ "PC_VECTOR_1B_SIZE", /* 0xAD in BitStr */ "PC_VECTOR_8B_SIZE", /* 0xAE in Vector */ "PC_SYS_VECTOR_SIZE", /* 0xAF in Hooks */ "PC_FORCE", /* 0xB0 in Prim */ "PC_PRIMITIVE_DATUM", /* 0xB1 in Prim */ "PC_MAKE_NON_POINTER", /* 0xB2 in Debug */ "PC_TEMP_PRINTER", /* 0xB3 in String */ "PC_RAISE_STRING", /* 0xB4 in GCloop */ "PC_PRIMITIVE_PURIFY", /* 0xB5 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xB6 in Nihil */ "PC_COMPLETE_GARBAGE_COLLECT", /* 0xB7 in Fasdump */ "PC_BAND_DUMP", /* 0xB8 in String */ "PC_SUBSTRING_SEARCH", /* 0xB9 in Fasdump */ "PC_BAND_LOAD", /* 0xBA in GCloop */ "PC_CONSTANT_P", /* 0xBB in GCloop */ "PC_PURE_P", /* 0xBC in GCloop */ "PC_GC_TYPE", /* 0xBD in GCloop */ "PC_IMPURIFY", /* 0xBE in Hooks */ "PC_WITH_THREADED_STACK", /* 0xBF in Hooks */ "PC_WITHIN_CONTROL_POINT", /* 0xC0 in Prim */ "PC_SET_RUN_LIGHT", /* 0xC1 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xC2 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xC3 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xC4 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xC5 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xC6 not here */ "PC_UNEXISTENT_PRIMITIVE", /* Primitive names continue on the next page */ \f /* Primitive names, continued */ /* 0xC7 in Daemon */ "PC_CLOSE_LOST_OPEN_FILES", /* 0xC8 in IO */ "PC_PUT_CHAR_TO_OUTPUT_CHANNEL", /* 0xC9 in Hooks */ "PC_MASK_INTERRUPT_ENABLES", /* 0xCA in Step */ "PC_EVAL_STEP", /* 0xCB in Step */ "PC_APPLY_STEP", /* 0xCC in Step */ "PC_RETURN_STEP", /* 0xCD not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xCE not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xCF not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xD0 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xD1 in BitStr */ "PC_MAKE_UNFILLED_BIT_STRING", /* 0xD2 in BitStr */ "PC_MAKE_FILLED_BIT_STRING", /* 0xD3 in BitStr */ "PC_BIT_STRING_QM", /* 0xD4 in BitStr */ "PC_BIT_STRING_SIZE", /* 0xD5 in BitStr */ "PC_BIT_STRING_REF", /* 0xD6 in BitStr */ "PC_BIT_STR_SET", /* 0xD7 in BitStr */ "PC_BIT_STR_SET_TRUE", /* 0xD8 in BitStr */ "PC_BIT_STR_SET_FALSE", /* 0xD9 in BitStr */ "PC_BIT_SUBSTRING", /* 0xDA in BitStr */ "PC_INST_BIT_STR", /* 0xDB in BitStr */ "PC_INST_BIT_STR_EXCL", /* 0xDC in BitStr */ "PC_INTEGER_TO_BIT_STRING", /* 0xDD in BitStr */ "PC_BIT_STRING_TO_INTEGER", /* 0xDE in BitStr */ "PC_REVERSE_BIT_STRING", /* 0xDF in BitStr */ "PC_READ_BITS", /* 0xE0 in BitStr */ "PC_WRITE_BITS", /* 0xE1 in Hooks */ "PC_MAKE_STATE_SPACE", /* 0xE2 in Hooks */ "PC_EXECUTE_AT_NEW_POINT", /* 0xE3 in Hooks */ "PC_TRANSLATE_TO_POINT", /* 0xE4 in GCloop */ "PC_GET_NEXT_CONSTANT", /* Primitive names continue on the next page */ \f /* Primitive names, continued */ /* 0xE5 in Boot */ "PC_MICROCODE_IDENTIFY", /* 0xE6 in Generic */ "PC_ZERO", /* 0xE7 in Generic */ "PC_POSITIVE", /* 0xE8 in Generic */ "PC_NEGATIVE", /* 0xE9 in Generic */ "PC_EQUAL_NUMBER", /* 0xEA in Generic */ "PC_LESS", /* 0xEB in Generic */ "PC_GREATER", /* 0xEC in Generic */ "PC_PLUS", /* 0xED in Generic */ "PC_MINUS", /* 0xEE in Generic */ "PC_MULTIPLY", /* 0xEF in Generic */ "PC_DIVIDE", /* 0xF0 in Generic */ "PC_INTEGER_DIVIDE", /* 0xF1 in Generic */ "PC_ONE_PLUS", /* 0xF2 in Generic */ "PC_M_ONE_PLUS", /* 0xF3 in Generic */ "PC_TRUNCATE", /* 0xF4 in Generic */ "PC_ROUND", /* 0xF5 in Generic */ "PC_FLOOR", /* 0xF6 in Generic */ "PC_CEILING", /* 0xF7 in Generic */ "PC_SQRT", /* 0xF8 in Generic */ "PC_EXP", /* 0xF9 in Generic */ "PC_LN", /* 0xFA in Generic */ "PC_SINE", /* 0xFB in Generic */ "PC_COSINE", /* 0xFC in Generic */ "PC_ARCTAN", /* 0xFD not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xFE not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0xFF not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x100 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x101 in Extern */ "PC_GET_EXTERNAL_COUNTS", /* 0x102 in Extern */ "PC_GET_EXT_NAME", /* 0x103 in Extern */ "PC_GET_EXT_NUMBER", /* 0x104 in File */ "PC_OPEN_CHANNEL", /* 0x105 in File */ "PC_CLOSE_PHYSICAL_CHANNEL", /* 0x106 in OS */ "PC_GET_NEXT_INTERRUPT_CHAR", /* 0x107 in OS */ "PC_CHK_AND_CLN_INPUT_CHANNEL", /* 0x108 in Prim */ "PC_INITIALIZE_MICROCODE_DEBUG", /* 0x109 in Prim */ "PC_SYSTEM_CLOCK", /* 0x10A in File */ "PC_FILE_EXISTS", /* 0x10B in OS */ "PC_DELETE_FILE", /* 0x10C in OS */ "PC_MOVE_CURSOR", /* 0x10D in File */ "PC_INTERNAL_PHOTO", /* 0x10E in Nihil */ "PC_CURRENT_DATE", /* 0x10F in Nihil */ "PC_CURRENT_TIME", /* 0x110 in Nihil */ "PC_TRANSLATE_FILE", /* 0x111 in File */ "PC_COPY_FILE", /* 0x112 in OS */ "PC_RENAME_FILE", /* 0x113 in OS */ "PC_REMOVE_FILE", /* 0x114 in OS */ "PC_LINK_FILE", /* 0x115 in OS */ "PC_MAKE_DIRECTORY", /* 0x116 in Nihil */ "PC_VOLUME_NAME", /* 0x117 in OS */ "PC_PREFIX_VOLUME", /* 0x118 in Nihil */ "PC_OPEN_CATALOG", /* 0x119 in Nihil */ "PC_CLOSE_CATALOG", /* 0x11A in Nihil */ "PC_NEXT_FILE", /* 0x11B in Nihil */ "PC_CAT_NAME", /* 0x11C in Nihil */ "PC_CAT_KIND", /* 0x11D in Nihil */ "PC_CAT_PSIZE", /* 0x11E in Nihil */ "PC_CAT_LSIZE", /* 0x11F in Nihil */ "PC_CAT_INFO", /* 0x120 in Nihil */ "PC_CAT_BLOCK", /* 0x121 in Nihil */ "PC_CAT_CREATE_DATE", /* 0x122 in Nihil */ "PC_CAT_CREATE_TIME", /* 0x123 in Nihil */ "PC_CAT_LAST_DATE", /* 0x124 in Nihil */ "PC_CAT_LAST_TIME", /* 0x125 in Nihil */ "PC_ERROR_MESSAGE", /* 0x126 in OS */ "PC_CURRENT_YEAR", /* 0x127 in OS */ "PC_CURRENT_MONTH", /* 0x128 in OS */ "PC_CURRENT_DAY", /* 0x129 in OS */ "PC_CURRENT_HOUR", /* 0x12A in OS */ "PC_CURRENT_MINUTE", /* 0x12B in OS */ "PC_CURRENT_SECOND", /* 0x12C in Nihil */ "PC_INIT_FLOPPY", /* 0x12D in Nihil */ "PC_ZERO_FLOPPY", /* 0x12E in Nihil */ "PC_PACK_VOLUME", /* 0x12F in Nihil */ "PC_LOAD_PICTURE", /* 0x130 in Nihil */ "PC_STORE_PICTURE", /* 0x131 in Nihil */ "PC_LOOKUP_SYSTEM_SYMBOL", /* Unix specialized primitives start here */ /* 0x132 not here */ "PC_UNEXISTENT_PRIMITIVE", /* 0x133 in Prim */ "PC_CLEAR_SCREEN", /* 0x134 in OS */ "PC_CLEAR_TO_END_OF_LINE", /* 0x135 in Prim */ "PC_NUMBER_OF_COLUMNS", /* 0x136 in Prim */ "PC_NUMBER_OF_LINES", /* 0x137 in HOOKS */ "PC_WITH_INTERRUPT_MASK" }; #if (MAX_PRIMITIVE_NUMBER != 0x137) /* Cause an error */ #include "Prims.h and storage.c are inconsistent -- Names Table" #endif /* After passing all above checks */ long MAX_PRIMITIVE = MAX_PRIMITIVE_NUMBER; \f #define NO_NAME ((char *) NULL) char *Return_Names[] = { /* 0x00 */ "RC_END_OF_COMPUTATION", /* 0x01 */ "RC_RESTORE_CONTROL_POINT", /* 0x02 */ "RC_RESTORE_CONTINUATION", /* 0x03 */ "RC_INTERNAL_APPLY", /* 0x04 */ "RC_BAD_INTERRUPT_CONTINUE", /* 0x05 */ "RC_RESTORE_HISTORY", /* 0x06 */ "RC_INVOKE_STACK_THREAD", /* 0x07 */ "RC_RESTART_EXECUTION", /* 0x08 */ "RC_EXECUTE_ASSIGNMENT_FINISH", /* 0x09 */ "RC_EXECUTE_DEFINITION_FINISH", /* 0x0A */ "RC_EXECUTE_ACCESS_FINISH", /* 0x0B */ "RC_EXECUTE_IN_PACKAGE_CONTINUE", /* 0x0C */ "RC_SEQ_2_DO_2", /* 0x0D */ "RC_SEQ_3_DO_2", /* 0x0E */ "RC_SEQ_3_DO_3", /* 0x0F */ "RC_CONDITIONAL_DECIDE", /* 0x10 */ "RC_DISJUNCTION_DECIDE", /* 0x11 */ "RC_COMB_1_PROCEDURE", /* 0x12 */ "RC_COMB_APPLY_FUNCTION", /* 0x13 */ "RC_COMB_2_FIRST_OPERAND", /* 0x14 */ "RC_COMB_2_PROCEDURE", /* 0x15 */ "RC_COMB_SAVE_VALUE", /* 0x16 */ "RC_PCOMB1_APPLY", /* 0x17 */ "RC_PCOMB2_DO_1", /* 0x18 */ "RC_PCOMB2_APPLY", /* 0x19 */ "RC_PCOMB3_DO_2", /* 0x1A */ "RC_PCOMB3_DO_1", /* 0x1B */ "RC_PCOMB3_APPLY", /* 0x1C */ "RC_SNAP_NEED_THUNK", /* 0x1D */ "RC_REENTER_COMPILED_CODE", /* 0x1E */ NO_NAME, /* 0x1F */ "RC_REDO_CMPLR_REFERENCE", /* 0x20 */ "RC_NORMAL_GC_DONE", /* 0x21 */ "RC_COMPLETE_GC_DONE", /* 0x22 */ "RC_PURIFY_GC_1", /* 0x23 */ "RC_PURIFY_GC_2", /* 0x24 */ "RC_AFTER_MEMORY_UPDATE", /* 0x25 */ "RC_RESTARTABLE_EXIT", /* 0x26 */ NO_NAME, /* 0x27 */ NO_NAME, \f /* 0x28 */ "RC_REDO_CMPLR_ASSIGNMENT", /* 0x29 */ "RC_POP_TO_COMPILED_CODE", /* 0x2A */ "RC_RETURN_TRAP_POINT", /* 0x2B */ "RC_RESTORE_STEPPER", /* 0x2C */ "RC_RESTORE_TO_STATE_POINT", /* 0x2D */ "RC_MOVE_TO_ADJACENT_POINT", /* 0x2E */ "RC_RESTORE_VALUE", /* 0x2F */ "RC_RESTORE_DONT_COPY_HISTORY", /* 0x30 */ NO_NAME, /* 0x31 */ NO_NAME, /* 0x32 */ NO_NAME, /* 0x33 */ NO_NAME, /* 0x34 */ NO_NAME, /* 0x35 */ NO_NAME, /* 0x36 */ NO_NAME, /* 0x37 */ NO_NAME, /* 0x38 */ NO_NAME, /* 0x39 */ NO_NAME, /* 0x3A */ NO_NAME, /* 0x3B */ NO_NAME, /* 0x3C */ NO_NAME, /* 0x3D */ NO_NAME, /* 0x3E */ NO_NAME, /* 0x3F */ NO_NAME, /* 0x40 */ "RC_POP_RETURN_ERROR", /* 0x41 */ "RC_EVAL_ERROR", /* 0x42 */ "RC_REPEAT_PRIMITIVE", /* 0x43 */ "RC_COMPILER_ENTRY_GC", /* 0x44 */ "RC_COMPILER_RECURSION_GC", /* 0x45 */ "RC_RESTORE_INT_MASK", /* 0x46 */ "RC_HALT", /* 0x47 */ "RC_FINISH_GLOBAL_INT" }; #if (MAX_RETURN_CODE != 0x47) /* Cause an error */ #include "Returns.h and storage.c are inconsistent -- Names Table" #endif long MAX_RETURN = MAX_RETURN_CODE;