Compilation listing of file >udd>sm>ds>w>ml>bcpl_cae1.bcpl. Compilation performed for Schroth.SysMaint.m at 04/17/00 1920.5 mdt Mon. Compiled by BCPL version 3.5, March 1982. Compiler updated at 04/22/82 1732.8 mdt Thu. Options applied: source xref alist optimize 6180. 1 // Rexp -- read an expression. 2 // Last modified on 06/06/74 at 18:03:27 by R F Mabee. 3 // Prepared for installation as part of Version 3.4, R F Mabee. 4 // First installed as Version 2.7 by R F Mabee. 5 6 // Copyright (c) 1974 by Massachusetts Institute of Technology and Honeywell Information Systems, Inc. 7 8 // General permission is granted to copy and use this program, but not to sell it, provided that the above 9 // copyright statement is given. Contact Information Processing Services, MIT, for further information. 10 // Please contact R F Mabee at MIT for information on this program and versions for other machines. 11 12 get "bcpl_cae_head" 1 // Declarations for the syntax analyzer (Cae). 2 // Last modified on 04/02/74 at 16:01:17 by R F Mabee. 3 // Installed after 6180 bootstrap in Version 3.4 by R F Mabee. 4 // First installed in Version 2.7, R F Mabee. 5 6 get "bcpl_compiler_head" 1 // Declarations common to the entire BCPL compiler. 2 // Last modified on 04/02/74 at 16:01:46 by R F Mabee. 3 // Installed on 6180 as Version 3.4, R F Mabee. 4 // First installed on 645 as Version 2.7 by R F Mabee. 5 6 external 7 $( Readch = "bcpl_machine_code_$Readch" // Library routines used by the compiler. 8 Writech = "bcpl_machine_code_$Writech" 9 WriteS = "bcpl_stream_io_$WriteS" 10 WriteN = "bcpl_stream_io_$WriteN" 11 Format = "bcpl_stream_io_$Format" 12 Packstring = "bcpl_machine_code_$Packstring" 13 Unpackstring = "bcpl_machine_code_$Unpackstring" 14 RemoveEscapes = "bcpl_conversions_$RemoveEscapes" 15 EqualString = "bcpl_strings_$EqualString" 16 CompareStrings = "bcpl_strings_$CompareStrings" // Alphabetic comparison. 17 Concatenate = "bcpl_strings_$Concatenate" 18 ConvertStoN = "bcpl_conversions_$ConvertStoN" 19 ConvertNtoS = "bcpl_conversions_$ConvertNtoS" 20 Length = "bcpl_strings_$Length" // Number of characters. 21 LengthInWords = "bcpl_strings_$LengthInWords" // Length of packed string. 22 RandomI = "bcpl_arithmetic_$RandomI" 23 24 Newvec = "bcpl_utility$Newvec" // Utility routines used throughout the compiler. 25 Freevec = "bcpl_utility$Freevec" 26 List1 = "bcpl_utility$List1" 27 List2 = "bcpl_utility$List2" 28 List3 = "bcpl_utility$List3" 29 List4 = "bcpl_utility$List4" 30 List5 = "bcpl_utility$List5" 31 List6 = "bcpl_utility$List6" 32 StoreString = "bcpl_utility$StoreString" 33 PushInput = "bcpl_utility$PushInput" 34 PopInput = "bcpl_utility$PopInput" 35 MakeTimeString = "bcpl_utility$MakeTimeString" 36 Nextparam = "bcpl_utility$Nextparam" 37 FormCharconst = "bcpl_utility$FormCharconst" 38 FormStringconst = "bcpl_utility$FormStringconst" 39 40 CaeReport = "bcpl_report$CaeReport" 41 Transreport = "bcpl_report$Transreport" 42 CGreport = "bcpl_report$CGreport" 43 44 Nextsymb = "bcpl_lex0$Nextsymb" 45 46 SymbolName = "bcpl_plist$SymbolName" 47 FindPrintName = "bcpl_plist$FindPrintName" 48 EnterIntoCrossreference = "bcpl_plist$EnterIntoCrossreference" 49 50 GetVersion = "bcpl_version$GetVersion" // Routines used only by the driver. 51 UtilitiesInit = "bcpl_utility$UtilitiesInit" 52 Cleanup = "bcpl_utility$Cleanup" 53 GetStream = "bcpl_utility$GetStream" 54 55 CAE = "bcpl_cae0$CAE" 56 LexInit = "bcpl_lex0$LexInit" 57 58 Pname = "bcpl_plist$Pname" 59 Plist = "bcpl_plist$Plist" 60 61 Trans = "bcpl_trans0$Trans" 62 CgInit = "bcpl_cg0$CgInit" 63 BuildObject = "bcpl_cg0$BuildObject" 64 WriteObjectListing = "bcpl_cg0$WriteObjectListing" 65 $) 66 67 global // Globals are reserved in blocks as follows: 68 $( // 0 - 31 system 69 // 32 - 99 library 70 // 100 - 149 options and other common cells 71 // 150 - 159 metering cells 72 // 160 - 169 bcpl_utility 73 // 170 - 199 to be assigned 74 // 200 - 229 lexical phase 75 // 230 - 249 syntax analyzer 76 // 250 - 299 translator 77 // 300 - 399 code generator 78 79 // Cells used for communication with the library. 80 OUTPUT : 32 81 INPUT : 33 82 MONITOR : 34 83 Ch : 36 84 85 // Options for this compilation. 86 Listing : 100 87 UpperCase : 101 88 PPrep : 102 89 Crep : 103 90 Symbols : 104 91 LineMap : 105 92 Optimize : 106 93 Machine : 107 94 Xref : 108 95 OcodeSw : 109 96 HaveListingFile : 110 97 QuietSw : 111 98 99 // Other information about this compilation. 100 CompilerVersionString : 120 101 CompilerVersionNumber : 121 102 CompilerDTMString : 122 103 CompilerDTM : 123 104 TimeNowString : 124 105 TimeNow : 125 106 OptionString : 126 107 FileNames : 127 108 FilesInfo : 128 109 FileCount : 129 110 ProgramName : 130 111 UserID : 131 112 113 // Working variables needing global scope. 114 LineCount : 140 115 Errorsw : 141 116 NAMECHAIN : 142 117 Symb : 143 118 DictionaryEntry : 144 119 Column : 145 120 $) 121 manifest 122 $( GlobalTemp = 199 $) // Number of cell available for local, temporary use. 123 124 manifest 125 $( Left = 18; Right = $8777777 126 Endofstreamch = $87777 127 Even = $87777777777776 128 Vmax = 511 129 LineMask = $817777; FileShift = 13 // Breakdown of line count. 130 UnexpectedCase = 99 // Error code for use throughout compiler. 131 $) 7 get "bcpl_symbols" 1 // All symbols used in the interface between any two phases of the compiler are defined here. 2 // This includes all canonical symbols, syntax tree nodes, and XOCODE operators. 3 // Last modified on 04/02/74 at 16:02:26 by R F Mabee. 4 // Revisions installed in Version 3.4 on 6180, R F Mabee. 5 // First installed with Version 2.7 by R F Mabee. 6 7 manifest 8 $( AND_S = 1 9 ASSIGN_S = 2 10 BE_S = 3 11 BIT_S = 4 12 BREAK_S = 5 13 BY_S = 6 14 CALL_S = 07 15 CASE_S = 08 16 17 CHAR_S = 10 18 CHARCONST_S = 11 19 COLON_S = 12 20 COMMA_S = 13 21 COND_S = 14 22 CONSTANT_S = 15 23 CONSTDEF_S = 16 24 DEFAULT_S = 17 25 DIV_F = 18 26 27 DIV_S = 20 28 DO_S = 21 29 DOUBLE_S = 22 30 ENDCASE_S = 23 31 ENDPROG_S = 24 32 ERROR_S = 25 33 EQ_F = 26 34 EQ_S = 27 35 EQV_S = 28 36 37 EXTERNAL_S = 30 38 FALSE_S = 31 39 FINISH_S = 32 40 FIXED_S = 33 41 FLOAT_S = 34 42 FNAP_S = 35 43 FNDEF_S = 36 44 FOR_S = 37 45 GE_F = 38 46 47 GE_S = 40 48 GET_S = 41 49 GLOBAL_S = 42 50 GOTO_S = 43 51 GR_F = 44 52 GR_S = 45 53 IF_S = 46 54 IFNOT_S = 47 55 IFSO_S = 48 56 57 INTO_S = 50 58 LABDEF_S = 51 59 LABEL_S = 52 60 LE_F = 53 61 LE_S = 54 62 LENGTH_S = 55 63 LET_S = 56 64 LIST_S = 57 65 LOCAL_S = 58 66 67 LOGAND_S = 60 68 LOGOR_S = 61 69 LOOP_S = 62 70 LS_F = 63 71 LS_S = 64 72 LSHIFT_S = 65 73 LV_S = 66 74 LVECAP_S = 67 75 LV_ARG_OUT = 68 76 77 LV_FNAP_RESULT = 70 78 LV_GLOBAL = 71 79 LV_LOCAL = 72 80 LV_STATIC = 73 81 LV_TEMP = 74 82 MAIN_S = 75 83 MANIFEST_S = 76 84 MINUS_F = 77 85 MINUS_S = 78 86 87 MULT_F = 80 88 MULT_S = 81 89 NAME_S = 82 90 NEG_F = 83 91 NEG_S = 84 92 NEQV_S = 85 93 NE_F = 86 94 NE_S = 87 95 NIL_S = 88 96 97 NOT_S = 90 98 NUMBER_S = 91 99 OFFSET_S = 92 100 OR_S = 93 101 PLUS_F = 94 102 PLUS_S = 95 103 POINTER_S = 96 104 POS_F = 97 105 POS_S = 98 106 107 RBRA_S = 100 108 REGISTER_S = 101 109 REL_S = 102 110 REM_S = 103 111 REP_S = 104 112 REPEAT_S = 105 113 REPEATUNTIL_S = 106 114 REPEATWHILE_S = 107 115 RESULTIS_S = 108 116 117 RETURN_S = 110 118 RKET_S = 111 119 RSHIFT_S = 112 120 RTAP_S = 113 121 RTDEF_S = 114 122 RV_S = 115 123 SBRA_S = 116 124 SECTBEGIN_S = 117 125 SECTBRA_S = 118 126 127 SECTEND_S = 120 128 SECTKET_S = 121 129 SEMICOLON_S = 122 130 SKET_S = 123 131 STATIC_S = 124 132 STRING_S = 125 133 STRINGCONST_S = 126 134 STRUCTURE_S = 127 135 SWITCHON_S = 128 136 137 TABLE_S = 130 138 TEMP_S = 131 139 TEST_S = 132 140 TO_S = 133 141 TRUE_S = 134 142 TYPE_S = 135 143 UNLESS_S = 136 144 UNTIL_S = 137 145 VALDEF_S = 138 146 147 VALOF_S = 140 148 VEC_S = 141 149 VECAP_S = 142 150 WHILE_S = 143 151 $) 8 get "bcpl_cae_codes" 1 // Report codes for the syntax analyzer. 2 // Last modified on 04/02/74 at 16:01:05 by R F Mabee. 3 // Installed on 6180 as Version 3.4, R F Mabee. 4 // First installed as Version 2.7, R F Mabee. 5 6 manifest // 150 - 199 are reserved for Cae. 7 $( BlockExpected = 150 8 ExpressionMissing = 151 9 IncompleteCommand = 152 10 MalformedDeclaration= 153 11 MalformedTest = 154 12 MisplacedDeclaration= 155 13 MissingCOLON = 156 14 MissingCOMMA = 157 15 MissingDO = 158 16 17 MissingINTO = 160 18 MissingRKET = 161 19 MissingSECTKET = 162 20 MissingSKET = 163 21 MissingTO = 164 22 NameExpected = 165 23 PrematureTermination= 166 24 UnrecognizedCommand = 167 25 ValdefExpected = 168 26 $) 9 10 external // Routines of Cae, not referenced outside this phase. 11 $( Rblock = "bcpl_cae0$Rblock" 12 Rdef = "bcpl_cae0$Rdef" 13 Rdeclbody = "bcpl_cae0$Rdeclbody" 14 Rname = "bcpl_cae0$Rname" 15 Rnamelist = "bcpl_cae0$Rnamelist" 16 ReadList = "bcpl_cae0$ReadList" 17 18 Rexp = "bcpl_cae1$Rexp" 19 Rcom = "bcpl_cae2$Rcom" 20 $) 21 global // 230 - 249 are reserved for Cae. 22 $( LabelList : 230 23 ErrorNode : 231 24 $) 13 14 let Rexp (n) = valof // n is minimum precedence to be read. It is zero except on recursive calls. 15 $( let A, B, C = nil, nil, nil 16 let Op = Symb logor LineCount lshift Left 17 A := valof switchon Symb into 18 $( default: CaeReport (ExpressionMissing) 19 resultis ErrorNode 20 21 case NAME_S: 22 case NUMBER_S: 23 case CHARCONST_S: 24 case STRINGCONST_S: 25 B := DictionaryEntry 26 Nextsymb () 27 resultis B 28 29 case NIL_S: 30 case TRUE_S: 31 case FALSE_S: 32 Nextsymb () 33 resultis List1 (Op) 34 35 case PLUS_F: 36 Op := POS_F 37 goto Arith 38 case PLUS_S: 39 Op := POS_S 40 goto Arith 41 case MINUS_F: 42 Op := NEG_F 43 goto Arith 44 case MINUS_S: 45 Op := NEG_S 46 Arith: Op := Op logor LineCount lshift Left 47 B := 32 48 goto Unary 49 case NOT_S: 50 B := 22 51 goto Unary 52 case LV_S: 53 case RV_S: 54 B := 40 55 Unary: Nextsymb () 56 B := Rexp (B) 57 resultis List2 (Op, B) 58 59 case VEC_S: 60 Nextsymb () 61 B := Rexp (0) 62 resultis List2 (Op, B) 63 64 case LIST_S: 65 case TABLE_S: 66 Nextsymb () 67 B := ReadList (true) 68 resultis List2 (Op, B) 69 70 case VALOF_S: 71 Nextsymb () 72 B := Rcom (8) 73 resultis List2 (Op, B) 74 75 case RBRA_S: 76 Nextsymb () 77 B := Rexp (0) 78 test Symb = RKET_S 79 then Nextsymb () 80 or CaeReport (MissingRKET) 81 resultis B 82 $) 83 84 MORE: 85 Op := Symb logor LineCount lshift Left 86 B := valof switchon Symb into 87 $( default: goto EXIT 88 89 case RBRA_S: 90 Op := FNAP_S logor LineCount lshift Left 91 Nextsymb () 92 B := Symb = RKET_S -> 0, ReadList (true) 93 test Symb = RKET_S 94 then Nextsymb () 95 or CaeReport (MissingRKET) 96 A := List3 (Op, A, B) 97 goto MORE 98 99 case VECAP_S: 100 resultis 44 101 102 case SBRA_S: 103 if n ge 44 goto EXIT 104 Op := VECAP_S logor LineCount lshift Left 105 Nextsymb () 106 B := Rexp (0) 107 test Symb = SKET_S 108 then Nextsymb () 109 or CaeReport (MissingSKET) 110 A := List3 (Op, A, B) 111 goto MORE 112 113 case MULT_S: 114 case MULT_F: 115 case DIV_S: 116 case DIV_F: 117 case REM_S: 118 resultis 36 119 120 case PLUS_S: 121 case PLUS_F: 122 case MINUS_S: 123 case MINUS_F: 124 resultis 32 125 126 case VALDEF_S: 127 Op := EQ_S logor LineCount lshift Left 128 case EQ_S: 129 case EQ_F: 130 case NE_S: 131 case NE_F: 132 case LS_S: 133 case LS_F: 134 case LE_S: 135 case LE_F: 136 case GR_S: 137 case GR_F: 138 case GE_S: 139 case GE_F: 140 if n > 28 goto EXIT 141 Nextsymb () 142 B := Rexp (28) 143 A := List3 (Op, A, B) 144 unless n = 28 do A := List2 (REL_S logor LineCount lshift Left, A) 145 goto MORE 146 147 case LSHIFT_S: 148 case RSHIFT_S: 149 resultis 24 150 151 case LOGAND_S: 152 resultis 20 153 154 case LOGOR_S: 155 resultis 16 156 157 case EQV_S: 158 resultis 14 159 160 case NEQV_S: 161 resultis 12 162 163 case COND_S: 164 if n > 8 goto EXIT 165 Nextsymb () 166 B := Rexp (8) 167 test Symb = COMMA_S 168 then Nextsymb () 169 or CaeReport (MissingCOMMA) 170 C := Rexp (8) 171 A := List4 (Op, A, B, C) 172 goto MORE 173 174 case CHAR_S: 175 case BIT_S: 176 case TYPE_S: 177 case OFFSET_S: 178 case LENGTH_S: 179 resultis 6 180 181 case FIXED_S: 182 case FLOAT_S: 183 case DOUBLE_S: 184 case POINTER_S: 185 case STRING_S: 186 if n ge 6 goto EXIT 187 A := List2 (Op, A) 188 Nextsymb () 189 goto MORE 190 $) 191 if n ge B goto EXIT 192 Nextsymb () 193 B := Rexp (B) 194 A := List3 (Op, A, B) 195 goto MORE 196 197 EXIT: 198 resultis A 199 $) CAE time 2.3, 224 source lines per second. cross reference table A bcpl_cae1: 15, 17, 96, 96, 110, 110, 143, 143, 144, 144, 171, 171, 187, 187, 194, 194, 198 AND_S bcpl_symbols: 8 Arith bcpl_cae1: 37, 40, 43, 46 ASSIGN_S bcpl_symbols: 9 B bcpl_cae1: 15, 25, 27, 47, 50, 54, 56, 56, 57, 61, 62, 67, 68, 72, 73, 77, 81, 86, 92, 96, 106, 110, 142, 143, 166, 171, 191, 193, 193, 194 BE_S bcpl_symbols: 10 BIT_S bcpl_symbols: 11, bcpl_cae1: 175 BlockExpected bcpl_cae_codes: 7 BREAK_S bcpl_symbols: 12 BuildObject bcpl_compiler_head: 63 BY_S bcpl_symbols: 13 C bcpl_cae1: 15, 170, 171 CAE bcpl_compiler_head: 55 CaeReport bcpl_compiler_head: 40, bcpl_cae1: 18, 80, 95, 109, 169 CALL_S bcpl_symbols: 14 CASE_S bcpl_symbols: 15 CgInit bcpl_compiler_head: 62 CGreport bcpl_compiler_head: 42 Ch bcpl_compiler_head: 83 CHARCONST_S bcpl_symbols: 18, bcpl_cae1: 23 CHAR_S bcpl_symbols: 17, bcpl_cae1: 174 Cleanup bcpl_compiler_head: 52 COLON_S bcpl_symbols: 19 Column bcpl_compiler_head: 119 COMMA_S bcpl_symbols: 20, bcpl_cae1: 167 CompareStrings bcpl_compiler_head: 16 CompilerDTM bcpl_compiler_head: 103 CompilerDTMString bcpl_compiler_head: 102 CompilerVersionNumber bcpl_compiler_head: 101 CompilerVersionString bcpl_compiler_head: 100 Concatenate bcpl_compiler_head: 17 COND_S bcpl_symbols: 21, bcpl_cae1: 163 CONSTANT_S bcpl_symbols: 22 CONSTDEF_S bcpl_symbols: 23 ConvertNtoS bcpl_compiler_head: 19 ConvertStoN bcpl_compiler_head: 18 Crep bcpl_compiler_head: 89 DEFAULT_S bcpl_symbols: 24 DictionaryEntry bcpl_compiler_head: 118, bcpl_cae1: 25 DIV_F bcpl_symbols: 25, bcpl_cae1: 116 DIV_S bcpl_symbols: 27, bcpl_cae1: 115 DOUBLE_S bcpl_symbols: 29, bcpl_cae1: 183 DO_S bcpl_symbols: 28 ENDCASE_S bcpl_symbols: 30 Endofstreamch bcpl_compiler_head: 126 ENDPROG_S bcpl_symbols: 31 EnterIntoCrossreference bcpl_compiler_head: 48 EqualString bcpl_compiler_head: 15 EQV_S bcpl_symbols: 35, bcpl_cae1: 157 EQ_F bcpl_symbols: 33, bcpl_cae1: 129 EQ_S bcpl_symbols: 34, bcpl_cae1: 127, 128 ErrorNode bcpl_cae_head: 23, bcpl_cae1: 19 Errorsw bcpl_compiler_head: 115 ERROR_S bcpl_symbols: 32 Even bcpl_compiler_head: 127 EXIT bcpl_cae1: 87, 103, 140, 164, 186, 191, 197 ExpressionMissing bcpl_cae_codes: 8, bcpl_cae1: 18 EXTERNAL_S bcpl_symbols: 37 FALSE_S bcpl_symbols: 38, bcpl_cae1: 31 FileCount bcpl_compiler_head: 109 FileNames bcpl_compiler_head: 107 FileShift bcpl_compiler_head: 129 FilesInfo bcpl_compiler_head: 108 FindPrintName bcpl_compiler_head: 47 FINISH_S bcpl_symbols: 39 FIXED_S bcpl_symbols: 40, bcpl_cae1: 181 FLOAT_S bcpl_symbols: 41, bcpl_cae1: 182 FNAP_S bcpl_symbols: 42, bcpl_cae1: 90 FNDEF_S bcpl_symbols: 43 Format bcpl_compiler_head: 11 FormCharconst bcpl_compiler_head: 37 FormStringconst bcpl_compiler_head: 38 FOR_S bcpl_symbols: 44 Freevec bcpl_compiler_head: 25 GetStream bcpl_compiler_head: 53 GetVersion bcpl_compiler_head: 50 GET_S bcpl_symbols: 48 GE_F bcpl_symbols: 45, bcpl_cae1: 139 GE_S bcpl_symbols: 47, bcpl_cae1: 138 GlobalTemp bcpl_compiler_head: 122 GLOBAL_S bcpl_symbols: 49 GOTO_S bcpl_symbols: 50 GR_F bcpl_symbols: 51, bcpl_cae1: 137 GR_S bcpl_symbols: 52, bcpl_cae1: 136 HaveListingFile bcpl_compiler_head: 96 IFNOT_S bcpl_symbols: 54 IFSO_S bcpl_symbols: 55 IF_S bcpl_symbols: 53 IncompleteCommand bcpl_cae_codes: 9 INPUT bcpl_compiler_head: 81 INTO_S bcpl_symbols: 57 LABDEF_S bcpl_symbols: 58 LabelList bcpl_cae_head: 22 LABEL_S bcpl_symbols: 59 Left bcpl_compiler_head: 125, bcpl_cae1: 16, 46, 85, 90, 104, 127, 144 Length bcpl_compiler_head: 20 LengthInWords bcpl_compiler_head: 21 LENGTH_S bcpl_symbols: 62, bcpl_cae1: 178 LET_S bcpl_symbols: 63 LexInit bcpl_compiler_head: 56 LE_F bcpl_symbols: 60, bcpl_cae1: 135 LE_S bcpl_symbols: 61, bcpl_cae1: 134 LineCount bcpl_compiler_head: 114, bcpl_cae1: 16, 46, 85, 90, 104, 127, 144 LineMap bcpl_compiler_head: 91 LineMask bcpl_compiler_head: 129 List1 bcpl_compiler_head: 26, bcpl_cae1: 33 List2 bcpl_compiler_head: 27, bcpl_cae1: 57, 62, 68, 73, 144, 187 List3 bcpl_compiler_head: 28, bcpl_cae1: 96, 110, 143, 194 List4 bcpl_compiler_head: 29, bcpl_cae1: 171 List5 bcpl_compiler_head: 30 List6 bcpl_compiler_head: 31 Listing bcpl_compiler_head: 86 LIST_S bcpl_symbols: 64, bcpl_cae1: 64 LOCAL_S bcpl_symbols: 65 LOGAND_S bcpl_symbols: 67, bcpl_cae1: 151 LOGOR_S bcpl_symbols: 68, bcpl_cae1: 154 LOOP_S bcpl_symbols: 69 LSHIFT_S bcpl_symbols: 72, bcpl_cae1: 147 LS_F bcpl_symbols: 70, bcpl_cae1: 133 LS_S bcpl_symbols: 71, bcpl_cae1: 132 LVECAP_S bcpl_symbols: 74 LV_ARG_OUT bcpl_symbols: 75 LV_FNAP_RESULT bcpl_symbols: 77 LV_GLOBAL bcpl_symbols: 78 LV_LOCAL bcpl_symbols: 79 LV_S bcpl_symbols: 73, bcpl_cae1: 52 LV_STATIC bcpl_symbols: 80 LV_TEMP bcpl_symbols: 81 Machine bcpl_compiler_head: 93 MAIN_S bcpl_symbols: 82 MakeTimeString bcpl_compiler_head: 35 MalformedDeclaration bcpl_cae_codes: 10 MalformedTest bcpl_cae_codes: 11 MANIFEST_S bcpl_symbols: 83 MINUS_F bcpl_symbols: 84, bcpl_cae1: 41, 123 MINUS_S bcpl_symbols: 85, bcpl_cae1: 44, 122 MisplacedDeclaration bcpl_cae_codes: 12 MissingCOLON bcpl_cae_codes: 13 MissingCOMMA bcpl_cae_codes: 14, bcpl_cae1: 169 MissingDO bcpl_cae_codes: 15 MissingINTO bcpl_cae_codes: 17 MissingRKET bcpl_cae_codes: 18, bcpl_cae1: 80, 95 MissingSECTKET bcpl_cae_codes: 19 MissingSKET bcpl_cae_codes: 20, bcpl_cae1: 109 MissingTO bcpl_cae_codes: 21 MONITOR bcpl_compiler_head: 82 MORE bcpl_cae1: 84, 97, 111, 145, 172, 189, 195 MULT_F bcpl_symbols: 87, bcpl_cae1: 114 MULT_S bcpl_symbols: 88, bcpl_cae1: 113 n bcpl_cae1: 14, 103, 140, 144, 164, 186, 191 NAMECHAIN bcpl_compiler_head: 116 NameExpected bcpl_cae_codes: 22 NAME_S bcpl_symbols: 89, bcpl_cae1: 21 NEG_F bcpl_symbols: 90, bcpl_cae1: 42 NEG_S bcpl_symbols: 91, bcpl_cae1: 45 NEQV_S bcpl_symbols: 92, bcpl_cae1: 160 Newvec bcpl_compiler_head: 24 Nextparam bcpl_compiler_head: 36 Nextsymb bcpl_compiler_head: 44, bcpl_cae1: 26, 32, 55, 60, 66, 71, 76, 79, 91, 94, 105, 108, 141, 165, 168, 188, 192 NE_F bcpl_symbols: 93, bcpl_cae1: 131 NE_S bcpl_symbols: 94, bcpl_cae1: 130 NIL_S bcpl_symbols: 95, bcpl_cae1: 29 NOT_S bcpl_symbols: 97, bcpl_cae1: 49 NUMBER_S bcpl_symbols: 98, bcpl_cae1: 22 OcodeSw bcpl_compiler_head: 95 OFFSET_S bcpl_symbols: 99, bcpl_cae1: 177 Op bcpl_cae1: 16, 33, 36, 39, 42, 45, 46, 46, 57, 62, 68, 73, 85, 90, 96, 104, 110, 127, 143, 171, 187, 194 Optimize bcpl_compiler_head: 92 OptionString bcpl_compiler_head: 106 OR_S bcpl_symbols: 100 OUTPUT bcpl_compiler_head: 80 Packstring bcpl_compiler_head: 12 Plist bcpl_compiler_head: 59 PLUS_F bcpl_symbols: 101, bcpl_cae1: 35, 121 PLUS_S bcpl_symbols: 102, bcpl_cae1: 38, 120 Pname bcpl_compiler_head: 58 POINTER_S bcpl_symbols: 103, bcpl_cae1: 184 PopInput bcpl_compiler_head: 34 POS_F bcpl_symbols: 104, bcpl_cae1: 36 POS_S bcpl_symbols: 105, bcpl_cae1: 39 PPrep bcpl_compiler_head: 88 PrematureTermination bcpl_cae_codes: 23 ProgramName bcpl_compiler_head: 110 PushInput bcpl_compiler_head: 33 QuietSw bcpl_compiler_head: 97 RandomI bcpl_compiler_head: 22 Rblock bcpl_cae_head: 11 RBRA_S bcpl_symbols: 107, bcpl_cae1: 75, 89 Rcom bcpl_cae_head: 19, bcpl_cae1: 72 Rdeclbody bcpl_cae_head: 13 Rdef bcpl_cae_head: 12 Readch bcpl_compiler_head: 7 ReadList bcpl_cae_head: 16, bcpl_cae1: 67, 92 REGISTER_S bcpl_symbols: 108 REL_S bcpl_symbols: 109, bcpl_cae1: 144 RemoveEscapes bcpl_compiler_head: 14 REM_S bcpl_symbols: 110, bcpl_cae1: 117 REPEATUNTIL_S bcpl_symbols: 113 REPEATWHILE_S bcpl_symbols: 114 REPEAT_S bcpl_symbols: 112 REP_S bcpl_symbols: 111 RESULTIS_S bcpl_symbols: 115 RETURN_S bcpl_symbols: 117 Rexp bcpl_cae_head: 18, bcpl_cae1: 14, 56, 61, 77, 106, 142, 166, 170, 193 Right bcpl_compiler_head: 125 RKET_S bcpl_symbols: 118, bcpl_cae1: 78, 92, 93 Rname bcpl_cae_head: 14 Rnamelist bcpl_cae_head: 15 RSHIFT_S bcpl_symbols: 119, bcpl_cae1: 148 RTAP_S bcpl_symbols: 120 RTDEF_S bcpl_symbols: 121 RV_S bcpl_symbols: 122, bcpl_cae1: 53 SBRA_S bcpl_symbols: 123, bcpl_cae1: 102 SECTBEGIN_S bcpl_symbols: 124 SECTBRA_S bcpl_symbols: 125 SECTEND_S bcpl_symbols: 127 SECTKET_S bcpl_symbols: 128 SEMICOLON_S bcpl_symbols: 129 SKET_S bcpl_symbols: 130, bcpl_cae1: 107 STATIC_S bcpl_symbols: 131 StoreString bcpl_compiler_head: 32 STRINGCONST_S bcpl_symbols: 133, bcpl_cae1: 24 STRING_S bcpl_symbols: 132, bcpl_cae1: 185 STRUCTURE_S bcpl_symbols: 134 SWITCHON_S bcpl_symbols: 135 Symb bcpl_compiler_head: 117, bcpl_cae1: 16, 17, 78, 85, 86, 92, 93, 107, 167 SymbolName bcpl_compiler_head: 46 Symbols bcpl_compiler_head: 90 TABLE_S bcpl_symbols: 137, bcpl_cae1: 65 TEMP_S bcpl_symbols: 138 TEST_S bcpl_symbols: 139 TimeNow bcpl_compiler_head: 105 TimeNowString bcpl_compiler_head: 104 TO_S bcpl_symbols: 140 Trans bcpl_compiler_head: 61 Transreport bcpl_compiler_head: 41 TRUE_S bcpl_symbols: 141, bcpl_cae1: 30 TYPE_S bcpl_symbols: 142, bcpl_cae1: 176 Unary bcpl_cae1: 48, 51, 55 UnexpectedCase bcpl_compiler_head: 130 UNLESS_S bcpl_symbols: 143 Unpackstring bcpl_compiler_head: 13 UnrecognizedCommand bcpl_cae_codes: 24 UNTIL_S bcpl_symbols: 144 UpperCase bcpl_compiler_head: 87 UserID bcpl_compiler_head: 111 UtilitiesInit bcpl_compiler_head: 51 ValdefExpected bcpl_cae_codes: 25 VALDEF_S bcpl_symbols: 145, bcpl_cae1: 126 VALOF_S bcpl_symbols: 147, bcpl_cae1: 70 VECAP_S bcpl_symbols: 149, bcpl_cae1: 99, 104 VEC_S bcpl_symbols: 148, bcpl_cae1: 59 Vmax bcpl_compiler_head: 128 WHILE_S bcpl_symbols: 150 Writech bcpl_compiler_head: 8 WriteN bcpl_compiler_head: 10 WriteObjectListing bcpl_compiler_head: 64 WriteS bcpl_compiler_head: 9 Xref bcpl_compiler_head: 94 Trans time 0.7, 1008 object words per second. " Begin text of Rexp aa 000000 000004 122145 zero 4,42085 " Rexp aa 000001 170160 000000 zero 61552 L1: aa 000002 000000 213000 14 epaq 0 " set lp to linkage section aa 000003 700026 764161 lprplp sb|22,*au aa 000004 200000 021100 adlx1 bp|0 " BCPL save aa 000005 700000 542111 sprpbp sb|0,x1 aa 000006 700001 544111 sprplp sb|1,x1 aa 000007 700425 620111 eax0 sb|277,x1 aa 000010 777760 360003 anx0 -16,du aa 000011 700025 740100 stx0 sb|21 aa 000012 600023 740100 stx0 sp|19 " end of save sequence aa 000013 600214 236100 16 ldq sp|140 " LineCount aa 000014 000022 736000 qls 18 aa 000015 600217 276100 orq sp|143 " Symb aa 000016 700007 756111 stq sb|7,x1 " Op aa 000017 000163 710004 18 tra L11 L12: aa 000020 000227 236007 ldq 151,dl " ExpressionMissing aa 000021 700016 756111 stq sb|14,x1 4a 000022 400026 272120 tsbbp lp|L13,* " CaeReport aa 000023 000014 000001 zero 12,1 aa 000024 600347 236100 19 ldq sp|231 " ErrorNode aa 000025 000251 710004 21 tra L9 L14: aa 000026 600220 235100 25 lda sp|144 " DictionaryEntry aa 000027 700006 755111 sta sb|6,x1 " B 4a 000030 400024 272120 26 tsbbp lp|L15,* " Nextsymb aa 000031 000014 000000 zero 12 aa 000032 700006 236111 27 ldq sb|6,x1 " B aa 000033 000243 710004 29 tra L9 L16: 4a 000034 400024 272120 32 tsbbp lp|L15,* " Nextsymb aa 000035 000014 000000 zero 12 aa 000036 700007 235111 33 lda sb|7,x1 " Op aa 000037 700016 755111 sta sb|14,x1 4a 000040 400022 272120 tsbbp lp|L17,* " List1 aa 000041 000014 000001 zero 12,1 aa 000042 000234 710004 35 tra L9 L18: aa 000043 000141 236007 36 ldq 97,dl " POS_F aa 000044 700007 756111 stq sb|7,x1 " Op aa 000045 000011 710004 38 tra L5 L19: aa 000046 000142 236007 39 ldq 98,dl " POS_S aa 000047 700007 756111 stq sb|7,x1 " Op aa 000050 000006 710004 41 tra L5 L20: aa 000051 000123 236007 42 ldq 83,dl " NEG_F aa 000052 700007 756111 stq sb|7,x1 " Op aa 000053 000003 710004 44 tra L5 L21: aa 000054 000124 236007 45 ldq 84,dl " NEG_S aa 000055 700007 756111 stq sb|7,x1 " Op L5: aa 000056 600214 236100 46 ldq sp|140 " LineCount aa 000057 000022 736000 qls 18 aa 000060 700007 256111 orsq sb|7,x1 " Op aa 000061 000040 236007 47 ldq 32,dl " 32 aa 000062 700006 756111 stq sb|6,x1 " B aa 000063 000006 710004 49 tra L4 L22: aa 000064 000026 236007 50 ldq 22,dl " 22 aa 000065 700006 756111 stq sb|6,x1 " B aa 000066 000003 710004 52 tra L4 L23: aa 000067 000050 236007 54 ldq 40,dl " 40 aa 000070 700006 756111 stq sb|6,x1 " B L4: 4a 000071 400024 272120 55 tsbbp lp|L15,* " Nextsymb aa 000072 000014 000000 zero 12 aa 000073 700006 236111 56 ldq sb|6,x1 " B aa 000074 700016 756111 stq sb|14,x1 aa 000075 777707 272004 tsbbp L1+2 " Rexp aa 000076 000014 000001 zero 12,1 aa 000077 700006 756111 stq sb|6,x1 " B aa 000100 700007 236111 57 ldq sb|7,x1 " Op aa 000101 700016 756111 stq sb|14,x1 aa 000102 700006 236111 ldq sb|6,x1 " B aa 000103 700017 756111 stq sb|15,x1 4a 000104 400020 272120 tsbbp lp|L24,* " List2 aa 000105 000014 000002 zero 12,2 aa 000106 000170 710004 59 tra L9 L25: 4a 000107 400024 272120 60 tsbbp lp|L15,* " Nextsymb aa 000110 000014 000000 zero 12 aa 000111 700016 450111 61 stz sb|14,x1 aa 000112 777672 272004 tsbbp L1+2 " Rexp aa 000113 000014 000001 zero 12,1 aa 000114 700006 756111 stq sb|6,x1 " B aa 000115 700007 236111 62 ldq sb|7,x1 " Op aa 000116 700016 756111 stq sb|14,x1 aa 000117 700006 236111 ldq sb|6,x1 " B aa 000120 700017 756111 stq sb|15,x1 4a 000121 400020 272120 tsbbp lp|L24,* " List2 aa 000122 000014 000002 zero 12,2 aa 000123 000153 710004 64 tra L9 L26: 4a 000124 400024 272120 66 tsbbp lp|L15,* " Nextsymb aa 000125 000014 000000 zero 12 aa 000126 000001 336007 67 lcq 1,dl " true aa 000127 700016 756111 stq sb|14,x1 4a 000130 400016 272120 tsbbp lp|L27,* " ReadList aa 000131 000014 000001 zero 12,1 aa 000132 700006 756111 stq sb|6,x1 " B aa 000133 700007 236111 68 ldq sb|7,x1 " Op aa 000134 700016 756111 stq sb|14,x1 aa 000135 700006 236111 ldq sb|6,x1 " B aa 000136 700017 756111 stq sb|15,x1 4a 000137 400020 272120 tsbbp lp|L24,* " List2 aa 000140 000014 000002 zero 12,2 aa 000141 000135 710004 70 tra L9 L28: 4a 000142 400024 272120 71 tsbbp lp|L15,* " Nextsymb aa 000143 000014 000000 zero 12 aa 000144 000010 236007 72 ldq 8,dl " 8 aa 000145 700016 756111 stq sb|14,x1 4a 000146 400014 272120 tsbbp lp|L29,* " Rcom aa 000147 000014 000001 zero 12,1 aa 000150 700006 756111 stq sb|6,x1 " B aa 000151 700007 236111 73 ldq sb|7,x1 " Op aa 000152 700016 756111 stq sb|14,x1 aa 000153 700006 236111 ldq sb|6,x1 " B aa 000154 700017 756111 stq sb|15,x1 4a 000155 400020 272120 tsbbp lp|L24,* " List2 aa 000156 000014 000002 zero 12,2 aa 000157 000117 710004 75 tra L9 L30: 4a 000160 400024 272120 76 tsbbp lp|L15,* " Nextsymb aa 000161 000014 000000 zero 12 aa 000162 700016 450111 77 stz sb|14,x1 aa 000163 777621 272004 tsbbp L1+2 " Rexp aa 000164 000014 000001 zero 12,1 aa 000165 700006 756111 stq sb|6,x1 " B aa 000166 600217 236100 78 ldq sp|143 " Symb aa 000167 000157 116007 cmpq 111,dl " RKET_S aa 000170 000004 601004 tnz L32 4a 000171 400024 272120 79 tsbbp lp|L15,* " Nextsymb aa 000172 000014 000000 zero 12 aa 000173 000005 710004 tra L31 L32: aa 000174 000241 235007 80 lda 161,dl " MissingRKET aa 000175 700016 755111 sta sb|14,x1 4a 000176 400026 272120 tsbbp lp|L13,* " CaeReport aa 000177 000014 000001 zero 12,1 L31: aa 000200 700006 236111 81 ldq sb|6,x1 " B aa 000201 000075 710004 tra L9 L11: " Begin switchon aa 000202 600217 235100 lda sp|143 " Symb aa 000203 000071 115007 cmpa 57,dl aa 000204 000065 604004 tmi L33 aa 000205 777717 600004 tze L26 aa 000206 000137 115007 cmpa 95,dl aa 000207 000031 604004 tmi L34 aa 000210 777636 600004 tze L19 aa 000211 000043 773000 lrl 35 aa 000212 000011 507007 dvf 9,dl " hash table size 0a 000213 000227 115006 cmpa L35,ql aa 000214 777604 601004 tnz L12 0a 000215 000216 710006 tra L36,ql L36: aa 000216 777610 710004 tra L14 aa 000217 777741 710004 tra L30 aa 000220 777600 710004 tra L12 aa 000221 777577 710004 tra L12 aa 000222 777702 710004 tra L26 aa 000223 777717 710004 tra L28 aa 000224 777663 710004 tra L25 aa 000225 777642 710004 tra L23 aa 000226 777606 710004 tra L16 L35: aa 000227 000000 000016 zero 0,14 aa 000230 000000 000013 zero 0,11 aa 000231 000000 000000 zero 0 aa 000232 000000 000000 zero 0 aa 000233 000000 000016 zero 0,14 aa 000234 000000 000017 zero 0,15 aa 000235 000000 000017 zero 0,15 aa 000236 000000 000014 zero 0,12 aa 000237 000000 000016 zero 0,14 L34: aa 000240 000115 115007 cmpa 77,dl aa 000241 000025 604004 tmi L37 aa 000242 777607 600004 tze L20 aa 000243 000043 773000 lrl 35 aa 000244 000007 507007 dvf 7,dl " hash table size 0a 000245 000257 115006 cmpa L38,ql aa 000246 777552 601004 tnz L12 0a 000247 000250 710006 tra L39,ql L39: aa 000250 777556 710004 tra L14 aa 000251 777603 710004 tra L21 aa 000252 777546 710004 tra L12 aa 000253 777570 710004 tra L18 aa 000254 777560 710004 tra L16 aa 000255 777551 710004 tra L14 aa 000256 777606 710004 tra L22 L38: aa 000257 000000 000015 zero 0,13 aa 000260 000000 000013 zero 0,11 aa 000261 000000 000000 zero 0 aa 000262 000000 000015 zero 0,13 aa 000263 000000 000014 zero 0,12 aa 000264 000000 000013 zero 0,11 aa 000265 000000 000014 zero 0,12 L37: aa 000266 000102 115007 cmpa 66,dl aa 000267 777600 600004 tze L23 aa 000270 777530 710004 tra L12 L33: aa 000271 000013 115007 cmpa 11,dl aa 000272 777534 600004 tze L14 aa 000273 000037 115007 cmpa 31,dl aa 000274 777540 600004 tze L16 aa 000275 777523 710004 tra L12 L10: L9: aa 000276 700004 756111 stq sb|4,x1 " A L3: aa 000277 600214 236100 85 ldq sp|140 " LineCount aa 000300 000022 736000 qls 18 aa 000301 600217 276100 orq sp|143 " Symb aa 000302 700007 756111 stq sb|7,x1 " Op aa 000303 000260 710004 87 tra L42 L43: aa 000304 000527 710004 89 tra L2 L44: aa 000305 600214 236100 90 ldq sp|140 " LineCount aa 000306 000022 736000 qls 18 aa 000307 000043 276007 orq 35,dl " FNAP_S aa 000310 700007 756111 stq sb|7,x1 " Op 4a 000311 400024 272120 91 tsbbp lp|L15,* " Nextsymb aa 000312 000014 000000 zero 12 aa 000313 600217 236100 92 ldq sp|143 " Symb aa 000314 000157 116007 cmpq 111,dl " RKET_S aa 000315 000003 601004 tnz L45 aa 000316 000000 235007 lda 0,dl " 0 aa 000317 000006 710004 tra L46 L45: aa 000320 000001 336007 lcq 1,dl " true aa 000321 700016 756111 stq sb|14,x1 4a 000322 400016 272120 tsbbp lp|L27,* " ReadList aa 000323 000014 000001 zero 12,1 aa 000324 000044 777000 llr 36 " exchange A and Q L46: aa 000325 700006 755111 sta sb|6,x1 " B aa 000326 600217 235100 93 lda sp|143 " Symb aa 000327 000157 115007 cmpa 111,dl " RKET_S aa 000330 000004 601004 tnz L48 4a 000331 400024 272120 94 tsbbp lp|L15,* " Nextsymb aa 000332 000014 000000 zero 12 aa 000333 000005 710004 tra L47 L48: aa 000334 000241 236007 95 ldq 161,dl " MissingRKET aa 000335 700016 756111 stq sb|14,x1 4a 000336 400026 272120 tsbbp lp|L13,* " CaeReport aa 000337 000014 000001 zero 12,1 L47: aa 000340 700007 236111 96 ldq sb|7,x1 " Op aa 000341 700016 756111 stq sb|14,x1 aa 000342 700004 236111 ldq sb|4,x1 " A aa 000343 700017 756111 stq sb|15,x1 aa 000344 700006 236111 ldq sb|6,x1 " B aa 000345 700020 756111 stq sb|16,x1 4a 000346 400012 272120 tsbbp lp|L49,* " List3 aa 000347 000014 000003 zero 12,3 aa 000350 700004 756111 stq sb|4,x1 " A aa 000351 777726 710004 99 tra L3 L50: aa 000352 000054 236007 100 ldq 44,dl " 44 aa 000353 000433 710004 102 tra L40 L51: aa 000354 700002 235111 103 lda sb|2,x1 " n aa 000355 000054 115007 cmpa 44,dl " 44 aa 000356 000455 605004 tpl L2 aa 000357 600214 236100 104 ldq sp|140 " LineCount aa 000360 000022 736000 qls 18 aa 000361 000216 276007 orq 142,dl " VECAP_S aa 000362 700007 756111 stq sb|7,x1 " Op 4a 000363 400024 272120 105 tsbbp lp|L15,* " Nextsymb aa 000364 000014 000000 zero 12 aa 000365 700016 450111 106 stz sb|14,x1 aa 000366 777416 272004 tsbbp L1+2 " Rexp aa 000367 000014 000001 zero 12,1 aa 000370 700006 756111 stq sb|6,x1 " B aa 000371 600217 236100 107 ldq sp|143 " Symb aa 000372 000173 116007 cmpq 123,dl " SKET_S aa 000373 000004 601004 tnz L53 4a 000374 400024 272120 108 tsbbp lp|L15,* " Nextsymb aa 000375 000014 000000 zero 12 aa 000376 000005 710004 tra L52 L53: aa 000377 000243 235007 109 lda 163,dl " MissingSKET aa 000400 700016 755111 sta sb|14,x1 4a 000401 400026 272120 tsbbp lp|L13,* " CaeReport aa 000402 000014 000001 zero 12,1 L52: aa 000403 700007 235111 110 lda sb|7,x1 " Op aa 000404 700016 755111 sta sb|14,x1 aa 000405 700004 235111 lda sb|4,x1 " A aa 000406 700017 755111 sta sb|15,x1 aa 000407 700006 235111 lda sb|6,x1 " B aa 000410 700020 755111 sta sb|16,x1 4a 000411 400012 272120 tsbbp lp|L49,* " List3 aa 000412 000014 000003 zero 12,3 aa 000413 700004 756111 stq sb|4,x1 " A aa 000414 777663 710004 113 tra L3 L54: aa 000415 000044 236007 118 ldq 36,dl " 36 aa 000416 000370 710004 120 tra L40 L55: aa 000417 000040 236007 124 ldq 32,dl " 32 aa 000420 000366 710004 126 tra L40 L56: aa 000421 600214 235100 127 lda sp|140 " LineCount aa 000422 000022 735000 als 18 aa 000423 000033 275007 ora 27,dl " EQ_S aa 000424 700007 755111 sta sb|7,x1 " Op L57: aa 000425 700002 235111 140 lda sb|2,x1 " n aa 000426 000034 115007 cmpa 28,dl " 28 aa 000427 000404 605404 tpnz L2 4a 000430 400024 272120 141 tsbbp lp|L15,* " Nextsymb aa 000431 000014 000000 zero 12 aa 000432 000034 236007 142 ldq 28,dl " 28 aa 000433 700016 756111 stq sb|14,x1 aa 000434 777350 272004 tsbbp L1+2 " Rexp aa 000435 000014 000001 zero 12,1 aa 000436 700006 756111 stq sb|6,x1 " B aa 000437 700007 236111 143 ldq sb|7,x1 " Op aa 000440 700016 756111 stq sb|14,x1 aa 000441 700004 236111 ldq sb|4,x1 " A aa 000442 700017 756111 stq sb|15,x1 aa 000443 700006 236111 ldq sb|6,x1 " B aa 000444 700020 756111 stq sb|16,x1 4a 000445 400012 272120 tsbbp lp|L49,* " List3 aa 000446 000014 000003 zero 12,3 aa 000447 700004 756111 stq sb|4,x1 " A aa 000450 700002 236111 144 ldq sb|2,x1 " n aa 000451 000034 116007 cmpq 28,dl " 28 aa 000452 000012 600004 tze L58 aa 000453 600214 235100 lda sp|140 " LineCount aa 000454 000022 735000 als 18 aa 000455 000146 275007 ora 102,dl " REL_S aa 000456 700016 755111 sta sb|14,x1 aa 000457 700004 235111 lda sb|4,x1 " A aa 000460 700017 755111 sta sb|15,x1 4a 000461 400020 272120 tsbbp lp|L24,* " List2 aa 000462 000014 000002 zero 12,2 aa 000463 700004 756111 stq sb|4,x1 " A L58: aa 000464 777613 710004 147 tra L3 L59: aa 000465 000030 236007 149 ldq 24,dl " 24 aa 000466 000320 710004 151 tra L40 L60: aa 000467 000024 236007 152 ldq 20,dl " 20 aa 000470 000316 710004 154 tra L40 L61: aa 000471 000020 236007 155 ldq 16,dl " 16 aa 000472 000314 710004 157 tra L40 L62: aa 000473 000016 236007 158 ldq 14,dl " 14 aa 000474 000312 710004 160 tra L40 L63: aa 000475 000014 236007 161 ldq 12,dl " 12 aa 000476 000310 710004 163 tra L40 L64: aa 000477 700002 235111 164 lda sb|2,x1 " n aa 000500 000010 115007 cmpa 8,dl " 8 aa 000501 000332 605404 tpnz L2 4a 000502 400024 272120 165 tsbbp lp|L15,* " Nextsymb aa 000503 000014 000000 zero 12 aa 000504 000010 236007 166 ldq 8,dl " 8 aa 000505 700016 756111 stq sb|14,x1 aa 000506 777276 272004 tsbbp L1+2 " Rexp aa 000507 000014 000001 zero 12,1 aa 000510 700006 756111 stq sb|6,x1 " B aa 000511 600217 236100 167 ldq sp|143 " Symb aa 000512 000015 116007 cmpq 13,dl " COMMA_S aa 000513 000004 601004 tnz L66 4a 000514 400024 272120 168 tsbbp lp|L15,* " Nextsymb aa 000515 000014 000000 zero 12 aa 000516 000005 710004 tra L65 L66: aa 000517 000235 235007 169 lda 157,dl " MissingCOMMA aa 000520 700016 755111 sta sb|14,x1 4a 000521 400026 272120 tsbbp lp|L13,* " CaeReport aa 000522 000014 000001 zero 12,1 L65: aa 000523 000010 235007 170 lda 8,dl " 8 aa 000524 700016 755111 sta sb|14,x1 aa 000525 777257 272004 tsbbp L1+2 " Rexp aa 000526 000014 000001 zero 12,1 aa 000527 700005 756111 stq sb|5,x1 " C aa 000530 700007 236111 171 ldq sb|7,x1 " Op aa 000531 700016 756111 stq sb|14,x1 aa 000532 700004 236111 ldq sb|4,x1 " A aa 000533 700017 756111 stq sb|15,x1 aa 000534 700006 236111 ldq sb|6,x1 " B aa 000535 700020 756111 stq sb|16,x1 aa 000536 700005 236111 ldq sb|5,x1 " C aa 000537 700021 756111 stq sb|17,x1 4a 000540 400010 272120 tsbbp lp|L67,* " List4 aa 000541 000014 000004 zero 12,4 aa 000542 700004 756111 stq sb|4,x1 " A aa 000543 777534 710004 174 tra L3 L68: aa 000544 000006 236007 179 ldq 6,dl " 6 aa 000545 000241 710004 181 tra L40 L69: aa 000546 700002 235111 186 lda sb|2,x1 " n aa 000547 000006 115007 cmpa 6,dl " 6 aa 000550 000263 605004 tpl L2 aa 000551 700007 236111 187 ldq sb|7,x1 " Op aa 000552 700016 756111 stq sb|14,x1 aa 000553 700004 236111 ldq sb|4,x1 " A aa 000554 700017 756111 stq sb|15,x1 4a 000555 400020 272120 tsbbp lp|L24,* " List2 aa 000556 000014 000002 zero 12,2 aa 000557 700004 756111 stq sb|4,x1 " A 4a 000560 400024 272120 188 tsbbp lp|L15,* " Nextsymb aa 000561 000014 000000 zero 12 aa 000562 777515 710004 189 tra L3 L42: " Begin switchon aa 000563 600217 235100 lda sp|143 " Symb aa 000564 000217 115007 cmpa 143,dl aa 000565 777517 603004 trc L43 0a 000566 000567 710005 tra L70,al L70: aa 000567 777515 710004 tra L43 aa 000570 777514 710004 tra L43 aa 000571 777513 710004 tra L43 aa 000572 777512 710004 tra L43 aa 000573 777751 710004 tra L68 aa 000574 777510 710004 tra L43 aa 000575 777507 710004 tra L43 aa 000576 777506 710004 tra L43 aa 000577 777505 710004 tra L43 aa 000600 777504 710004 tra L43 aa 000601 777743 710004 tra L68 aa 000602 777502 710004 tra L43 aa 000603 777501 710004 tra L43 aa 000604 777500 710004 tra L43 aa 000605 777672 710004 tra L64 aa 000606 777476 710004 tra L43 aa 000607 777475 710004 tra L43 aa 000610 777474 710004 tra L43 aa 000611 777604 710004 tra L54 aa 000612 777472 710004 tra L43 aa 000613 777602 710004 tra L54 aa 000614 777470 710004 tra L43 aa 000615 777731 710004 tra L69 aa 000616 777466 710004 tra L43 aa 000617 777465 710004 tra L43 aa 000620 777464 710004 tra L43 aa 000621 777604 710004 tra L57 aa 000622 777603 710004 tra L57 aa 000623 777650 710004 tra L62 aa 000624 777460 710004 tra L43 aa 000625 777457 710004 tra L43 aa 000626 777456 710004 tra L43 aa 000627 777455 710004 tra L43 aa 000630 777716 710004 tra L69 aa 000631 777715 710004 tra L69 aa 000632 777452 710004 tra L43 aa 000633 777451 710004 tra L43 aa 000634 777450 710004 tra L43 aa 000635 777570 710004 tra L57 aa 000636 777446 710004 tra L43 aa 000637 777566 710004 tra L57 aa 000640 777444 710004 tra L43 aa 000641 777443 710004 tra L43 aa 000642 777442 710004 tra L43 aa 000643 777562 710004 tra L57 aa 000644 777561 710004 tra L57 aa 000645 777437 710004 tra L43 aa 000646 777436 710004 tra L43 aa 000647 777435 710004 tra L43 aa 000650 777434 710004 tra L43 aa 000651 777433 710004 tra L43 aa 000652 777432 710004 tra L43 aa 000653 777431 710004 tra L43 aa 000654 777551 710004 tra L57 aa 000655 777550 710004 tra L57 aa 000656 777666 710004 tra L68 aa 000657 777425 710004 tra L43 aa 000660 777424 710004 tra L43 aa 000661 777423 710004 tra L43 aa 000662 777422 710004 tra L43 aa 000663 777604 710004 tra L60 aa 000664 777605 710004 tra L61 aa 000665 777417 710004 tra L43 aa 000666 777537 710004 tra L57 aa 000667 777536 710004 tra L57 aa 000670 777575 710004 tra L59 aa 000671 777413 710004 tra L43 aa 000672 777412 710004 tra L43 aa 000673 777411 710004 tra L43 aa 000674 777410 710004 tra L43 aa 000675 777407 710004 tra L43 aa 000676 777406 710004 tra L43 aa 000677 777405 710004 tra L43 aa 000700 777404 710004 tra L43 aa 000701 777403 710004 tra L43 aa 000702 777402 710004 tra L43 aa 000703 777401 710004 tra L43 aa 000704 777513 710004 tra L55 aa 000705 777512 710004 tra L55 aa 000706 777376 710004 tra L43 aa 000707 777506 710004 tra L54 aa 000710 777505 710004 tra L54 aa 000711 777373 710004 tra L43 aa 000712 777372 710004 tra L43 aa 000713 777371 710004 tra L43 aa 000714 777561 710004 tra L63 aa 000715 777510 710004 tra L57 aa 000716 777507 710004 tra L57 aa 000717 777365 710004 tra L43 aa 000720 777364 710004 tra L43 aa 000721 777363 710004 tra L43 aa 000722 777362 710004 tra L43 aa 000723 777621 710004 tra L68 aa 000724 777360 710004 tra L43 aa 000725 777472 710004 tra L55 aa 000726 777471 710004 tra L55 aa 000727 777617 710004 tra L69 aa 000730 777354 710004 tra L43 aa 000731 777353 710004 tra L43 aa 000732 777352 710004 tra L43 aa 000733 777352 710004 tra L44 aa 000734 777350 710004 tra L43 aa 000735 777347 710004 tra L43 aa 000736 777457 710004 tra L54 aa 000737 777345 710004 tra L43 aa 000740 777344 710004 tra L43 aa 000741 777343 710004 tra L43 aa 000742 777342 710004 tra L43 aa 000743 777341 710004 tra L43 aa 000744 777340 710004 tra L43 aa 000745 777337 710004 tra L43 aa 000746 777336 710004 tra L43 aa 000747 777516 710004 tra L59 aa 000750 777334 710004 tra L43 aa 000751 777333 710004 tra L43 aa 000752 777332 710004 tra L43 aa 000753 777401 710004 tra L51 aa 000754 777330 710004 tra L43 aa 000755 777327 710004 tra L43 aa 000756 777326 710004 tra L43 aa 000757 777325 710004 tra L43 aa 000760 777324 710004 tra L43 aa 000761 777323 710004 tra L43 aa 000762 777322 710004 tra L43 aa 000763 777321 710004 tra L43 aa 000764 777562 710004 tra L69 aa 000765 777317 710004 tra L43 aa 000766 777316 710004 tra L43 aa 000767 777315 710004 tra L43 aa 000770 777314 710004 tra L43 aa 000771 777313 710004 tra L43 aa 000772 777312 710004 tra L43 aa 000773 777311 710004 tra L43 aa 000774 777310 710004 tra L43 aa 000775 777307 710004 tra L43 aa 000776 777546 710004 tra L68 aa 000777 777305 710004 tra L43 aa 001000 777304 710004 tra L43 aa 001001 777420 710004 tra L56 aa 001002 777302 710004 tra L43 aa 001003 777301 710004 tra L43 aa 001004 777300 710004 tra L43 aa 001005 777345 710004 tra L50 L41: L40: aa 001006 700006 756111 stq sb|6,x1 " B aa 001007 700002 236111 191 ldq sb|2,x1 " n aa 001010 700006 116111 cmpq sb|6,x1 " B aa 001011 000022 605004 tpl L2 4a 001012 400024 272120 192 tsbbp lp|L15,* " Nextsymb aa 001013 000014 000000 zero 12 aa 001014 700006 235111 193 lda sb|6,x1 " B aa 001015 700016 755111 sta sb|14,x1 aa 001016 776766 272004 tsbbp L1+2 " Rexp aa 001017 000014 000001 zero 12,1 aa 001020 700006 756111 stq sb|6,x1 " B aa 001021 700007 236111 194 ldq sb|7,x1 " Op aa 001022 700016 756111 stq sb|14,x1 aa 001023 700004 236111 ldq sb|4,x1 " A aa 001024 700017 756111 stq sb|15,x1 aa 001025 700006 236111 ldq sb|6,x1 " B aa 001026 700020 756111 stq sb|16,x1 4a 001027 400012 272120 tsbbp lp|L49,* " List3 aa 001030 000014 000003 zero 12,3 aa 001031 700004 756111 stq sb|4,x1 " A aa 001032 777245 710004 197 tra L3 L2: aa 001033 700004 236111 198 ldq sb|4,x1 " A L8: aa 001034 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001035 200000 121100 sblx1 bp|0 aa 001036 700001 764111 lprplp sb|1,x1 aa 001037 200001 710100 tra bp|1 " end of return sequence " Definition section part one - external entry points 5a 000000 000014 000000 " pointer to first definition aa 000001 000000 600000 " flags: new format, ignore header aa 000002 000000 000000 " list terminator aa 000003 011142 143160 " "bcpl_cae1" aa 000004 154137 143141 aa 000005 145061 000000 aa 000006 004122 145170 " "Rexp" aa 000007 160000 000000 aa 000010 014163 171155 " "symbol_table" aa 000011 142157 154137 aa 000012 164141 142154 aa 000013 145000 000000 " Segname definition for bcpl_cae1 55 000014 000017 000002 " forward, backward threads 5a 000015 000002 400003 " value defined, class flags 55 000016 000003 000017 " name pointer, first entry def " Definition for Rexp 55 000017 000022 000014 " forward, backward threads 0a 000020 000002 500000 " value defined, class flags 55 000021 000006 000014 " name pointer, segname def pointer " Definition for symbol_table 55 000022 000002 000017 " forward, backward threads 6a 000023 000000 400002 " value defined, class flags 55 000024 000010 000014 " name pointer, segname def pointer " Definition section part two - symbolic info for external references aa 000025 014142 143160 " "bcpl_utility" aa 000026 154137 165164 aa 000027 151154 151164 aa 000030 171000 000000 aa 000031 005114 151163 " "List4" aa 000032 164064 000000 5a 000033 000034 000000 aa 000034 000004 000000 55 000035 000025 000031 aa 000036 005114 151163 " "List3" aa 000037 164063 000000 5a 000040 000041 000000 aa 000041 000004 000000 55 000042 000025 000036 aa 000043 011142 143160 " "bcpl_cae2" aa 000044 154137 143141 aa 000045 145062 000000 aa 000046 004122 143157 " "Rcom" aa 000047 155000 000000 5a 000050 000051 000000 aa 000051 000004 000000 55 000052 000043 000046 aa 000053 011142 143160 " "bcpl_cae0" aa 000054 154137 143141 aa 000055 145060 000000 aa 000056 010122 145141 " "ReadList" aa 000057 144114 151163 aa 000060 164000 000000 5a 000061 000062 000000 aa 000062 000004 000000 55 000063 000053 000056 aa 000064 005114 151163 " "List2" aa 000065 164062 000000 5a 000066 000067 000000 aa 000067 000004 000000 55 000070 000025 000064 aa 000071 005114 151163 " "List1" aa 000072 164061 000000 5a 000073 000074 000000 aa 000074 000004 000000 55 000075 000025 000071 aa 000076 011142 143160 " "bcpl_lex0" aa 000077 154137 154145 aa 000100 170060 000000 aa 000101 010116 145170 " "Nextsymb" aa 000102 164163 171155 aa 000103 142000 000000 5a 000104 000105 000000 aa 000105 000004 000000 55 000106 000076 000101 aa 000107 013142 143160 " "bcpl_report" aa 000110 154137 162145 aa 000111 160157 162164 aa 000112 011103 141145 " "CaeReport" aa 000113 122145 160157 aa 000114 162164 000000 5a 000115 000116 000000 aa 000116 000004 000000 55 000117 000107 000112 " Linkage section - static variables and external links aa 000000 000000 000000 " linkage header 0a 000001 001040 000000 " address of defs aa 000002 000000 000000 aa 000003 000000 000000 aa 000004 000000 000000 aa 000005 000000 000000 2a 000006 000010 000030 " offset to links, total length aa 000007 000000 000030 " obsolete length " External link pairs L67: 3a 000010 777770 000046 " "bcpl_utility$List4" 5a 000011 000033 000000 L49: 3a 000012 777766 000046 " "bcpl_utility$List3" 5a 000013 000040 000000 L29: 3a 000014 777764 000046 " "bcpl_cae2$Rcom" 5a 000015 000050 000000 L27: 3a 000016 777762 000046 " "bcpl_cae0$ReadList" 5a 000017 000061 000000 L24: 3a 000020 777760 000046 " "bcpl_utility$List2" 5a 000021 000066 000000 L17: 3a 000022 777756 000046 " "bcpl_utility$List1" 5a 000023 000073 000000 L15: 3a 000024 777754 000046 " "bcpl_lex0$Nextsymb" 5a 000025 000104 000000 L13: 3a 000026 777752 000046 " "bcpl_report$CaeReport" 5a 000027 000115 000000 " Symbol section header aa 000000 000000 000001 " version number of header structure aa 000001 163171 155142 " "symbtree" aa 000002 164162 145145 aa 000003 000000 000003 " compiler version number aa 000004 000000 110731 " date/time compiler modified aa 000005 452422 044440 " 04/22/82 1732.8 mdt Thu aa 000006 000000 131036 " time of this compilation aa 000007 025666 661655 " 04/17/00 1920.5 mdt Mon aa 000010 142143 160154 " "bcpl " aa 000011 040040 040040 aa 000012 000052 000034 " compiler version name - pointer, length aa 000013 000061 000022 " user id - pointer, length aa 000014 000066 000043 " comment string - pointer, length aa 000015 000002 000002 " text and linkage boundaries aa 000016 000024 000000 " source map, symbol tree root 7a 000017 000000 000153 " section header pointer, block size aa 000020 000000 000153 " next block pointer, rel_text aa 000021 000000 000201 " rel_def, rel_link aa 000022 000207 000153 " rel_symbol, default truncate aa 000023 000024 000000 " optional truncate, unused aa 000024 000000 000001 " source files map: version number aa 000025 000000 000005 " number of files aa 000026 000077 000036 " bcpl_cae1 aa 000027 310157 122133 " last modified on aa 000030 000000 131036 " 04/17/00 1920.5 mdt Mon aa 000031 025667 000000 aa 000032 000107 000041 " bcpl_cae_head aa 000033 305736 045653 " last modified on aa 000034 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000035 407547 400000 aa 000036 000120 000046 " bcpl_compiler_head aa 000037 305736 045654 " last modified on aa 000040 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000041 407546 000000 aa 000042 000132 000040 " bcpl_symbols aa 000043 305736 045662 " last modified on aa 000044 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000045 407546 200000 aa 000046 000142 000042 " bcpl_cae_codes aa 000047 305736 045634 " last modified on aa 000050 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000051 407542 400000 aa 000052 102103 120114 " "BCPL version 3.5, March 1982" aa 000053 040166 145162 aa 000054 163151 157156 aa 000055 040063 056065 aa 000056 054040 115141 aa 000057 162143 150040 aa 000060 061071 070062 aa 000061 123143 150162 " "Schroth.SysMaint.m" aa 000062 157164 150056 aa 000063 123171 163115 aa 000064 141151 156164 aa 000065 056155 040040 aa 000066 163157 165162 " "source xref alist optimize 6180" aa 000067 143145 040040 aa 000070 170162 145146 aa 000071 040040 141154 aa 000072 151163 164040 aa 000073 040157 160164 aa 000074 151155 151172 aa 000075 145040 040066 aa 000076 061070 060040 aa 000077 076165 144144 " ">udd>sm>ds>w>ml>bcpl_cae1.bcpl" aa 000100 076163 155076 aa 000101 144163 076167 aa 000102 076155 154076 aa 000103 142143 160154 aa 000104 137143 141145 aa 000105 061056 142143 aa 000106 160154 040040 aa 000107 076154 144144 " ">ldd>incl>bcpl_cae_head.incl.bcpl" aa 000110 076151 156143 aa 000111 154076 142143 aa 000112 160154 137143 aa 000113 141145 137150 aa 000114 145141 144056 aa 000115 151156 143154 aa 000116 056142 143160 aa 000117 154040 040040 aa 000120 076154 144144 " ">ldd>incl>bcpl_compiler_head.incl.bcpl" aa 000121 076151 156143 aa 000122 154076 142143 aa 000123 160154 137143 aa 000124 157155 160151 aa 000125 154145 162137 aa 000126 150145 141144 aa 000127 056151 156143 aa 000130 154056 142143 aa 000131 160154 040040 aa 000132 076154 144144 " ">ldd>incl>bcpl_symbols.incl.bcpl" aa 000133 076151 156143 aa 000134 154076 142143 aa 000135 160154 137163 aa 000136 171155 142157 aa 000137 154163 056151 aa 000140 156143 154056 aa 000141 142143 160154 aa 000142 076154 144144 " ">ldd>incl>bcpl_cae_codes.incl.bcpl" aa 000143 076151 156143 aa 000144 154076 142143 aa 000145 160154 137143 aa 000146 141145 137143 aa 000147 157144 145163 aa 000150 056151 156143 aa 000151 154056 142143 aa 000152 160154 040040 " Relocation information " text section relocation bits aa 000153 000000 000002 " version number of rel-bits structure aa 000154 000000 001307 " length in bits aa 000155 740445 000024 aa 000156 002400 247406 aa 000157 151700 532005 aa 000160 170047 200500 aa 000161 050000 050024 aa 000162 002400 002401 aa 000163 236010 640005 aa 000164 170063 002074 aa 000165 057401 036041 aa 000166 647402 150000 aa 000167 050001 200000 aa 000170 247403 151700 aa 000171 432000 240000 aa 000172 051700 732360 aa 000173 146474 027517 aa 000174 010323 601164 aa 000175 000517 007323 aa 000176 601464 012000 aa 000177 041711 172360 aa 000200 146474 021000 l " inkage relocation bits aa 000201 000000 000002 " version number of rel-bits structure aa 000202 000000 000170 " length in bits aa 000203 100002 204652 aa 000204 465246 524652 aa 000205 465246 524652 aa 000206 465200 000000 s " ymbol relocation bits aa 000207 000000 000002 " version number of rel-bits structure aa 000210 000000 000043 " length in bits aa 000211 740365 770556 " Object map aa 001422 000000 000001 " version number of object_map structure aa 001423 157142 152137 " "obj_map " aa 001424 155141 160040 aa 001425 000000 001040 " text offset, length aa 001426 001040 000120 " def offset, length aa 001427 001160 000030 " link offset, length aa 001430 001210 000212 " symbol offset, length aa 001431 000000 000000 " break map offset, length aa 001432 340000 000000 " flags: ^bound, relocatable, procedure, standard aa 001433 001422 000000 " object map pointer, unused ----------------------------------------------------------- Historical Background This edition of the Multics software materials and documentation is provided and donated to Massachusetts Institute of Technology by Group BULL including BULL HN Information Systems Inc. as a contribution to computer science knowledge. This donation is made also to give evidence of the common contributions of Massachusetts Institute of Technology, Bell Laboratories, General Electric, Honeywell Information Systems Inc., Honeywell BULL Inc., Groupe BULL and BULL HN Information Systems Inc. to the development of this operating system. Multics development was initiated by Massachusetts Institute of Technology Project MAC (1963-1970), renamed the MIT Laboratory for Computer Science and Artificial Intelligence in the mid 1970s, under the leadership of Professor Fernando Jose Corbato. Users consider that Multics provided the best software architecture for managing computer hardware properly and for executing programs. Many subsequent operating systems incorporated Multics principles. Multics was distributed in 1975 to 2000 by Group Bull in Europe , and in the U.S. by Bull HN Information Systems Inc., as successor in interest by change in name only to Honeywell Bull Inc. and Honeywell Information Systems Inc. . ----------------------------------------------------------- Permission to use, copy, modify, and distribute these programs and their documentation for any purpose and without fee is hereby granted,provided that the below copyright notice and historical background appear in all copies and that both the copyright notice and historical background and this permission notice appear in supporting documentation, and that the names of MIT, HIS, BULL or BULL HN not be used in advertising or publicity pertaining to distribution of the programs without specific prior written permission. Copyright 1972 by Massachusetts Institute of Technology and Honeywell Information Systems Inc. Copyright 2006 by BULL HN Information Systems Inc. Copyright 2006 by Bull SAS All Rights Reserved