Compilation listing of file >udd>sm>ds>w>ml>bcpl_trans6.bcpl. Compilation performed for Schroth.SysMaint.m at 04/17/00 1921.2 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 // More subroutines to augment Transbody. 2 // Last modified on 06/26/74 at 22:19:29 by R F Mabee. 3 // First installed as Version 3.4 by R F Mabee. 4 // Separated from bcpl_trans2 and bcpl_trans3 during 6180 conversion. 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 13 get "bcpl_trans_head" 1 // Declarations for the semantic translator. 2 // Last modified on 04/02/74 at 16:02:39 by R F Mabee. 3 // Revised during 6180 bootstrap, and installed as Version 3.4 by R F Mabee. 4 // First installed as Version 2.7 by 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_trans_codes" 1 // Report codes for the translator phase. 2 // Last modified on 04/02/74 at 16:02:32 by R F Mabee. 3 // Revisions for 6180 bootstrap installed with Version 3.4, R F Mabee. 4 // First installed in Version 2.7 by R F Mabee. 5 6 manifest // 200 - 299 are reserved for Trans. 7 $( BadCall = 200 8 BadDescriptors = 201 9 BadLink = 202 10 Conformality = 203 11 DupDefault = 204 12 DupName = 205 13 FreeVar = 206 14 LmodeRequired = 207 15 NegVector = 208 16 17 NoLoop = 210 18 NoSwitch = 211 19 NotConstant = 212 20 NotInsideRtdef = 213 21 NotName = 214 22 NoValof = 215 23 UndefName = 216 24 UnrecognizedExpression= 217 25 $) 9 10 external 11 $( Transbody = "bcpl_trans1$Transbody" // The routines of Trans. 12 13 Transdef = "bcpl_trans2$Transdef" 14 Addlocal = "bcpl_trans2$Addlocal" 15 Declitem = "bcpl_trans2$Declitem" 16 Declnames = "bcpl_trans2$Declnames" 17 Decllabels = "bcpl_trans2$Decllabels" 18 Checkdistinct = "bcpl_trans2$Checkdistinct" 19 Cellwithname = "bcpl_trans2$Cellwithname" 20 Removenames = "bcpl_trans2$Removenames" 21 22 TransConditional = "bcpl_trans3$TransConditional" 23 TransFor = "bcpl_trans3$TransFor" 24 WalkList = "bcpl_trans3$WalkList" 25 ListSize = "bcpl_trans3$ListSize" 26 Assignlist = "bcpl_trans3$Assignlist" 27 Target = "bcpl_trans3$Target" 28 TransLoop = "bcpl_trans3$TransLoop" 29 30 CompileExpression = "bcpl_trans4$CompileExpression" 31 CompileOperand = "bcpl_trans4$CompileOperand" 32 SetResult = "bcpl_trans4$SetResult" 33 34 Evalconst = "bcpl_trans5$Evalconst" 35 PartialEvalconst = "bcpl_trans5$PartialEvalconst" 36 IsConst = "bcpl_trans5$IsConst" 37 EvaluateOperator = "bcpl_trans5$EvaluateOperator" 38 CountTemporaries = "bcpl_trans5$CountTemporaries" 39 IsRelational = "bcpl_trans5$IsRelational" 40 41 ResetSSP = "bcpl_trans6$ResetSSP" 42 AllocateLocal = "bcpl_trans6$AllocateLocal" 43 DeallocateLocal = "bcpl_trans6$DeallocateLocal" 44 MakeTemp = "bcpl_trans6$MakeTemp" 45 MakeCopy = "bcpl_trans6$MakeCopy" 46 PutBackTemps = "bcpl_trans6$PutBackTemps" 47 TransFnap = "bcpl_trans6$TransFnap" 48 TransSystemCall = "bcpl_trans6$TransSystemCall" 49 50 GenerateLabel = "bcpl_cg_interface$GenerateLabel" 51 GenerateJump = "bcpl_cg_interface$GenerateJump" 52 GenerateRtdefBegin = "bcpl_cg_interface$GenerateRtdefBegin" 53 GenerateRtdefEnd = "bcpl_cg_interface$GenerateRtdefEnd" 54 ReserveArglist = "bcpl_cg_interface$ReserveArglist" 55 GenerateArg = "bcpl_cg_interface$GenerateArg" 56 GenerateFnap = "bcpl_cg_interface$GenerateFnap" 57 ReserveSystemArglist = "bcpl_cg_interface$ReserveSystemArglist" 58 GenerateSystemArg = "bcpl_cg_interface$GenerateSystemArg" 59 GenerateSystemCall = "bcpl_cg_interface$GenerateSystemCall" 60 GenerateResultBlock = "bcpl_cg_interface$GenerateResultBlock" 61 GenerateResultValue = "bcpl_cg_interface$GenerateResultValue" 62 GenerateClaimResult = "bcpl_cg_interface$GenerateClaimResult" 63 GenerateGoto = "bcpl_cg_interface$GenerateGoto" 64 GenerateFinish = "bcpl_cg_interface$GenerateFinish" 65 GenerateSwitch = "bcpl_cg_interface$GenerateSwitch" 66 GenerateMonadicOperator = "bcpl_cg_interface$GenerateMonadicOperator" 67 GenerateDiadicOperator = "bcpl_cg_interface$GenerateDiadicOperator" 68 GenerateOffsetOperator = "bcpl_cg_interface$GenerateOffsetOperator" 69 GenerateMonadicConditional = "bcpl_cg_interface$GenerateMonadicConditional" 70 GenerateDiadicConditional = "bcpl_cg_interface$GenerateDiadicConditional" 71 GenerateSSP = "bcpl_cg_interface$GenerateSSP" 72 GenerateLineNumber = "bcpl_cg_interface$GenerateLineNumber" 73 StoreAll = "bcpl_cg_interface$StoreAll" 74 CgFinish = "bcpl_cg_interface$CgFinish" 75 $) 76 global // 250 - 299 are reserved for Trans. 77 $( ArgInfo : 250 78 BreakLabel : 251 79 CaseFirst : 252 80 CaseList : 253 81 DefaultLabel : 254 82 DefList : 255 83 DvecC : 246 84 DvecP : 257 85 EndcaseLabel : 258 86 87 EnvBase : 260 88 FreeLocalList : 261 89 InsideRtdef : 262 90 LHSpointer : 263 91 LoopFlag : 264 92 LoopLabel : 265 93 PendingTemps : 266 94 ReturnLabel : 267 95 RtdefList : 268 96 97 RtdefNesting : 270 98 SSP : 271 99 StaticAllocationCounter : 272 100 StaticFirst : 273 101 StaticList : 274 102 SwitchFlag : 275 103 TableCell : 276 104 ValofFlag : 277 105 ValofLabel : 278 106 $) 107 manifest 108 $( DescSize = 2 109 DvecSize = 4 110 $) 14 15 let AllocateLocal (n) = valof 16 $( test n = 1 17 then unless FreeLocalList = 0 do 18 $( let t, p = FreeLocalList, FreeLocalList!1 19 FreeLocalList := t!2 20 Freevec (t, 2) 21 resultis p 22 $) 23 or unless SSP rem 2 = 0 do // Make multi-word blocks even addresses. 24 $( ResetSSP (SSP + 1) // This is a kludge for the Multics implementation. 25 DeallocateLocal (SSP - 1) 26 $) 27 let p = SSP 28 ResetSSP (p + n) 29 resultis p 30 $) 31 and DeallocateLocal (p) be 32 $( let New = Newvec (2) 33 New!0, New!1, New!2 := 0, p, FreeLocalList 34 FreeLocalList := New 35 $) 36 and ResetSSP (p) be 37 $( let t = PendingTemps 38 until t = 0 do 39 $( if t!1 ge p do p := t!1 + 1 40 t := t!2 41 $) 42 if p = SSP return 43 SSP := p 44 GenerateSSP (SSP) 45 t := lv FreeLocalList 46 until rv t = 0 do // Dis-remember all temporaries outside new SSP. 47 $( let u = rv t 48 test u!1 ge SSP 49 then $( rv t := u!2 50 Freevec (u, 2) 51 $) 52 or t := lv u!2 53 $) 54 $) 55 and MakeTemp () = valof 56 $( let Temp = AllocateLocal (1) 57 let New = Newvec (2) 58 New!0, New!1, New!2 := TEMP_S, Temp, PendingTemps 59 PendingTemps := New 60 resultis New 61 $) 62 and MakeCopy (x) = valof 63 $( let P = MakeTemp () 64 P!0 := LOCAL_S 65 CompileExpression (P, x) 66 resultis P 67 $) 68 and PutBackTemps (PT) be 69 until PendingTemps = PT | PendingTemps = 0 do 70 $( let Old = PendingTemps 71 PendingTemps := PendingTemps!2 72 Old!2 := FreeLocalList 73 FreeLocalList := Old 74 $) 75 76 let ContainsFnap (x) = valof 77 switchon x!0 & Right into 78 $( case FNAP_S: case VALOF_S: case LIST_S: case COND_S: case REL_S: 79 default: resultis true 80 81 case POS_S: case POS_F: case NEG_S: case NEG_F: case NOT_S: case RV_S: case LV_S: 82 resultis ContainsFnap (x!1) 83 84 case PLUS_S: case PLUS_F: case MINUS_S: case MINUS_F: 85 case MULT_S: case MULT_F: case DIV_S: case DIV_F: 86 case REM_S: case LOGOR_S: case LOGAND_S: case EQV_S: case NEQV_S: 87 case LSHIFT_S: case RSHIFT_S: case VECAP_S: 88 if ContainsFnap (x!1) resultis true 89 resultis ContainsFnap (x!2) 90 91 case NAME_S: case NUMBER_S: case CHARCONST_S: case CONSTANT_S: case STRINGCONST_S: 92 case NIL_S: case TRUE_S: case FALSE_S: case TABLE_S: 93 resultis false 94 $) 95 96 let TransFnap (ResultDesc, F, Args) be 97 $( let Nargs = ListSize (Args) 98 and Ai, PT = ArgInfo, PendingTemps 99 if ContainsFnap (F) do F := MakeCopy (F) 100 ArgInfo := Newvec (Nargs - 1) 101 WalkList (Args, PreCheckArg, 0) 102 ReserveArglist (Nargs) 103 let TempDesc = vec DescSize 104 for i = 0 to Nargs - 1 do 105 $( CompileOperand (ArgInfo!i, TempDesc) 106 GenerateArg (i, TempDesc) 107 $) 108 Freevec (ArgInfo, Nargs - 1) 109 ArgInfo := Ai 110 StoreAll () 111 CompileOperand (F, TempDesc) 112 GenerateFnap (ResultDesc, TempDesc) 113 PutBackTemps (PT) 114 $) 115 and PreCheckArg (x, n) be 116 $( if ContainsFnap (x) do x := MakeCopy (x) 117 ArgInfo!n := x 118 $) 119 120 let TransSystemCall (x) be 121 $( test (x!0 & Right) = FNAP_S 122 then $( let Nargs = ListSize (x!2) 123 and Ai, PT = ArgInfo, PendingTemps 124 ArgInfo := Newvec (Nargs * 5) 125 WalkList (x!2, StoreSystemArg, 0) 126 ReserveSystemArglist (Nargs) 127 for i = 0 to Nargs - 1 do 128 $( let Info = lv ArgInfo!(i * 5) 129 and Arg, Offset, Type, Length = vec DescSize, vec DescSize, vec DescSize, vec DescSize 130 CompileOperand (Info!0, Arg) 131 test Info!1 = 0 132 then Offset := 0 133 or CompileOperand (Info!1, Offset) 134 CompileOperand (Info!2, Type) 135 test Info!3 = 0 136 then Length := 0 137 or CompileOperand (Info!3, Length) 138 GenerateSystemArg (i, Arg, Offset, Type, Length, Info!4) 139 $) 140 Freevec (ArgInfo, Nargs * 5) 141 ArgInfo := Ai 142 StoreAll () 143 let TempDesc = vec DescSize 144 CompileOperand (x!1, TempDesc) 145 GenerateSystemCall (TempDesc) 146 PutBackTemps (PT) 147 $) 148 or Transreport (BadCall, x) 149 $) 150 and StoreSystemArg (x, Ai) be 151 $( let TypeC, TypeE, LengthE, OffsetE = 1, 0, 0, 0 152 let String, Double = false, false 153 $( switchon x!0 & Right into 154 $( default: break 155 case FIXED_S: 156 TypeC := 1 157 endcase 158 case FLOAT_S: 159 TypeC := 3 160 endcase 161 case DOUBLE_S: 162 Double := true 163 endcase 164 case POINTER_S: 165 TypeC := 13 166 endcase 167 case TYPE_S: 168 TypeE := x!2 169 endcase 170 case CHAR_S: 171 LengthE := x!2 172 TypeC := 21 173 endcase 174 case BIT_S: 175 LengthE := x!2 176 TypeC := 19 177 endcase 178 case OFFSET_S: 179 OffsetE := x!2 180 endcase 181 case LENGTH_S: 182 LengthE := x!2 183 endcase 184 case STRING_S: 185 String := true 186 TypeC := 21 187 endcase 188 $) 189 x := x!1 190 $) repeat 191 192 if Double test TypeE = 0 & (TypeC = 1 | TypeC = 3) 193 then TypeC := TypeC + 1 194 or Transreport (BadDescriptors, x) 195 if TypeE = 0 do TypeE := List2 (CONSTANT_S, TypeC) 196 if String & LengthE = 0 then if (x!0 & Right) = STRINGCONST_S do 197 $( let v = vec Vmax 198 RemoveEscapes (x!1, v) 199 LengthE := List2 (CONSTANT_S, Length (v)) 200 $) 201 202 if ContainsFnap (x) do x := MakeCopy (x) 203 if OffsetE ne 0 then if ContainsFnap (OffsetE) do OffsetE := MakeCopy (OffsetE) 204 if ContainsFnap (TypeE) do TypeE := MakeCopy (TypeE) 205 if LengthE ne 0 then if ContainsFnap (LengthE) do LengthE := MakeCopy (LengthE) 206 let Info = lv ArgInfo!(Ai * 5) 207 Info!0, Info!1, Info!2, Info!3, Info!4 := x, OffsetE, TypeE, LengthE, String 208 $) CAE time 3.0, 202 source lines per second. cross reference table Addlocal bcpl_trans_head: 14 Ai bcpl_trans6: 98, 109, 123, 141, 150, 206 AllocateLocal bcpl_trans_head: 42, bcpl_trans6: 15, 56 AND_S bcpl_symbols: 8 Arg bcpl_trans6: 129, 130, 138 ArgInfo bcpl_trans_head: 77, bcpl_trans6: 98, 100, 105, 108, 109, 117, 123, 124, 128, 140, 141, 206 Args bcpl_trans6: 96, 97, 101 Assignlist bcpl_trans_head: 26 ASSIGN_S bcpl_symbols: 9 BadCall bcpl_trans_codes: 7, bcpl_trans6: 148 BadDescriptors bcpl_trans_codes: 8, bcpl_trans6: 194 BadLink bcpl_trans_codes: 9 BE_S bcpl_symbols: 10 BIT_S bcpl_symbols: 11, bcpl_trans6: 174 BreakLabel bcpl_trans_head: 78 BREAK_S bcpl_symbols: 12 BuildObject bcpl_compiler_head: 63 BY_S bcpl_symbols: 13 CAE bcpl_compiler_head: 55 CaeReport bcpl_compiler_head: 40 CALL_S bcpl_symbols: 14 CaseFirst bcpl_trans_head: 79 CaseList bcpl_trans_head: 80 CASE_S bcpl_symbols: 15 Cellwithname bcpl_trans_head: 19 CgFinish bcpl_trans_head: 74 CgInit bcpl_compiler_head: 62 CGreport bcpl_compiler_head: 42 Ch bcpl_compiler_head: 83 CHARCONST_S bcpl_symbols: 18, bcpl_trans6: 91 CHAR_S bcpl_symbols: 17, bcpl_trans6: 170 Checkdistinct bcpl_trans_head: 18 Cleanup bcpl_compiler_head: 52 COLON_S bcpl_symbols: 19 Column bcpl_compiler_head: 119 COMMA_S bcpl_symbols: 20 CompareStrings bcpl_compiler_head: 16 CompileExpression bcpl_trans_head: 30, bcpl_trans6: 65 CompileOperand bcpl_trans_head: 31, bcpl_trans6: 105, 111, 130, 133, 134, 137, 144 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_trans6: 78 Conformality bcpl_trans_codes: 10 CONSTANT_S bcpl_symbols: 22, bcpl_trans6: 91, 195, 199 CONSTDEF_S bcpl_symbols: 23 ContainsFnap bcpl_trans6: 76, 82, 88, 89, 99, 116, 202, 203, 204, 205 ConvertNtoS bcpl_compiler_head: 19 ConvertStoN bcpl_compiler_head: 18 CountTemporaries bcpl_trans_head: 38 Crep bcpl_compiler_head: 89 DeallocateLocal bcpl_trans_head: 43, bcpl_trans6: 25, 31 Declitem bcpl_trans_head: 15 Decllabels bcpl_trans_head: 17 Declnames bcpl_trans_head: 16 DefaultLabel bcpl_trans_head: 81 DEFAULT_S bcpl_symbols: 24 DefList bcpl_trans_head: 82 DescSize bcpl_trans_head: 108, bcpl_trans6: 103, 129, 129, 129, 129, 143 DictionaryEntry bcpl_compiler_head: 118 DIV_F bcpl_symbols: 25, bcpl_trans6: 85 DIV_S bcpl_symbols: 27, bcpl_trans6: 85 Double bcpl_trans6: 152, 162, 192 DOUBLE_S bcpl_symbols: 29, bcpl_trans6: 161 DO_S bcpl_symbols: 28 DupDefault bcpl_trans_codes: 11 DupName bcpl_trans_codes: 12 DvecC bcpl_trans_head: 83 DvecP bcpl_trans_head: 84 DvecSize bcpl_trans_head: 109 EndcaseLabel bcpl_trans_head: 85 ENDCASE_S bcpl_symbols: 30 Endofstreamch bcpl_compiler_head: 126 ENDPROG_S bcpl_symbols: 31 EnterIntoCrossreference bcpl_compiler_head: 48 EnvBase bcpl_trans_head: 87 EqualString bcpl_compiler_head: 15 EQV_S bcpl_symbols: 35, bcpl_trans6: 86 EQ_F bcpl_symbols: 33 EQ_S bcpl_symbols: 34 Errorsw bcpl_compiler_head: 115 ERROR_S bcpl_symbols: 32 Evalconst bcpl_trans_head: 34 EvaluateOperator bcpl_trans_head: 37 Even bcpl_compiler_head: 127 EXTERNAL_S bcpl_symbols: 37 F bcpl_trans6: 96, 99, 99, 99, 111 FALSE_S bcpl_symbols: 38, bcpl_trans6: 92 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_trans6: 155 FLOAT_S bcpl_symbols: 41, bcpl_trans6: 158 FNAP_S bcpl_symbols: 42, bcpl_trans6: 78, 121 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 FreeLocalList bcpl_trans_head: 88, bcpl_trans6: 17, 18, 18, 19, 33, 34, 45, 72, 73 FreeVar bcpl_trans_codes: 13 Freevec bcpl_compiler_head: 25, bcpl_trans6: 20, 50, 108, 140 GenerateArg bcpl_trans_head: 55, bcpl_trans6: 106 GenerateClaimResult bcpl_trans_head: 62 GenerateDiadicConditional bcpl_trans_head: 70 GenerateDiadicOperator bcpl_trans_head: 67 GenerateFinish bcpl_trans_head: 64 GenerateFnap bcpl_trans_head: 56, bcpl_trans6: 112 GenerateGoto bcpl_trans_head: 63 GenerateJump bcpl_trans_head: 51 GenerateLabel bcpl_trans_head: 50 GenerateLineNumber bcpl_trans_head: 72 GenerateMonadicConditional bcpl_trans_head: 69 GenerateMonadicOperator bcpl_trans_head: 66 GenerateOffsetOperator bcpl_trans_head: 68 GenerateResultBlock bcpl_trans_head: 60 GenerateResultValue bcpl_trans_head: 61 GenerateRtdefBegin bcpl_trans_head: 52 GenerateRtdefEnd bcpl_trans_head: 53 GenerateSSP bcpl_trans_head: 71, bcpl_trans6: 44 GenerateSwitch bcpl_trans_head: 65 GenerateSystemArg bcpl_trans_head: 58, bcpl_trans6: 138 GenerateSystemCall bcpl_trans_head: 59, bcpl_trans6: 145 GetStream bcpl_compiler_head: 53 GetVersion bcpl_compiler_head: 50 GET_S bcpl_symbols: 48 GE_F bcpl_symbols: 45 GE_S bcpl_symbols: 47 GlobalTemp bcpl_compiler_head: 122 GLOBAL_S bcpl_symbols: 49 GOTO_S bcpl_symbols: 50 GR_F bcpl_symbols: 51 GR_S bcpl_symbols: 52 HaveListingFile bcpl_compiler_head: 96 i bcpl_trans6: 104, 105, 106, 127, 128, 138 IFNOT_S bcpl_symbols: 54 IFSO_S bcpl_symbols: 55 IF_S bcpl_symbols: 53 Info bcpl_trans6: 128, 130, 131, 133, 134, 135, 137, 138, 206, 207, 207, 207, 207, 207 INPUT bcpl_compiler_head: 81 InsideRtdef bcpl_trans_head: 89 INTO_S bcpl_symbols: 57 IsConst bcpl_trans_head: 36 IsRelational bcpl_trans_head: 39 LABDEF_S bcpl_symbols: 58 LABEL_S bcpl_symbols: 59 Left bcpl_compiler_head: 125 Length bcpl_compiler_head: 20, bcpl_trans6: 129, 136, 137, 138, 199 LengthE bcpl_trans6: 151, 171, 175, 182, 196, 199, 205, 205, 205, 205, 207 LengthInWords bcpl_compiler_head: 21 LENGTH_S bcpl_symbols: 62, bcpl_trans6: 181 LET_S bcpl_symbols: 63 LexInit bcpl_compiler_head: 56 LE_F bcpl_symbols: 60 LE_S bcpl_symbols: 61 LHSpointer bcpl_trans_head: 90 LineCount bcpl_compiler_head: 114 LineMap bcpl_compiler_head: 91 LineMask bcpl_compiler_head: 129 List1 bcpl_compiler_head: 26 List2 bcpl_compiler_head: 27, bcpl_trans6: 195, 199 List3 bcpl_compiler_head: 28 List4 bcpl_compiler_head: 29 List5 bcpl_compiler_head: 30 List6 bcpl_compiler_head: 31 Listing bcpl_compiler_head: 86 ListSize bcpl_trans_head: 25, bcpl_trans6: 97, 122 LIST_S bcpl_symbols: 64, bcpl_trans6: 78 LmodeRequired bcpl_trans_codes: 14 LOCAL_S bcpl_symbols: 65, bcpl_trans6: 64 LOGAND_S bcpl_symbols: 67, bcpl_trans6: 86 LOGOR_S bcpl_symbols: 68, bcpl_trans6: 86 LoopFlag bcpl_trans_head: 91 LoopLabel bcpl_trans_head: 92 LOOP_S bcpl_symbols: 69 LSHIFT_S bcpl_symbols: 72, bcpl_trans6: 87 LS_F bcpl_symbols: 70 LS_S bcpl_symbols: 71 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_trans6: 81 LV_STATIC bcpl_symbols: 80 LV_TEMP bcpl_symbols: 81 Machine bcpl_compiler_head: 93 MAIN_S bcpl_symbols: 82 MakeCopy bcpl_trans_head: 45, bcpl_trans6: 62, 99, 116, 202, 203, 204, 205 MakeTemp bcpl_trans_head: 44, bcpl_trans6: 55, 63 MakeTimeString bcpl_compiler_head: 35 MANIFEST_S bcpl_symbols: 83 MINUS_F bcpl_symbols: 84, bcpl_trans6: 84 MINUS_S bcpl_symbols: 85, bcpl_trans6: 84 MONITOR bcpl_compiler_head: 82 MULT_F bcpl_symbols: 87, bcpl_trans6: 85 MULT_S bcpl_symbols: 88, bcpl_trans6: 85 n bcpl_trans6: 15, 16, 28, 115, 117 NAMECHAIN bcpl_compiler_head: 116 NAME_S bcpl_symbols: 89, bcpl_trans6: 91 Nargs bcpl_trans6: 97, 100, 102, 104, 108, 122, 124, 126, 127, 140 NegVector bcpl_trans_codes: 15 NEG_F bcpl_symbols: 90, bcpl_trans6: 81 NEG_S bcpl_symbols: 91, bcpl_trans6: 81 NEQV_S bcpl_symbols: 92, bcpl_trans6: 86 New bcpl_trans6: 32, 33, 33, 33, 34, 57, 58, 58, 58, 59, 60 Newvec bcpl_compiler_head: 24, bcpl_trans6: 32, 57, 100, 124 Nextparam bcpl_compiler_head: 36 Nextsymb bcpl_compiler_head: 44 NE_F bcpl_symbols: 93 NE_S bcpl_symbols: 94 NIL_S bcpl_symbols: 95, bcpl_trans6: 92 NoLoop bcpl_trans_codes: 17 NoSwitch bcpl_trans_codes: 18 NotConstant bcpl_trans_codes: 19 NotInsideRtdef bcpl_trans_codes: 20 NotName bcpl_trans_codes: 21 NOT_S bcpl_symbols: 97, bcpl_trans6: 81 NoValof bcpl_trans_codes: 22 NUMBER_S bcpl_symbols: 98, bcpl_trans6: 91 OcodeSw bcpl_compiler_head: 95 Offset bcpl_trans6: 129, 132, 133, 138 OffsetE bcpl_trans6: 151, 179, 203, 203, 203, 203, 207 OFFSET_S bcpl_symbols: 99, bcpl_trans6: 178 Old bcpl_trans6: 70, 72, 73 Optimize bcpl_compiler_head: 92 OptionString bcpl_compiler_head: 106 OR_S bcpl_symbols: 100 OUTPUT bcpl_compiler_head: 80 P bcpl_trans6: 63, 64, 65, 66 p bcpl_trans6: 18, 21, 27, 28, 29, 31, 33, 36, 39, 39, 42, 43 Packstring bcpl_compiler_head: 12 PartialEvalconst bcpl_trans_head: 35 PendingTemps bcpl_trans_head: 93, bcpl_trans6: 37, 58, 59, 69, 69, 70, 71, 71, 98, 123 Plist bcpl_compiler_head: 59 PLUS_F bcpl_symbols: 101, bcpl_trans6: 84 PLUS_S bcpl_symbols: 102, bcpl_trans6: 84 Pname bcpl_compiler_head: 58 POINTER_S bcpl_symbols: 103, bcpl_trans6: 164 PopInput bcpl_compiler_head: 34 POS_F bcpl_symbols: 104, bcpl_trans6: 81 POS_S bcpl_symbols: 105, bcpl_trans6: 81 PPrep bcpl_compiler_head: 88 PreCheckArg bcpl_trans6: 101, 115 ProgramName bcpl_compiler_head: 110 PT bcpl_trans6: 68, 69, 98, 113, 123, 146 PushInput bcpl_compiler_head: 33 PutBackTemps bcpl_trans_head: 46, bcpl_trans6: 68, 113, 146 QuietSw bcpl_compiler_head: 97 RandomI bcpl_compiler_head: 22 RBRA_S bcpl_symbols: 107 Readch bcpl_compiler_head: 7 REGISTER_S bcpl_symbols: 108 REL_S bcpl_symbols: 109, bcpl_trans6: 78 RemoveEscapes bcpl_compiler_head: 14, bcpl_trans6: 198 Removenames bcpl_trans_head: 20 REM_S bcpl_symbols: 110, bcpl_trans6: 86 REPEATUNTIL_S bcpl_symbols: 113 REPEATWHILE_S bcpl_symbols: 114 REPEAT_S bcpl_symbols: 112 REP_S bcpl_symbols: 111 ReserveArglist bcpl_trans_head: 54, bcpl_trans6: 102 ReserveSystemArglist bcpl_trans_head: 57, bcpl_trans6: 126 ResetSSP bcpl_trans_head: 41, bcpl_trans6: 24, 28, 36 ResultDesc bcpl_trans6: 96, 112 RESULTIS_S bcpl_symbols: 115 ReturnLabel bcpl_trans_head: 94 RETURN_S bcpl_symbols: 117 Right bcpl_compiler_head: 125, bcpl_trans6: 77, 121, 153, 196 RKET_S bcpl_symbols: 118 RSHIFT_S bcpl_symbols: 119, bcpl_trans6: 87 RTAP_S bcpl_symbols: 120 RtdefList bcpl_trans_head: 95 RtdefNesting bcpl_trans_head: 97 RTDEF_S bcpl_symbols: 121 RV_S bcpl_symbols: 122, bcpl_trans6: 81 SBRA_S bcpl_symbols: 123 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 SetResult bcpl_trans_head: 32 SKET_S bcpl_symbols: 130 SSP bcpl_trans_head: 98, bcpl_trans6: 23, 24, 25, 27, 42, 43, 44, 48 StaticAllocationCounter bcpl_trans_head: 99 StaticFirst bcpl_trans_head: 100 StaticList bcpl_trans_head: 101 STATIC_S bcpl_symbols: 131 StoreAll bcpl_trans_head: 73, bcpl_trans6: 110, 142 StoreString bcpl_compiler_head: 32 StoreSystemArg bcpl_trans6: 125, 150 String bcpl_trans6: 152, 185, 196, 207 STRINGCONST_S bcpl_symbols: 133, bcpl_trans6: 91, 196 STRING_S bcpl_symbols: 132, bcpl_trans6: 184 STRUCTURE_S bcpl_symbols: 134 SwitchFlag bcpl_trans_head: 102 SWITCHON_S bcpl_symbols: 135 Symb bcpl_compiler_head: 117 SymbolName bcpl_compiler_head: 46 Symbols bcpl_compiler_head: 90 t bcpl_trans6: 18, 19, 20, 37, 38, 39, 39, 40, 40, 45, 46, 47, 49, 52 TableCell bcpl_trans_head: 103 TABLE_S bcpl_symbols: 137, bcpl_trans6: 92 Target bcpl_trans_head: 27 Temp bcpl_trans6: 56, 58 TempDesc bcpl_trans6: 103, 105, 106, 111, 112, 143, 144, 145 TEMP_S bcpl_symbols: 138, bcpl_trans6: 58 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 Transbody bcpl_trans_head: 11 TransConditional bcpl_trans_head: 22 Transdef bcpl_trans_head: 13 TransFnap bcpl_trans_head: 47, bcpl_trans6: 96 TransFor bcpl_trans_head: 23 TransLoop bcpl_trans_head: 28 Transreport bcpl_compiler_head: 41, bcpl_trans6: 148, 194 TransSystemCall bcpl_trans_head: 48, bcpl_trans6: 120 TRUE_S bcpl_symbols: 141, bcpl_trans6: 92 Type bcpl_trans6: 129, 134, 138 TypeC bcpl_trans6: 151, 156, 159, 165, 172, 176, 186, 192, 192, 193, 193, 195 TypeE bcpl_trans6: 151, 168, 192, 195, 195, 204, 204, 204, 207 TYPE_S bcpl_symbols: 142, bcpl_trans6: 167 u bcpl_trans6: 47, 48, 49, 50, 52 UndefName bcpl_trans_codes: 23 UnexpectedCase bcpl_compiler_head: 130 UNLESS_S bcpl_symbols: 143 Unpackstring bcpl_compiler_head: 13 UnrecognizedExpression bcpl_trans_codes: 24 UNTIL_S bcpl_symbols: 144 UpperCase bcpl_compiler_head: 87 UserID bcpl_compiler_head: 111 UtilitiesInit bcpl_compiler_head: 51 v bcpl_trans6: 197, 198, 199 VALDEF_S bcpl_symbols: 145 ValofFlag bcpl_trans_head: 104 ValofLabel bcpl_trans_head: 105 VALOF_S bcpl_symbols: 147, bcpl_trans6: 78 VECAP_S bcpl_symbols: 149, bcpl_trans6: 87 VEC_S bcpl_symbols: 148 Vmax bcpl_compiler_head: 128, bcpl_trans6: 197 WalkList bcpl_trans_head: 24, bcpl_trans6: 101, 125 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 x bcpl_trans6: 62, 65, 76, 77, 82, 88, 89, 115, 116, 116, 116, 117, 120, 121, 122, 125, 144, 148, 150, 153, 168, 171, 175, 179, 182, 189, 189, 194, 196, 198, 202, 202, 202, 207 Xref bcpl_compiler_head: 94 Trans time 1.0, 1384 object words per second. " Begin text of DeallocateLocal aa 000000 000017 104145 zero 15,34917 " DeallocateLocal aa 000001 141154 154157 zero 49772,55407 aa 000002 143141 164145 zero 50785,59493 aa 000003 114157 143141 zero 39023,50785 aa 000004 154000 000000 zero 55296 L2: aa 000005 000000 213000 31 epaq 0 " set lp to linkage section aa 000006 700026 764161 lprplp sb|22,*au aa 000007 200000 021100 adlx1 bp|0 " BCPL save aa 000010 700000 542111 sprpbp sb|0,x1 aa 000011 700001 544111 sprplp sb|1,x1 aa 000012 700422 620111 eax0 sb|274,x1 aa 000013 777760 360003 anx0 -16,du aa 000014 700025 740100 stx0 sb|21 aa 000015 600023 740100 stx0 sp|19 " end of save sequence aa 000016 000002 236007 32 ldq 2,dl " 2 aa 000017 700012 756111 stq sb|10,x1 4a 000020 400052 272120 tsbbp lp|L10,* " Newvec aa 000021 000010 000001 zero 8,1 aa 000022 700003 756111 stq sb|3,x1 " New aa 000023 700003 760111 33 lprpap sb|3,x1 " New aa 000024 000000 450100 stz ap|0 aa 000025 700002 236111 ldq sb|2,x1 " p aa 000026 700003 762111 lprpbp sb|3,x1 " New aa 000027 200001 756100 stq bp|1 aa 000030 600405 236100 ldq sp|261 " FreeLocalList aa 000031 700003 761111 lprpab sb|3,x1 " New aa 000032 100002 756100 stq ab|2 aa 000033 700003 236111 34 ldq sb|3,x1 " New aa 000034 600405 756100 stq sp|261 " FreeLocalList L9: aa 000035 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000036 200000 121100 sblx1 bp|0 aa 000037 700001 764111 lprplp sb|1,x1 aa 000040 200001 710100 tra bp|1 " end of return sequence " Begin text of MakeTemp aa 000041 000010 115141 zero 8,39521 " MakeTemp aa 000042 153145 124145 zero 54885,43109 aa 000043 155160 000000 zero 55920 L4: aa 000044 000000 213000 55 epaq 0 " set lp to linkage section aa 000045 700026 764161 lprplp sb|22,*au aa 000046 200000 021100 adlx1 bp|0 " BCPL save aa 000047 700000 542111 sprpbp sb|0,x1 aa 000050 700001 544111 sprplp sb|1,x1 aa 000051 700422 620111 eax0 sb|274,x1 aa 000052 777760 360003 anx0 -16,du aa 000053 700025 740100 stx0 sb|21 aa 000054 600023 740100 stx0 sp|19 " end of save sequence aa 000055 000001 236007 56 ldq 1,dl " 1 aa 000056 700012 756111 stq sb|10,x1 aa 000057 000240 272004 tsbbp L1+2 " AllocateLocal aa 000060 000010 000001 zero 8,1 aa 000061 700003 756111 stq sb|3,x1 " Temp aa 000062 000002 236007 57 ldq 2,dl " 2 aa 000063 700012 756111 stq sb|10,x1 4a 000064 400052 272120 tsbbp lp|L10,* " Newvec aa 000065 000010 000001 zero 8,1 aa 000066 700004 756111 stq sb|4,x1 " New aa 000067 600412 236100 58 ldq sp|266 " PendingTemps aa 000070 700004 763111 lprpbb sb|4,x1 " New aa 000071 300002 756100 stq bb|2 aa 000072 000203 236007 ldq 131,dl " TEMP_S aa 000073 700004 765111 lprplb sb|4,x1 " New aa 000074 500000 756100 stq lb|0 aa 000075 700003 236111 ldq sb|3,x1 " Temp aa 000076 700004 760111 lprpap sb|4,x1 " New aa 000077 000001 756100 stq ap|1 aa 000100 700004 236111 59 ldq sb|4,x1 " New aa 000101 600412 756100 stq sp|266 " PendingTemps aa 000102 700004 236111 60 ldq sb|4,x1 " New L13: aa 000103 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000104 200000 121100 sblx1 bp|0 aa 000105 700001 764111 lprplp sb|1,x1 aa 000106 200001 710100 tra bp|1 " end of return sequence " Begin text of MakeCopy aa 000107 000010 115141 zero 8,39521 " MakeCopy aa 000110 153145 103157 zero 54885,34415 aa 000111 160171 000000 zero 57465 L5: aa 000112 000000 213000 62 epaq 0 " set lp to linkage section aa 000113 700026 764161 lprplp sb|22,*au aa 000114 200000 021100 adlx1 bp|0 " BCPL save aa 000115 700000 542111 sprpbp sb|0,x1 aa 000116 700001 544111 sprplp sb|1,x1 aa 000117 700423 620111 eax0 sb|275,x1 aa 000120 777760 360003 anx0 -16,du aa 000121 700025 740100 stx0 sb|21 aa 000122 600023 740100 stx0 sp|19 " end of save sequence aa 000123 777723 272004 63 tsbbp L4+2 " MakeTemp aa 000124 000006 000000 zero 6 aa 000125 700004 756111 stq sb|4,x1 " P aa 000126 000072 236007 64 ldq 58,dl " LOCAL_S aa 000127 700004 762111 lprpbp sb|4,x1 " P aa 000130 200000 756100 stq bp|0 aa 000131 700004 236111 65 ldq sb|4,x1 " P aa 000132 700010 756111 stq sb|8,x1 aa 000133 700002 236111 ldq sb|2,x1 " x aa 000134 700011 756111 stq sb|9,x1 4a 000135 400050 272120 tsbbp lp|L17,* " CompileExpression aa 000136 000006 000002 zero 6,2 aa 000137 700004 236111 66 ldq sb|4,x1 " P L16: aa 000140 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000141 200000 121100 sblx1 bp|0 aa 000142 700001 764111 lprplp sb|1,x1 aa 000143 200001 710100 tra bp|1 " end of return sequence " Begin text of PutBackTemps aa 000144 000014 120165 zero 12,41077 " PutBackTemps aa 000145 164102 141143 zero 59458,49763 aa 000146 153124 145155 zero 54868,51821 aa 000147 160163 000000 zero 57459 L6: aa 000150 000000 213000 68 epaq 0 " set lp to linkage section aa 000151 700026 764161 lprplp sb|22,*au aa 000152 200000 021100 adlx1 bp|0 " BCPL save aa 000153 700000 542111 sprpbp sb|0,x1 aa 000154 700001 544111 sprplp sb|1,x1 aa 000155 700417 620111 eax0 sb|271,x1 aa 000156 777760 360003 anx0 -16,du aa 000157 700025 740100 stx0 sb|21 aa 000160 600023 740100 stx0 sp|19 " end of save sequence aa 000161 000013 710004 69 tra L21 L22: aa 000162 600412 236100 70 ldq sp|266 " PendingTemps aa 000163 700003 756111 stq sb|3,x1 " Old aa 000164 600412 761100 71 lprpab sp|266 " PendingTemps aa 000165 100002 236100 ldq ab|2 aa 000166 600412 756100 stq sp|266 " PendingTemps aa 000167 600405 236100 72 ldq sp|261 " FreeLocalList aa 000170 700003 763111 lprpbb sb|3,x1 " Old aa 000171 300002 756100 stq bb|2 aa 000172 700003 236111 73 ldq sb|3,x1 " Old aa 000173 600405 756100 stq sp|261 " FreeLocalList L21: aa 000174 600412 236100 ldq sp|266 " PendingTemps aa 000175 700002 116111 cmpq sb|2,x1 " PT aa 000176 000003 600004 tze L23 aa 000177 600412 234100 szn sp|266 " PendingTemps aa 000200 777762 601004 tnz L22 L23: L20: aa 000201 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000202 200000 121100 sblx1 bp|0 aa 000203 700001 764111 lprplp sb|1,x1 aa 000204 200001 710100 tra bp|1 " end of return sequence " Begin text of ResetSSP aa 000205 000010 122145 zero 8,42085 " ResetSSP aa 000206 163145 164123 zero 58981,59475 aa 000207 123120 000000 zero 42576 L3: aa 000210 000000 213000 36 epaq 0 " set lp to linkage section aa 000211 700026 764161 lprplp sb|22,*au aa 000212 200000 021100 adlx1 bp|0 " BCPL save aa 000213 700000 542111 sprpbp sb|0,x1 aa 000214 700001 544111 sprplp sb|1,x1 aa 000215 700423 620111 eax0 sb|275,x1 aa 000216 777760 360003 anx0 -16,du aa 000217 700025 740100 stx0 sb|21 aa 000220 600023 740100 stx0 sp|19 " end of save sequence aa 000221 600412 235100 37 lda sp|266 " PendingTemps aa 000222 700003 755111 sta sb|3,x1 " t aa 000223 000014 710004 38 tra L27 L28: aa 000224 700003 765111 39 lprplb sb|3,x1 " t aa 000225 500001 235100 lda lb|1 aa 000226 700002 115111 cmpa sb|2,x1 " p aa 000227 000005 604004 tmi L29 aa 000230 700003 760111 lprpap sb|3,x1 " t aa 000231 000001 236100 ldq ap|1 aa 000232 000001 076007 adq 1,dl " 1 aa 000233 700002 756111 stq sb|2,x1 " p L29: aa 000234 700003 762111 40 lprpbp sb|3,x1 " t aa 000235 200002 236100 ldq bp|2 aa 000236 700003 756111 stq sb|3,x1 " t L27: aa 000237 700003 234111 szn sb|3,x1 " t aa 000240 777764 601004 tnz L28 aa 000241 700002 236111 42 ldq sb|2,x1 " p aa 000242 600417 116100 cmpq sp|271 " SSP aa 000243 000042 600004 tze L26 aa 000244 700002 235111 43 lda sb|2,x1 " p aa 000245 600417 755100 sta sp|271 " SSP aa 000246 600417 235100 44 lda sp|271 " SSP aa 000247 700010 755111 sta sb|8,x1 4a 000250 400046 272120 tsbbp lp|L30,* " GenerateSSP aa 000251 000006 000001 zero 6,1 aa 000252 600405 351500 45 eapab sp|261 " FreeLocalList aa 000253 700003 541111 sprpab sb|3,x1 " t aa 000254 000026 710004 46 tra L31 L32: aa 000255 700003 761111 47 lprpab sb|3,x1 " t aa 000256 100000 235100 lda ab|0 aa 000257 700004 755111 sta sb|4,x1 " u aa 000260 700004 763111 48 lprpbb sb|4,x1 " u aa 000261 300001 235100 lda bb|1 aa 000262 600417 115100 cmpa sp|271 " SSP aa 000263 000014 604004 tmi L34 aa 000264 700004 765111 49 lprplb sb|4,x1 " u aa 000265 500002 236100 ldq lb|2 aa 000266 700003 760111 lprpap sb|3,x1 " t aa 000267 000000 756100 stq ap|0 " t aa 000270 700004 236111 50 ldq sb|4,x1 " u aa 000271 700010 756111 stq sb|8,x1 aa 000272 000002 236007 ldq 2,dl " 2 aa 000273 700011 756111 stq sb|9,x1 4a 000274 400044 272120 tsbbp lp|L35,* " Freevec aa 000275 000006 000002 zero 6,2 aa 000276 000004 710004 tra L33 L34: aa 000277 700004 762111 52 lprpbp sb|4,x1 " u aa 000300 200002 352100 eapbp bp|2 aa 000301 700003 542111 sprpbp sb|3,x1 " t L33: L31: aa 000302 700003 762111 lprpbp sb|3,x1 " t aa 000303 200000 234100 szn bp|0 aa 000304 777751 601004 tnz L32 L26: aa 000305 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000306 200000 121100 sblx1 bp|0 aa 000307 700001 764111 lprplp sb|1,x1 aa 000310 200001 710100 tra bp|1 " end of return sequence " Begin text of AllocateLocal aa 000311 000015 101154 zero 13,33388 " AllocateLocal aa 000312 154157 143141 zero 55407,50785 aa 000313 164145 114157 zero 59493,39023 aa 000314 143141 154000 zero 50785,55296 L1: aa 000315 000000 213000 15 epaq 0 " set lp to linkage section aa 000316 700026 764161 lprplp sb|22,*au aa 000317 200000 021100 adlx1 bp|0 " BCPL save aa 000320 700000 542111 sprpbp sb|0,x1 aa 000321 700001 544111 sprplp sb|1,x1 aa 000322 700423 620111 eax0 sb|275,x1 aa 000323 777760 360003 anx0 -16,du aa 000324 700025 740100 stx0 sb|21 aa 000325 600023 740100 stx0 sp|19 " end of save sequence aa 000326 700002 236111 16 ldq sb|2,x1 " n aa 000327 000001 116007 cmpq 1,dl " 1 aa 000330 000024 601004 tnz L40 aa 000331 600405 234100 17 szn sp|261 " FreeLocalList aa 000332 000021 600004 tze L41 aa 000333 600405 761100 18 lprpab sp|261 " FreeLocalList aa 000334 100001 235100 lda ab|1 aa 000335 700004 755111 sta sb|4,x1 " p aa 000336 600405 235100 lda sp|261 " FreeLocalList aa 000337 700005 755111 sta sb|5,x1 " t aa 000340 700005 763111 19 lprpbb sb|5,x1 " t aa 000341 300002 235100 lda bb|2 aa 000342 600405 755100 sta sp|261 " FreeLocalList aa 000343 700005 235111 20 lda sb|5,x1 " t aa 000344 700010 755111 sta sb|8,x1 aa 000345 000002 235007 lda 2,dl " 2 aa 000346 700011 755111 sta sb|9,x1 4a 000347 400044 272120 tsbbp lp|L35,* " Freevec aa 000350 000006 000002 zero 6,2 aa 000351 700004 235111 21 lda sb|4,x1 " p aa 000352 000030 710004 tra L38 L41: aa 000353 000017 710004 tra L39 L40: aa 000354 600417 236100 23 ldq sp|271 " SSP aa 000355 000002 506007 div 2,dl " 2 aa 000356 000000 115007 cmpa 0,dl aa 000357 000013 600004 tze L42 aa 000360 600417 235100 24 lda sp|271 " SSP aa 000361 000001 075007 ada 1,dl " 1 aa 000362 700010 755111 sta sb|8,x1 aa 000363 777627 272004 tsbbp L3+2 " ResetSSP aa 000364 000006 000001 zero 6,1 aa 000365 600417 235100 25 lda sp|271 " SSP aa 000366 000001 175007 sba 1,dl " 1 aa 000367 700010 755111 sta sb|8,x1 aa 000370 777417 272004 tsbbp L2+2 " DeallocateLocal aa 000371 000006 000001 zero 6,1 L42: L39: aa 000372 600417 235100 27 lda sp|271 " SSP aa 000373 700004 755111 sta sb|4,x1 " p aa 000374 700004 235111 28 lda sb|4,x1 " p aa 000375 700002 075111 ada sb|2,x1 " n aa 000376 700010 755111 sta sb|8,x1 aa 000377 777613 272004 tsbbp L3+2 " ResetSSP aa 000400 000006 000001 zero 6,1 aa 000401 700004 235111 29 lda sb|4,x1 " p L38: aa 000402 000044 777000 llr 36 " exchange A and Q aa 000403 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000404 200000 121100 sblx1 bp|0 aa 000405 700001 764111 lprplp sb|1,x1 aa 000406 200001 710100 tra bp|1 " end of return sequence " Begin text of ContainsFnap aa 000407 000014 103157 zero 12,34415 " ContainsFnap aa 000410 156164 141151 zero 56436,49769 aa 000411 156163 106156 zero 56435,35950 aa 000412 141160 000000 zero 49776 L43: aa 000413 000000 213000 76 epaq 0 " set lp to linkage section aa 000414 700026 764161 lprplp sb|22,*au aa 000415 200000 021100 adlx1 bp|0 " BCPL save aa 000416 700000 542111 sprpbp sb|0,x1 aa 000417 700001 544111 sprplp sb|1,x1 aa 000420 700422 620111 eax0 sb|274,x1 aa 000421 777760 360003 anx0 -16,du aa 000422 700025 740100 stx0 sb|21 aa 000423 600023 740100 stx0 sp|19 " end of save sequence aa 000424 000032 710004 78 tra L48 L49: L50: aa 000425 000001 336007 79 lcq 1,dl " true aa 000426 000244 710004 81 tra L46 L51: aa 000427 700002 765111 82 lprplb sb|2,x1 " x aa 000430 500001 235100 lda lb|1 aa 000431 700012 755111 sta sb|10,x1 aa 000432 777763 272004 tsbbp L43+2 " ContainsFnap aa 000433 000010 000001 zero 8,1 aa 000434 000236 710004 84 tra L46 L52: aa 000435 700002 760111 88 lprpap sb|2,x1 " x aa 000436 000001 236100 ldq ap|1 aa 000437 700012 756111 stq sb|10,x1 aa 000440 777755 272004 tsbbp L43+2 " ContainsFnap aa 000441 000010 000001 zero 8,1 aa 000442 000000 116007 cmpq 0,dl aa 000443 000003 600004 tze L53 aa 000444 000001 336007 lcq 1,dl " true aa 000445 000225 710004 tra L46 L53: aa 000446 700002 762111 89 lprpbp sb|2,x1 " x aa 000447 200002 235100 lda bp|2 aa 000450 700012 755111 sta sb|10,x1 aa 000451 777744 272004 tsbbp L43+2 " ContainsFnap aa 000452 000010 000001 zero 8,1 aa 000453 000217 710004 91 tra L46 L54: aa 000454 000000 236007 93 ldq 0,dl " false aa 000455 000215 710004 tra L46 L48: aa 000456 700002 761111 lprpab sb|2,x1 " x aa 000457 100000 235100 lda ab|0 aa 000460 777777 375007 ana -1,dl " Right " Begin switchon aa 000461 000013 175007 sba 11,dl aa 000462 000204 115007 cmpa 132,dl aa 000463 777742 603004 trc L50 0a 000464 000466 710005 tra L55,al aa 000465 700004 755111 sta sb|4,x1 " temporary L55: aa 000466 777766 710004 tra L54 aa 000467 777736 710004 tra L50 aa 000470 777735 710004 tra L50 aa 000471 777734 710004 tra L49 aa 000472 777762 710004 tra L54 aa 000473 777732 710004 tra L50 aa 000474 777731 710004 tra L50 aa 000475 777740 710004 tra L52 aa 000476 777727 710004 tra L50 aa 000477 777736 710004 tra L52 aa 000500 777725 710004 tra L50 aa 000501 777724 710004 tra L50 aa 000502 777723 710004 tra L50 aa 000503 777722 710004 tra L50 aa 000504 777721 710004 tra L50 aa 000505 777720 710004 tra L50 aa 000506 777717 710004 tra L50 aa 000507 777726 710004 tra L52 aa 000510 777715 710004 tra L50 aa 000511 777714 710004 tra L50 aa 000512 777742 710004 tra L54 aa 000513 777712 710004 tra L50 aa 000514 777711 710004 tra L50 aa 000515 777710 710004 tra L50 aa 000516 777707 710004 tra L49 aa 000517 777706 710004 tra L50 aa 000520 777705 710004 tra L50 aa 000521 777704 710004 tra L50 aa 000522 777703 710004 tra L50 aa 000523 777702 710004 tra L50 aa 000524 777701 710004 tra L50 aa 000525 777700 710004 tra L50 aa 000526 777677 710004 tra L50 aa 000527 777676 710004 tra L50 aa 000530 777675 710004 tra L50 aa 000531 777674 710004 tra L50 aa 000532 777673 710004 tra L50 aa 000533 777672 710004 tra L50 aa 000534 777671 710004 tra L50 aa 000535 777670 710004 tra L50 aa 000536 777667 710004 tra L50 aa 000537 777666 710004 tra L50 aa 000540 777665 710004 tra L50 aa 000541 777664 710004 tra L50 aa 000542 777663 710004 tra L50 aa 000543 777662 710004 tra L50 aa 000544 777661 710004 tra L49 aa 000545 777660 710004 tra L50 aa 000546 777657 710004 tra L50 aa 000547 777666 710004 tra L52 aa 000550 777665 710004 tra L52 aa 000551 777654 710004 tra L50 aa 000552 777653 710004 tra L50 aa 000553 777652 710004 tra L50 aa 000554 777661 710004 tra L52 aa 000555 777652 710004 tra L51 aa 000556 777647 710004 tra L50 aa 000557 777646 710004 tra L50 aa 000560 777645 710004 tra L50 aa 000561 777644 710004 tra L50 aa 000562 777643 710004 tra L50 aa 000563 777642 710004 tra L50 aa 000564 777641 710004 tra L50 aa 000565 777640 710004 tra L50 aa 000566 777637 710004 tra L50 aa 000567 777636 710004 tra L50 aa 000570 777645 710004 tra L52 aa 000571 777644 710004 tra L52 aa 000572 777633 710004 tra L50 aa 000573 777642 710004 tra L52 aa 000574 777641 710004 tra L52 aa 000575 777657 710004 tra L54 aa 000576 777631 710004 tra L51 aa 000577 777630 710004 tra L51 aa 000600 777635 710004 tra L52 aa 000601 777624 710004 tra L50 aa 000602 777623 710004 tra L50 aa 000603 777651 710004 tra L54 aa 000604 777621 710004 tra L50 aa 000605 777622 710004 tra L51 aa 000606 777646 710004 tra L54 aa 000607 777616 710004 tra L50 aa 000610 777615 710004 tra L50 aa 000611 777624 710004 tra L52 aa 000612 777623 710004 tra L52 aa 000613 777612 710004 tra L50 aa 000614 777613 710004 tra L51 aa 000615 777612 710004 tra L51 aa 000616 777607 710004 tra L50 aa 000617 777606 710004 tra L50 aa 000620 777605 710004 tra L50 aa 000621 777604 710004 tra L49 aa 000622 777613 710004 tra L52 aa 000623 777602 710004 tra L50 aa 000624 777601 710004 tra L50 aa 000625 777600 710004 tra L50 aa 000626 777577 710004 tra L50 aa 000627 777576 710004 tra L50 aa 000630 777575 710004 tra L50 aa 000631 777574 710004 tra L50 aa 000632 777573 710004 tra L50 aa 000633 777602 710004 tra L52 aa 000634 777571 710004 tra L50 aa 000635 777570 710004 tra L50 aa 000636 777571 710004 tra L51 aa 000637 777566 710004 tra L50 aa 000640 777565 710004 tra L50 aa 000641 777564 710004 tra L50 aa 000642 777563 710004 tra L50 aa 000643 777562 710004 tra L50 aa 000644 777561 710004 tra L50 aa 000645 777560 710004 tra L50 aa 000646 777557 710004 tra L50 aa 000647 777556 710004 tra L50 aa 000650 777555 710004 tra L50 aa 000651 777603 710004 tra L54 aa 000652 777553 710004 tra L50 aa 000653 777552 710004 tra L50 aa 000654 777551 710004 tra L50 aa 000655 777577 710004 tra L54 aa 000656 777547 710004 tra L50 aa 000657 777546 710004 tra L50 aa 000660 777545 710004 tra L50 aa 000661 777573 710004 tra L54 aa 000662 777543 710004 tra L50 aa 000663 777542 710004 tra L50 aa 000664 777541 710004 tra L50 aa 000665 777540 710004 tra L50 aa 000666 777537 710004 tra L50 aa 000667 777536 710004 tra L49 aa 000670 777535 710004 tra L50 aa 000671 777544 710004 tra L52 L47: L46: aa 000672 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000673 200000 121100 sblx1 bp|0 aa 000674 700001 764111 lprplp sb|1,x1 aa 000675 200001 710100 tra bp|1 " end of return sequence " Begin text of PreCheckArg aa 000676 000013 120162 zero 11,41074 " PreCheckArg aa 000677 145103 150145 zero 51779,53349 aa 000700 143153 101162 zero 50795,33394 aa 000701 147000 000000 zero 52736 L57: aa 000702 000000 213000 115 epaq 0 " set lp to linkage section aa 000703 700026 764161 lprplp sb|22,*au aa 000704 200000 021100 adlx1 bp|0 " BCPL save aa 000705 700000 542111 sprpbp sb|0,x1 aa 000706 700001 544111 sprplp sb|1,x1 aa 000707 700422 620111 eax0 sb|274,x1 aa 000710 777760 360003 anx0 -16,du aa 000711 700025 740100 stx0 sb|21 aa 000712 600023 740100 stx0 sp|19 " end of save sequence aa 000713 700002 236111 116 ldq sb|2,x1 " x aa 000714 700010 756111 stq sb|8,x1 aa 000715 777500 272004 tsbbp L43+2 " ContainsFnap aa 000716 000006 000001 zero 6,1 aa 000717 000000 116007 cmpq 0,dl aa 000720 000006 600004 tze L61 aa 000721 700002 236111 ldq sb|2,x1 " x aa 000722 700010 756111 stq sb|8,x1 aa 000723 777171 272004 tsbbp L5+2 " MakeCopy aa 000724 000006 000001 zero 6,1 aa 000725 700002 756111 stq sb|2,x1 " x L61: aa 000726 700002 236111 117 ldq sb|2,x1 " x aa 000727 700003 722111 lxl2 sb|3,x1 " n aa 000730 600372 763100 lprpbb sp|250 " ArgInfo aa 000731 300000 756112 stq bb|0,x2 L60: aa 000732 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000733 200000 121100 sblx1 bp|0 aa 000734 700001 764111 lprplp sb|1,x1 aa 000735 200001 710100 tra bp|1 " end of return sequence " Begin text of TransFnap aa 000736 000011 124162 zero 9,43122 " TransFnap aa 000737 141156 163106 zero 49774,58950 aa 000740 156141 160000 zero 56417,57344 L56: aa 000741 000000 213000 96 epaq 0 " set lp to linkage section aa 000742 700026 764161 lprplp sb|22,*au aa 000743 200000 021100 adlx1 bp|0 " BCPL save aa 000744 700000 542111 sprpbp sb|0,x1 aa 000745 700001 544111 sprplp sb|1,x1 aa 000746 700424 620111 eax0 sb|276,x1 aa 000747 777760 360003 anx0 -16,du aa 000750 700025 740100 stx0 sb|21 aa 000751 600023 740100 stx0 sp|19 " end of save sequence aa 000752 600412 236100 98 ldq sp|266 " PendingTemps aa 000753 700007 756111 stq sb|7,x1 " PT aa 000754 600372 236100 ldq sp|250 " ArgInfo aa 000755 700006 756111 stq sb|6,x1 " Ai aa 000756 700004 236111 97 ldq sb|4,x1 " Args aa 000757 700022 756111 stq sb|18,x1 4a 000760 400042 272120 tsbbp lp|L65,* " ListSize aa 000761 000020 000001 zero 16,1 aa 000762 700005 756111 stq sb|5,x1 " Nargs aa 000763 700003 236111 99 ldq sb|3,x1 " F aa 000764 700022 756111 stq sb|18,x1 aa 000765 777430 272004 tsbbp L43+2 " ContainsFnap aa 000766 000020 000001 zero 16,1 aa 000767 000000 116007 cmpq 0,dl aa 000770 000006 600004 tze L66 aa 000771 700003 236111 ldq sb|3,x1 " F aa 000772 700022 756111 stq sb|18,x1 aa 000773 777121 272004 tsbbp L5+2 " MakeCopy aa 000774 000020 000001 zero 16,1 aa 000775 700003 756111 stq sb|3,x1 " F L66: aa 000776 700005 236111 100 ldq sb|5,x1 " Nargs aa 000777 000001 176007 sbq 1,dl " 1 aa 001000 700022 756111 stq sb|18,x1 4a 001001 400052 272120 tsbbp lp|L10,* " Newvec aa 001002 000020 000001 zero 16,1 aa 001003 600372 756100 stq sp|250 " ArgInfo aa 001004 700004 236111 101 ldq sb|4,x1 " Args aa 001005 700022 756111 stq sb|18,x1 aa 001006 777674 371404 eaplb L57 " PreCheckArg aa 001007 700023 545111 sprplb sb|19,x1 aa 001010 700024 450111 stz sb|20,x1 4a 001011 400040 272120 tsbbp lp|L67,* " WalkList aa 001012 000020 000003 zero 16,3 aa 001013 700005 236111 102 ldq sb|5,x1 " Nargs aa 001014 700022 756111 stq sb|18,x1 4a 001015 400036 272120 tsbbp lp|L68,* " ReserveArglist aa 001016 000020 000001 zero 16,1 aa 001017 700012 371511 103 eaplb sb|10,x1 " a vector aa 001020 700010 545111 sprplb sb|8,x1 " TempDesc aa 001021 700011 450111 104 stz sb|9,x1 " i aa 001022 700005 236111 ldq sb|5,x1 " Nargs aa 001023 000001 176007 sbq 1,dl " 1 aa 001024 700015 756111 stq sb|13,x1 aa 001025 000020 710004 tra L70 L69: aa 001026 700011 723111 105 lxl3 sb|9,x1 " i aa 001027 600372 765100 lprplb sp|250 " ArgInfo aa 001030 500000 236113 ldq lb|0,x3 aa 001031 700022 756111 stq sb|18,x1 aa 001032 700010 236111 ldq sb|8,x1 " TempDesc aa 001033 700023 756111 stq sb|19,x1 4a 001034 400034 272120 tsbbp lp|L71,* " CompileOperand aa 001035 000020 000002 zero 16,2 aa 001036 700011 236111 106 ldq sb|9,x1 " i aa 001037 700022 756111 stq sb|18,x1 aa 001040 700010 236111 ldq sb|8,x1 " TempDesc aa 001041 700023 756111 stq sb|19,x1 4a 001042 400032 272120 tsbbp lp|L72,* " GenerateArg aa 001043 000020 000002 zero 16,2 aa 001044 700011 054111 aos sb|9,x1 " i L70: aa 001045 700011 236111 ldq sb|9,x1 " i aa 001046 700015 116111 cmpq sb|13,x1 aa 001047 777757 604404 tmoz L69 aa 001050 600372 235100 108 lda sp|250 " ArgInfo aa 001051 700022 755111 sta sb|18,x1 aa 001052 700005 235111 lda sb|5,x1 " Nargs aa 001053 000001 175007 sba 1,dl " 1 aa 001054 700023 755111 sta sb|19,x1 4a 001055 400044 272120 tsbbp lp|L35,* " Freevec aa 001056 000020 000002 zero 16,2 aa 001057 700006 235111 109 lda sb|6,x1 " Ai aa 001060 600372 755100 sta sp|250 " ArgInfo 4a 001061 400030 272120 110 tsbbp lp|L73,* " StoreAll aa 001062 000020 000000 zero 16 aa 001063 700003 235111 111 lda sb|3,x1 " F aa 001064 700022 755111 sta sb|18,x1 aa 001065 700010 235111 lda sb|8,x1 " TempDesc aa 001066 700023 755111 sta sb|19,x1 4a 001067 400034 272120 tsbbp lp|L71,* " CompileOperand aa 001070 000020 000002 zero 16,2 aa 001071 700002 235111 112 lda sb|2,x1 " ResultDesc aa 001072 700022 755111 sta sb|18,x1 aa 001073 700010 235111 lda sb|8,x1 " TempDesc aa 001074 700023 755111 sta sb|19,x1 4a 001075 400026 272120 tsbbp lp|L74,* " GenerateFnap aa 001076 000020 000002 zero 16,2 aa 001077 700007 235111 113 lda sb|7,x1 " PT aa 001100 700022 755111 sta sb|18,x1 aa 001101 777051 272004 tsbbp L6+2 " PutBackTemps aa 001102 000020 000001 zero 16,1 L64: aa 001103 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001104 200000 121100 sblx1 bp|0 aa 001105 700001 764111 lprplp sb|1,x1 aa 001106 200001 710100 tra bp|1 " end of return sequence " Begin text of StoreSystemArg aa 001107 000016 123164 zero 14,42612 " StoreSystemArg aa 001110 157162 145123 zero 56946,51795 aa 001111 171163 164145 zero 62067,59493 aa 001112 155101 162147 zero 55873,58471 L76: aa 001113 000000 213000 150 epaq 0 " set lp to linkage section aa 001114 700026 764161 lprplp sb|22,*au aa 001115 200000 021100 adlx1 bp|0 " BCPL save aa 001116 700000 542111 sprpbp sb|0,x1 aa 001117 700001 544111 sprplp sb|1,x1 aa 001120 701041 620111 eax0 sb|545,x1 aa 001121 777760 360003 anx0 -16,du aa 001122 700025 740100 stx0 sb|21 aa 001123 600023 740100 stx0 sp|19 " end of save sequence aa 001124 700006 450111 151 stz sb|6,x1 " TypeE aa 001125 700005 450111 stz sb|5,x1 " LengthE aa 001126 700004 450111 stz sb|4,x1 " OffsetE aa 001127 000001 235007 lda 1,dl " 1 aa 001130 700007 755111 sta sb|7,x1 " TypeC aa 001131 700011 450111 152 stz sb|9,x1 " Double aa 001132 700010 450111 stz sb|8,x1 " String L80: aa 001133 000053 710004 154 tra L82 L83: aa 001134 000135 710004 155 tra L84 L85: aa 001135 000001 235007 156 lda 1,dl " 1 aa 001136 700007 755111 sta sb|7,x1 " TypeC aa 001137 000126 710004 158 tra L81 L86: aa 001140 000003 235007 159 lda 3,dl " 3 aa 001141 700007 755111 sta sb|7,x1 " TypeC aa 001142 000123 710004 161 tra L81 L87: aa 001143 000001 335007 162 lca 1,dl " true aa 001144 700011 755111 sta sb|9,x1 " Double aa 001145 000120 710004 164 tra L81 L88: aa 001146 000015 235007 165 lda 13,dl " 13 aa 001147 700007 755111 sta sb|7,x1 " TypeC aa 001150 000115 710004 167 tra L81 L89: aa 001151 700002 760111 168 lprpap sb|2,x1 " x aa 001152 000002 235100 lda ap|2 aa 001153 700006 755111 sta sb|6,x1 " TypeE aa 001154 000111 710004 170 tra L81 L90: aa 001155 700002 762111 171 lprpbp sb|2,x1 " x aa 001156 200002 235100 lda bp|2 aa 001157 700005 755111 sta sb|5,x1 " LengthE aa 001160 000025 235007 172 lda 21,dl " 21 aa 001161 700007 755111 sta sb|7,x1 " TypeC aa 001162 000103 710004 174 tra L81 L91: aa 001163 700002 761111 175 lprpab sb|2,x1 " x aa 001164 100002 235100 lda ab|2 aa 001165 700005 755111 sta sb|5,x1 " LengthE aa 001166 000023 235007 176 lda 19,dl " 19 aa 001167 700007 755111 sta sb|7,x1 " TypeC aa 001170 000075 710004 178 tra L81 L92: aa 001171 700002 763111 179 lprpbb sb|2,x1 " x aa 001172 300002 235100 lda bb|2 aa 001173 700004 755111 sta sb|4,x1 " OffsetE aa 001174 000071 710004 181 tra L81 L93: aa 001175 700002 765111 182 lprplb sb|2,x1 " x aa 001176 500002 235100 lda lb|2 aa 001177 700005 755111 sta sb|5,x1 " LengthE aa 001200 000065 710004 184 tra L81 L94: aa 001201 000001 335007 185 lca 1,dl " true aa 001202 700010 755111 sta sb|8,x1 " String aa 001203 000025 235007 186 lda 21,dl " 21 aa 001204 700007 755111 sta sb|7,x1 " TypeC aa 001205 000060 710004 187 tra L81 L82: aa 001206 700002 760111 lprpap sb|2,x1 " x aa 001207 000000 235100 lda ap|0 aa 001210 777777 375007 ana -1,dl " Right " Begin switchon aa 001211 000043 773000 lrl 35 aa 001212 000023 507007 dvf 19,dl " hash table size 0a 001213 001242 115006 cmpa L95,ql aa 001214 777720 601004 tnz L83 0a 001215 001217 710006 tra L96,ql aa 001216 700012 755111 sta sb|10,x1 " temporary L96: aa 001217 777715 710004 tra L83 aa 001220 777726 710004 tra L88 aa 001221 777730 710004 tra L89 aa 001222 777721 710004 tra L87 aa 001223 777740 710004 tra L91 aa 001224 777710 710004 tra L83 aa 001225 777707 710004 tra L83 aa 001226 777706 710004 tra L83 aa 001227 777705 710004 tra L83 aa 001230 777704 710004 tra L83 aa 001231 777724 710004 tra L90 aa 001232 777747 710004 tra L94 aa 001233 777701 710004 tra L83 aa 001234 777700 710004 tra L83 aa 001235 777700 710004 tra L85 aa 001236 777702 710004 tra L86 aa 001237 777732 710004 tra L92 aa 001240 777735 710004 tra L93 aa 001241 777673 710004 tra L83 L95: aa 001242 000000 000000 zero 0 aa 001243 000000 000005 zero 0,5 aa 001244 000000 000007 zero 0,7 aa 001245 000000 000001 zero 0,1 aa 001246 000000 000000 zero 0 aa 001247 000000 000000 zero 0 aa 001250 000000 000000 zero 0 aa 001251 000000 000000 zero 0 aa 001252 000000 000000 zero 0 aa 001253 000000 000000 zero 0 aa 001254 000000 000000 zero 0 aa 001255 000000 000006 zero 0,6 aa 001256 000000 000000 zero 0 aa 001257 000000 000000 zero 0 aa 001260 000000 000001 zero 0,1 aa 001261 000000 000001 zero 0,1 aa 001262 000000 000004 zero 0,4 aa 001263 000000 000002 zero 0,2 aa 001264 000000 000000 zero 0 L81: aa 001265 700002 762111 189 lprpbp sb|2,x1 " x aa 001266 200001 235100 lda bp|1 aa 001267 700002 755111 sta sb|2,x1 " x aa 001270 777643 710004 tra L80 L84: aa 001271 700011 234111 192 szn sb|9,x1 " Double aa 001272 000021 600004 tze L97 aa 001273 700006 234111 szn sb|6,x1 " TypeE aa 001274 000011 601004 tnz L99 aa 001275 700007 235111 lda sb|7,x1 " TypeC aa 001276 000001 115007 cmpa 1,dl " 1 aa 001277 000004 600004 tze L100 aa 001300 700007 236111 ldq sb|7,x1 " TypeC aa 001301 000003 116007 cmpq 3,dl " 3 aa 001302 000003 601004 tnz L99 L100: aa 001303 700007 054111 193 aos sb|7,x1 " TypeC aa 001304 000007 710004 tra L98 L99: aa 001305 000311 235007 194 lda 201,dl " BadDescriptors aa 001306 701020 755111 sta sb|528,x1 aa 001307 700002 235111 lda sb|2,x1 " x aa 001310 701021 755111 sta sb|529,x1 4a 001311 400024 272120 tsbbp lp|L101,* " Transreport aa 001312 001016 000002 zero 526,2 L98: L97: aa 001313 700006 234111 195 szn sb|6,x1 " TypeE aa 001314 000010 601004 tnz L102 aa 001315 000017 235007 lda 15,dl " CONSTANT_S aa 001316 701020 755111 sta sb|528,x1 aa 001317 700007 235111 lda sb|7,x1 " TypeC aa 001320 701021 755111 sta sb|529,x1 4a 001321 400022 272120 tsbbp lp|L103,* " List2 aa 001322 001016 000002 zero 526,2 aa 001323 700006 756111 stq sb|6,x1 " TypeE L102: aa 001324 700010 234111 196 szn sb|8,x1 " String aa 001325 000035 600004 tze L104 aa 001326 700005 234111 szn sb|5,x1 " LengthE aa 001327 000033 601004 tnz L104 aa 001330 700002 761111 lprpab sb|2,x1 " x aa 001331 100000 236100 ldq ab|0 aa 001332 777777 376007 anq -1,dl " Right aa 001333 000176 116007 cmpq 126,dl " STRINGCONST_S aa 001334 000026 601004 tnz L105 aa 001335 700014 353511 197 eapbb sb|12,x1 " a vector aa 001336 700012 543111 sprpbb sb|10,x1 " v aa 001337 700002 763111 198 lprpbb sb|2,x1 " x aa 001340 300001 236100 ldq bb|1 aa 001341 701020 756111 stq sb|528,x1 aa 001342 700012 236111 ldq sb|10,x1 " v aa 001343 701021 756111 stq sb|529,x1 4a 001344 400020 272120 tsbbp lp|L106,* " RemoveEscapes aa 001345 001016 000002 zero 526,2 aa 001346 700012 236111 199 ldq sb|10,x1 " v aa 001347 701020 756111 stq sb|528,x1 4a 001350 400016 272120 tsbbp lp|L107,* " Length aa 001351 001016 000001 zero 526,1 aa 001352 700013 756111 stq sb|11,x1 aa 001353 000017 236007 ldq 15,dl " CONSTANT_S aa 001354 701020 756111 stq sb|528,x1 aa 001355 700013 236111 ldq sb|11,x1 aa 001356 701021 756111 stq sb|529,x1 4a 001357 400022 272120 tsbbp lp|L103,* " List2 aa 001360 001016 000002 zero 526,2 aa 001361 700005 756111 stq sb|5,x1 " LengthE L105: L104: aa 001362 700002 236111 202 ldq sb|2,x1 " x aa 001363 701020 756111 stq sb|528,x1 aa 001364 777031 272004 tsbbp L43+2 " ContainsFnap aa 001365 001016 000001 zero 526,1 aa 001366 000000 116007 cmpq 0,dl aa 001367 000006 600004 tze L108 aa 001370 700002 236111 ldq sb|2,x1 " x aa 001371 701020 756111 stq sb|528,x1 aa 001372 776522 272004 tsbbp L5+2 " MakeCopy aa 001373 001016 000001 zero 526,1 aa 001374 700002 756111 stq sb|2,x1 " x L108: aa 001375 700004 234111 203 szn sb|4,x1 " OffsetE aa 001376 000014 600004 tze L109 aa 001377 700004 236111 ldq sb|4,x1 " OffsetE aa 001400 701020 756111 stq sb|528,x1 aa 001401 777014 272004 tsbbp L43+2 " ContainsFnap aa 001402 001016 000001 zero 526,1 aa 001403 000000 116007 cmpq 0,dl aa 001404 000006 600004 tze L110 aa 001405 700004 236111 ldq sb|4,x1 " OffsetE aa 001406 701020 756111 stq sb|528,x1 aa 001407 776505 272004 tsbbp L5+2 " MakeCopy aa 001410 001016 000001 zero 526,1 aa 001411 700004 756111 stq sb|4,x1 " OffsetE L110: L109: aa 001412 700006 236111 204 ldq sb|6,x1 " TypeE aa 001413 701020 756111 stq sb|528,x1 aa 001414 777001 272004 tsbbp L43+2 " ContainsFnap aa 001415 001016 000001 zero 526,1 aa 001416 000000 116007 cmpq 0,dl aa 001417 000006 600004 tze L111 aa 001420 700006 236111 ldq sb|6,x1 " TypeE aa 001421 701020 756111 stq sb|528,x1 aa 001422 776472 272004 tsbbp L5+2 " MakeCopy aa 001423 001016 000001 zero 526,1 aa 001424 700006 756111 stq sb|6,x1 " TypeE L111: aa 001425 700005 234111 205 szn sb|5,x1 " LengthE aa 001426 000014 600004 tze L112 aa 001427 700005 236111 ldq sb|5,x1 " LengthE aa 001430 701020 756111 stq sb|528,x1 aa 001431 776764 272004 tsbbp L43+2 " ContainsFnap aa 001432 001016 000001 zero 526,1 aa 001433 000000 116007 cmpq 0,dl aa 001434 000006 600004 tze L113 aa 001435 700005 236111 ldq sb|5,x1 " LengthE aa 001436 701020 756111 stq sb|528,x1 aa 001437 776455 272004 tsbbp L5+2 " MakeCopy aa 001440 001016 000001 zero 526,1 aa 001441 700005 756111 stq sb|5,x1 " LengthE L113: L112: aa 001442 700003 236111 206 ldq sb|3,x1 " Ai aa 001443 000005 402007 mpy 5,dl " 5 aa 001444 600372 765100 lprplb sp|250 " ArgInfo aa 001445 500000 371506 eaplb lb|0,ql aa 001446 700012 545111 sprplb sb|10,x1 " Info aa 001447 700004 236111 207 ldq sb|4,x1 " OffsetE aa 001450 700012 765111 lprplb sb|10,x1 " Info aa 001451 500001 756100 stq lb|1 aa 001452 700002 236111 ldq sb|2,x1 " x aa 001453 700012 760111 lprpap sb|10,x1 " Info aa 001454 000000 756100 stq ap|0 aa 001455 700006 236111 ldq sb|6,x1 " TypeE aa 001456 700012 762111 lprpbp sb|10,x1 " Info aa 001457 200002 756100 stq bp|2 aa 001460 700005 236111 ldq sb|5,x1 " LengthE aa 001461 700012 761111 lprpab sb|10,x1 " Info aa 001462 100003 756100 stq ab|3 aa 001463 700010 236111 ldq sb|8,x1 " String aa 001464 700012 763111 lprpbb sb|10,x1 " Info aa 001465 300004 756100 stq bb|4 L79: aa 001466 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001467 200000 121100 sblx1 bp|0 aa 001470 700001 764111 lprplp sb|1,x1 aa 001471 200001 710100 tra bp|1 " end of return sequence " Begin text of TransSystemCall aa 001472 000017 124162 zero 15,43122 " TransSystemCall aa 001473 141156 163123 zero 49774,58963 aa 001474 171163 164145 zero 62067,59493 aa 001475 155103 141154 zero 55875,49772 aa 001476 154000 000000 zero 55296 L75: aa 001477 000000 213000 120 epaq 0 " set lp to linkage section aa 001500 700026 764161 lprplp sb|22,*au aa 001501 200000 021100 adlx1 bp|0 " BCPL save aa 001502 700000 542111 sprpbp sb|0,x1 aa 001503 700001 544111 sprplp sb|1,x1 aa 001504 700427 620111 eax0 sb|279,x1 aa 001505 777760 360003 anx0 -16,du aa 001506 700025 740100 stx0 sb|21 aa 001507 600023 740100 stx0 sp|19 " end of save sequence aa 001510 700002 765111 121 lprplb sb|2,x1 " x aa 001511 500000 236100 ldq lb|0 aa 001512 777777 376007 anq -1,dl " Right aa 001513 000043 116007 cmpq 35,dl " FNAP_S aa 001514 000205 601004 tnz L118 aa 001515 600372 236100 123 ldq sp|250 " ArgInfo aa 001516 700004 756111 stq sb|4,x1 " Ai aa 001517 600412 236100 ldq sp|266 " PendingTemps aa 001520 700005 756111 stq sb|5,x1 " PT aa 001521 700002 760111 122 lprpap sb|2,x1 " x aa 001522 000002 236100 ldq ap|2 aa 001523 700040 756111 stq sb|32,x1 4a 001524 400042 272120 tsbbp lp|L65,* " ListSize aa 001525 000036 000001 zero 30,1 aa 001526 700003 756111 stq sb|3,x1 " Nargs aa 001527 700003 236111 124 ldq sb|3,x1 " Nargs aa 001530 000005 402007 mpy 5,dl " 5 aa 001531 700040 756111 stq sb|32,x1 4a 001532 400052 272120 tsbbp lp|L10,* " Newvec aa 001533 000036 000001 zero 30,1 aa 001534 600372 756100 stq sp|250 " ArgInfo aa 001535 700002 762111 125 lprpbp sb|2,x1 " x aa 001536 200002 236100 ldq bp|2 aa 001537 700040 756111 stq sb|32,x1 aa 001540 777353 351404 eapab L76 " StoreSystemArg aa 001541 700041 541111 sprpab sb|33,x1 aa 001542 700042 450111 stz sb|34,x1 4a 001543 400040 272120 tsbbp lp|L67,* " WalkList aa 001544 000036 000003 zero 30,3 aa 001545 700003 236111 126 ldq sb|3,x1 " Nargs aa 001546 700040 756111 stq sb|32,x1 4a 001547 400014 272120 tsbbp lp|L119,* " ReserveSystemArglist aa 001550 000036 000001 zero 30,1 aa 001551 700006 450111 127 stz sb|6,x1 " i aa 001552 700003 236111 ldq sb|3,x1 " Nargs aa 001553 000001 176007 sbq 1,dl " 1 aa 001554 700007 756111 stq sb|7,x1 aa 001555 000104 710004 tra L121 L120: aa 001556 700016 351511 129 eapab sb|14,x1 " a vector aa 001557 700014 541111 sprpab sb|12,x1 " Length aa 001560 700022 351511 eapab sb|18,x1 " a vector aa 001561 700011 541111 sprpab sb|9,x1 " Type aa 001562 700026 351511 eapab sb|22,x1 " a vector aa 001563 700013 541111 sprpab sb|11,x1 " Offset aa 001564 700032 351511 eapab sb|26,x1 " a vector aa 001565 700012 541111 sprpab sb|10,x1 " Arg aa 001566 700006 236111 128 ldq sb|6,x1 " i aa 001567 000005 402007 mpy 5,dl " 5 aa 001570 600372 761100 lprpab sp|250 " ArgInfo aa 001571 100000 351506 eapab ab|0,ql aa 001572 700010 541111 sprpab sb|8,x1 " Info aa 001573 700010 761111 130 lprpab sb|8,x1 " Info aa 001574 100000 236100 ldq ab|0 aa 001575 700040 756111 stq sb|32,x1 aa 001576 700012 236111 ldq sb|10,x1 " Arg aa 001577 700041 756111 stq sb|33,x1 4a 001600 400034 272120 tsbbp lp|L71,* " CompileOperand aa 001601 000036 000002 zero 30,2 aa 001602 700010 763111 131 lprpbb sb|8,x1 " Info aa 001603 300001 234100 szn bb|1 aa 001604 000003 601004 tnz L123 aa 001605 700013 450111 132 stz sb|11,x1 " Offset aa 001606 000010 710004 tra L122 L123: aa 001607 700010 765111 133 lprplb sb|8,x1 " Info aa 001610 500001 236100 ldq lb|1 aa 001611 700040 756111 stq sb|32,x1 aa 001612 700013 236111 ldq sb|11,x1 " Offset aa 001613 700041 756111 stq sb|33,x1 4a 001614 400034 272120 tsbbp lp|L71,* " CompileOperand aa 001615 000036 000002 zero 30,2 L122: aa 001616 700010 760111 134 lprpap sb|8,x1 " Info aa 001617 000002 236100 ldq ap|2 aa 001620 700040 756111 stq sb|32,x1 aa 001621 700011 236111 ldq sb|9,x1 " Type aa 001622 700041 756111 stq sb|33,x1 4a 001623 400034 272120 tsbbp lp|L71,* " CompileOperand aa 001624 000036 000002 zero 30,2 aa 001625 700010 762111 135 lprpbp sb|8,x1 " Info aa 001626 200003 234100 szn bp|3 aa 001627 000003 601004 tnz L125 aa 001630 700014 450111 136 stz sb|12,x1 " Length aa 001631 000010 710004 tra L124 L125: aa 001632 700010 761111 137 lprpab sb|8,x1 " Info aa 001633 100003 236100 ldq ab|3 aa 001634 700040 756111 stq sb|32,x1 aa 001635 700014 236111 ldq sb|12,x1 " Length aa 001636 700041 756111 stq sb|33,x1 4a 001637 400034 272120 tsbbp lp|L71,* " CompileOperand aa 001640 000036 000002 zero 30,2 L124: aa 001641 700006 236111 138 ldq sb|6,x1 " i aa 001642 700040 756111 stq sb|32,x1 aa 001643 700012 236111 ldq sb|10,x1 " Arg aa 001644 700041 756111 stq sb|33,x1 aa 001645 700013 236111 ldq sb|11,x1 " Offset aa 001646 700042 756111 stq sb|34,x1 aa 001647 700011 236111 ldq sb|9,x1 " Type aa 001650 700043 756111 stq sb|35,x1 aa 001651 700014 236111 ldq sb|12,x1 " Length aa 001652 700044 756111 stq sb|36,x1 aa 001653 700010 763111 lprpbb sb|8,x1 " Info aa 001654 300004 236100 ldq bb|4 aa 001655 700045 756111 stq sb|37,x1 4a 001656 400012 272120 tsbbp lp|L126,* " GenerateSystemArg aa 001657 000036 000006 zero 30,6 aa 001660 700006 054111 aos sb|6,x1 " i L121: aa 001661 700006 236111 ldq sb|6,x1 " i aa 001662 700007 116111 cmpq sb|7,x1 aa 001663 777673 604404 tmoz L120 aa 001664 600372 235100 140 lda sp|250 " ArgInfo aa 001665 700040 755111 sta sb|32,x1 aa 001666 700003 236111 ldq sb|3,x1 " Nargs aa 001667 000005 402007 mpy 5,dl " 5 aa 001670 700041 756111 stq sb|33,x1 4a 001671 400044 272120 tsbbp lp|L35,* " Freevec aa 001672 000036 000002 zero 30,2 aa 001673 700004 236111 141 ldq sb|4,x1 " Ai aa 001674 600372 756100 stq sp|250 " ArgInfo 4a 001675 400030 272120 142 tsbbp lp|L73,* " StoreAll aa 001676 000036 000000 zero 30 aa 001677 700010 371511 143 eaplb sb|8,x1 " a vector aa 001700 700006 545111 sprplb sb|6,x1 " TempDesc aa 001701 700002 765111 144 lprplb sb|2,x1 " x aa 001702 500001 236100 ldq lb|1 aa 001703 700040 756111 stq sb|32,x1 aa 001704 700006 236111 ldq sb|6,x1 " TempDesc aa 001705 700041 756111 stq sb|33,x1 4a 001706 400034 272120 tsbbp lp|L71,* " CompileOperand aa 001707 000036 000002 zero 30,2 aa 001710 700006 236111 145 ldq sb|6,x1 " TempDesc aa 001711 700040 756111 stq sb|32,x1 4a 001712 400010 272120 tsbbp lp|L127,* " GenerateSystemCall aa 001713 000036 000001 zero 30,1 aa 001714 700005 236111 146 ldq sb|5,x1 " PT aa 001715 700040 756111 stq sb|32,x1 aa 001716 776234 272004 tsbbp L6+2 " PutBackTemps aa 001717 000036 000001 zero 30,1 aa 001720 000007 710004 tra L117 L118: aa 001721 000310 236007 148 ldq 200,dl " BadCall aa 001722 700040 756111 stq sb|32,x1 aa 001723 700002 236111 ldq sb|2,x1 " x aa 001724 700041 756111 stq sb|33,x1 4a 001725 400024 272120 tsbbp lp|L101,* " Transreport aa 001726 000036 000002 zero 30,2 L117: L116: aa 001727 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001730 200000 121100 sblx1 bp|0 aa 001731 700001 764111 lprplp sb|1,x1 aa 001732 200001 710100 tra bp|1 " end of return sequence aa 001733 000000 000000 " padding " Definition section part one - external entry points 5a 000000 000046 000000 " pointer to first definition aa 000001 000000 600000 " flags: new format, ignore header aa 000002 000000 000000 " list terminator aa 000003 013142 143160 " "bcpl_trans6" aa 000004 154137 164162 aa 000005 141156 163066 aa 000006 017124 162141 " "TransSystemCall" aa 000007 156163 123171 aa 000010 163164 145155 aa 000011 103141 154154 aa 000012 011124 162141 " "TransFnap" aa 000013 156163 106156 aa 000014 141160 000000 aa 000015 014120 165164 " "PutBackTemps" aa 000016 102141 143153 aa 000017 124145 155160 aa 000020 163000 000000 aa 000021 010115 141153 " "MakeCopy" aa 000022 145103 157160 aa 000023 171000 000000 aa 000024 010115 141153 " "MakeTemp" aa 000025 145124 145155 aa 000026 160000 000000 aa 000027 010122 145163 " "ResetSSP" aa 000030 145164 123123 aa 000031 120000 000000 aa 000032 017104 145141 " "DeallocateLocal" aa 000033 154154 157143 aa 000034 141164 145114 aa 000035 157143 141154 aa 000036 015101 154154 " "AllocateLocal" aa 000037 157143 141164 aa 000040 145114 157143 aa 000041 141154 000000 aa 000042 014163 171155 " "symbol_table" aa 000043 142157 154137 aa 000044 164141 142154 aa 000045 145000 000000 " Segname definition for bcpl_trans6 55 000046 000051 000002 " forward, backward threads 5a 000047 000002 400003 " value defined, class flags 55 000050 000003 000051 " name pointer, first entry def " Definition for TransSystemCall 55 000051 000054 000046 " forward, backward threads 0a 000052 001477 500000 " value defined, class flags 55 000053 000006 000046 " name pointer, segname def pointer " Definition for TransFnap 55 000054 000057 000051 " forward, backward threads 0a 000055 000741 500000 " value defined, class flags 55 000056 000012 000046 " name pointer, segname def pointer " Definition for PutBackTemps 55 000057 000062 000054 " forward, backward threads 0a 000060 000150 500000 " value defined, class flags 55 000061 000015 000046 " name pointer, segname def pointer " Definition for MakeCopy 55 000062 000065 000057 " forward, backward threads 0a 000063 000112 500000 " value defined, class flags 55 000064 000021 000046 " name pointer, segname def pointer " Definition for MakeTemp 55 000065 000070 000062 " forward, backward threads 0a 000066 000044 500000 " value defined, class flags 55 000067 000024 000046 " name pointer, segname def pointer " Definition for ResetSSP 55 000070 000073 000065 " forward, backward threads 0a 000071 000210 500000 " value defined, class flags 55 000072 000027 000046 " name pointer, segname def pointer " Definition for DeallocateLocal 55 000073 000076 000070 " forward, backward threads 0a 000074 000005 500000 " value defined, class flags 55 000075 000032 000046 " name pointer, segname def pointer " Definition for AllocateLocal 55 000076 000101 000073 " forward, backward threads 0a 000077 000315 500000 " value defined, class flags 55 000100 000036 000046 " name pointer, segname def pointer " Definition for symbol_table 55 000101 000002 000076 " forward, backward threads 6a 000102 000000 400002 " value defined, class flags 55 000103 000042 000046 " name pointer, segname def pointer " Definition section part two - symbolic info for external references aa 000104 021142 143160 " "bcpl_cg_interface" aa 000105 154137 143147 aa 000106 137151 156164 aa 000107 145162 146141 aa 000110 143145 000000 aa 000111 022107 145156 " "GenerateSystemCall" aa 000112 145162 141164 aa 000113 145123 171163 aa 000114 164145 155103 aa 000115 141154 154000 5a 000116 000117 000000 aa 000117 000004 000000 55 000120 000104 000111 aa 000121 021107 145156 " "GenerateSystemArg" aa 000122 145162 141164 aa 000123 145123 171163 aa 000124 164145 155101 aa 000125 162147 000000 5a 000126 000127 000000 aa 000127 000004 000000 55 000130 000104 000121 aa 000131 024122 145163 " "ReserveSystemArglist" aa 000132 145162 166145 aa 000133 123171 163164 aa 000134 145155 101162 aa 000135 147154 151163 aa 000136 164000 000000 5a 000137 000140 000000 aa 000140 000004 000000 55 000141 000104 000131 aa 000142 015142 143160 " "bcpl_strings_" aa 000143 154137 163164 aa 000144 162151 156147 aa 000145 163137 000000 aa 000146 006114 145156 " "Length" aa 000147 147164 150000 5a 000150 000151 000000 aa 000151 000004 000000 55 000152 000142 000146 aa 000153 021142 143160 " "bcpl_conversions_" aa 000154 154137 143157 aa 000155 156166 145162 aa 000156 163151 157156 aa 000157 163137 000000 aa 000160 015122 145155 " "RemoveEscapes" aa 000161 157166 145105 aa 000162 163143 141160 aa 000163 145163 000000 5a 000164 000165 000000 aa 000165 000004 000000 55 000166 000153 000160 aa 000167 014142 143160 " "bcpl_utility" aa 000170 154137 165164 aa 000171 151154 151164 aa 000172 171000 000000 aa 000173 005114 151163 " "List2" aa 000174 164062 000000 5a 000175 000176 000000 aa 000176 000004 000000 55 000177 000167 000173 aa 000200 013142 143160 " "bcpl_report" aa 000201 154137 162145 aa 000202 160157 162164 aa 000203 013124 162141 " "Transreport" aa 000204 156163 162145 aa 000205 160157 162164 5a 000206 000207 000000 aa 000207 000004 000000 55 000210 000200 000203 aa 000211 014107 145156 " "GenerateFnap" aa 000212 145162 141164 aa 000213 145106 156141 aa 000214 160000 000000 5a 000215 000216 000000 aa 000216 000004 000000 55 000217 000104 000211 aa 000220 010123 164157 " "StoreAll" aa 000221 162145 101154 aa 000222 154000 000000 5a 000223 000224 000000 aa 000224 000004 000000 55 000225 000104 000220 aa 000226 013107 145156 " "GenerateArg" aa 000227 145162 141164 aa 000230 145101 162147 5a 000231 000232 000000 aa 000232 000004 000000 55 000233 000104 000226 aa 000234 013142 143160 " "bcpl_trans4" aa 000235 154137 164162 aa 000236 141156 163064 aa 000237 016103 157155 " "CompileOperand" aa 000240 160151 154145 aa 000241 117160 145162 aa 000242 141156 144000 5a 000243 000244 000000 aa 000244 000004 000000 55 000245 000234 000237 aa 000246 016122 145163 " "ReserveArglist" aa 000247 145162 166145 aa 000250 101162 147154 aa 000251 151163 164000 5a 000252 000253 000000 aa 000253 000004 000000 55 000254 000104 000246 aa 000255 013142 143160 " "bcpl_trans3" aa 000256 154137 164162 aa 000257 141156 163063 aa 000260 010127 141154 " "WalkList" aa 000261 153114 151163 aa 000262 164000 000000 5a 000263 000264 000000 aa 000264 000004 000000 55 000265 000255 000260 aa 000266 010114 151163 " "ListSize" aa 000267 164123 151172 aa 000270 145000 000000 5a 000271 000272 000000 aa 000272 000004 000000 55 000273 000255 000266 aa 000274 007106 162145 " "Freevec" aa 000275 145166 145143 5a 000276 000277 000000 aa 000277 000004 000000 55 000300 000167 000274 aa 000301 013107 145156 " "GenerateSSP" aa 000302 145162 141164 aa 000303 145123 123120 5a 000304 000305 000000 aa 000305 000004 000000 55 000306 000104 000301 aa 000307 021103 157155 " "CompileExpression" aa 000310 160151 154145 aa 000311 105170 160162 aa 000312 145163 163151 aa 000313 157156 000000 5a 000314 000315 000000 aa 000315 000004 000000 55 000316 000234 000307 aa 000317 006116 145167 " "Newvec" aa 000320 166145 143000 5a 000321 000322 000000 aa 000322 000004 000000 55 000323 000167 000317 " Linkage section - static variables and external links aa 000000 000000 000000 " linkage header 0a 000001 001734 000000 " address of defs aa 000002 000000 000000 aa 000003 000000 000000 aa 000004 000000 000000 aa 000005 000000 000000 2a 000006 000010 000054 " offset to links, total length aa 000007 000000 000054 " obsolete length " External link pairs L127: 3a 000010 777770 000046 " "bcpl_cg_interface$GenerateSystemCall" 5a 000011 000116 000000 L126: 3a 000012 777766 000046 " "bcpl_cg_interface$GenerateSystemArg" 5a 000013 000126 000000 L119: 3a 000014 777764 000046 " "bcpl_cg_interface$ReserveSystemArglist" 5a 000015 000137 000000 L107: 3a 000016 777762 000046 " "bcpl_strings_$Length" 5a 000017 000150 000000 L106: 3a 000020 777760 000046 " "bcpl_conversions_$RemoveEscapes" 5a 000021 000164 000000 L103: 3a 000022 777756 000046 " "bcpl_utility$List2" 5a 000023 000175 000000 L101: 3a 000024 777754 000046 " "bcpl_report$Transreport" 5a 000025 000206 000000 L74: 3a 000026 777752 000046 " "bcpl_cg_interface$GenerateFnap" 5a 000027 000215 000000 L73: 3a 000030 777750 000046 " "bcpl_cg_interface$StoreAll" 5a 000031 000223 000000 L72: 3a 000032 777746 000046 " "bcpl_cg_interface$GenerateArg" 5a 000033 000231 000000 L71: 3a 000034 777744 000046 " "bcpl_trans4$CompileOperand" 5a 000035 000243 000000 L68: 3a 000036 777742 000046 " "bcpl_cg_interface$ReserveArglist" 5a 000037 000252 000000 L67: 3a 000040 777740 000046 " "bcpl_trans3$WalkList" 5a 000041 000263 000000 L65: 3a 000042 777736 000046 " "bcpl_trans3$ListSize" 5a 000043 000271 000000 L35: 3a 000044 777734 000046 " "bcpl_utility$Freevec" 5a 000045 000276 000000 L30: 3a 000046 777732 000046 " "bcpl_cg_interface$GenerateSSP" 5a 000047 000304 000000 L17: 3a 000050 777730 000046 " "bcpl_trans4$CompileExpression" 5a 000051 000314 000000 L10: 3a 000052 777726 000046 " "bcpl_utility$Newvec" 5a 000053 000321 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 026131 405305 " 04/17/00 1921.2 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 000212 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 000040 " bcpl_trans6 aa 000027 310157 122176 " last modified on aa 000030 000000 131036 " 04/17/00 1921.2 mdt Mon aa 000031 026131 400000 aa 000032 000107 000043 " bcpl_trans_head aa 000033 305736 045673 " last modified on aa 000034 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000035 407546 600000 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 000044 " bcpl_trans_codes aa 000047 305736 045645 " last modified on aa 000050 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000051 407546 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_trans6.bcpl" aa 000100 076163 155076 aa 000101 144163 076167 aa 000102 076155 154076 aa 000103 142143 160154 aa 000104 137164 162141 aa 000105 156163 066056 aa 000106 142143 160154 aa 000107 076154 144144 " ">ldd>incl>bcpl_trans_head.incl.bcpl" aa 000110 076151 156143 aa 000111 154076 142143 aa 000112 160154 137164 aa 000113 162141 156163 aa 000114 137150 145141 aa 000115 144056 151156 aa 000116 143154 056142 aa 000117 143160 154040 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_trans_codes.incl.bcpl" aa 000143 076151 156143 aa 000144 154076 142143 aa 000145 160154 137164 aa 000146 162141 156163 aa 000147 137143 157144 aa 000150 145163 056151 aa 000151 156143 154056 aa 000152 142143 160154 " Relocation information " text section relocation bits aa 000153 000000 000002 " version number of rel-bits structure aa 000154 000000 001265 " length in bits aa 000155 740405 170217 aa 000156 236050 647422 aa 000157 551701 172360 aa 000160 526474 231417 aa 000161 135723 602064 aa 000162 000005 000517 aa 000163 007320 000517 aa 000164 005320 012000 aa 000165 050000 247423 aa 000166 340103 607364 aa 000167 000005 170113 aa 000170 200120 000123 aa 000171 614464 000123 aa 000172 601064 002474 aa 000173 061517 005720 aa 000174 000123 601364 aa 000175 740355 170053 aa 000176 200123 601064 aa 000177 002474 025500 aa 000200 000000 000000 l " inkage relocation bits aa 000201 000000 000002 " version number of rel-bits structure aa 000202 000000 000360 " length in bits aa 000203 100002 204652 aa 000204 465246 524652 aa 000205 465246 524652 aa 000206 465246 524652 aa 000207 465246 524652 aa 000210 465246 524652 aa 000211 465246 520000 s " ymbol relocation bits aa 000212 000000 000002 " version number of rel-bits structure aa 000213 000000 000043 " length in bits aa 000214 740365 770556 " Object map aa 002551 000000 000001 " version number of object_map structure aa 002552 157142 152137 " "obj_map " aa 002553 155141 160040 aa 002554 000000 001733 " text offset, length aa 002555 001734 000324 " def offset, length aa 002556 002260 000054 " link offset, length aa 002557 002334 000215 " symbol offset, length aa 002560 000000 000000 " break map offset, length aa 002561 340000 000000 " flags: ^bound, relocatable, procedure, standard aa 002562 002551 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