Compilation listing of file >udd>sm>ds>w>ml>bcpl_cg0.bcpl. Compilation performed for Schroth.SysMaint.m at 04/17/00 1920.7 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 // Initialization and termination code for the code generator phase. 2 // Last modified on 06/06/74 at 18:21:14 by R F Mabee. 3 // Revisions for 6180 installed in Version 3.4, R F Mabee. 4 // First installed as part of bcpl_trans0 with 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_cg_head" 1 // Declarations for the code generator. 2 // Last modified on 04/02/74 at 16:01:37 by R F Mabee. 3 // Code generator substantially modified during 6180 bootstrap, and installed with Version 3.4, R F Mabee. 4 // First installed as 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_cg_codes" 1 // Report codes for the code generation phase. 2 // Last modified on 04/02/74 at 16:01:27 by R F Mabee. 3 // First installed in Version 3.4 by R F Mabee. 4 // Code generation error codes separated from bcpl_trans_codes in April 1973. 5 6 manifest // 300 - 399 are reserved for CG. 7 $( BadAddress = 300 8 BadLabel = 301 9 BadRegOpPair = 302 10 DupCase = 303 11 DupLabel = 304 12 LinkRefersThis = 305 13 OverCase = 306 14 PhaseError = 307 15 UndefLab = 308 16 $) 9 10 external 11 $( FinishText = "bcpl_cg0$FinishText" 12 13 ApplyMonadicOperator = "bcpl_cg1$ApplyMonadicOperator" 14 ApplyDiadicOperator = "bcpl_cg1$ApplyDiadicOperator" 15 ApplyOffsetOperator = "bcpl_cg1$ApplyOffsetOperator" 16 MonadicJumpcond = "bcpl_cg1$MonadicJumpcond" 17 DiadicJumpcond = "bcpl_cg1$DiadicJumpcond" 18 19 IsNumber = "bcpl_cg2$IsNumber" 20 EvalNumber = "bcpl_cg2$EvalNumber" 21 IsZero = "bcpl_cg2$IsZero" 22 IsAddress = "bcpl_cg2$IsAddress" 23 IsStored = "bcpl_cg2$IsStored" 24 LookupTemp = "bcpl_cg2$LookupTemp" 25 MakeCgTemp = "bcpl_cg2$MakeCgTemp" 26 ClaimRegister = "bcpl_cg2$ClaimRegister" 27 DisclaimRegister = "bcpl_cg2$DisclaimRegister" 28 InRegister = "bcpl_cg2$InRegister" 29 FindInRegister = "bcpl_cg2$FindInRegister" 30 CombineAddress = "bcpl_cg2$CombineAddress" 31 Compjump = "bcpl_cg2$Compjump" 32 Complab = "bcpl_cg2$Complab" 33 DefineLab = "bcpl_cg2$DefineLab" 34 LookupLabel = "bcpl_cg2$LookupLabel" 35 ClearRegisters = "bcpl_cg2$ClearRegisters" 36 ClearMemory = "bcpl_cg2$ClearMemory" 37 AddLiteral = "bcpl_cg2$AddLiteral" 38 OutLiterals = "bcpl_cg2$OutLiterals" 39 Outstring = "bcpl_cg2$Outstring" 40 41 LoadRegister = "bcpl_cg3$LoadRegister" 42 LoadPointer = "bcpl_cg3$LoadPointer" 43 LoadIndex = "bcpl_cg3$LoadIndex" 44 LoadAppropriateRegister = "bcpl_cg3$LoadAppropriateRegister" 45 LoadNumber = "bcpl_cg3$LoadNumber" 46 SetupAddr = "bcpl_cg3$SetupAddr" 47 CompareToZero = "bcpl_cg3$CompareToZero" 48 Makeaddressable = "bcpl_cg3$Makeaddressable" 49 SwapAandQ = "bcpl_cg3$SwapAandQ" 50 Preserve = "bcpl_cg3$Preserve" 51 Store = "bcpl_cg3$Store" 52 StoreRegister = "bcpl_cg3$StoreRegister" 53 GetRegister = "bcpl_cg3$GetRegister" 54 Satisfactory = "bcpl_cg3$Satisfactory" 55 Literal = "bcpl_cg3$Literal" 56 57 NewSSP = "bcpl_cg4$NewSSP" 58 Compentry = "bcpl_cg4$Compentry" 59 Compreturn = "bcpl_cg4$Compreturn" 60 CreateArglist = "bcpl_cg4$CreateArglist" 61 StoreArg = "bcpl_cg4$StoreArg" 62 Compfnap = "bcpl_cg4$Compfnap" 63 CreateSystemArglist = "bcpl_cg4$CreateSystemArglist" 64 StoreSystemArg = "bcpl_cg4$StoreSystemArg" 65 CompSystemCall = "bcpl_cg4$CompSystemCall" 66 ResultBlockBegin = "bcpl_cg4$ResultBlockBegin" 67 ResultSet = "bcpl_cg4$ResultSet" 68 ResultGet = "bcpl_cg4$ResultGet" 69 Compfinish = "bcpl_cg4$Compfinish" 70 Compgoto = "bcpl_cg4$Compgoto" 71 Compstring = "bcpl_cg4$Compstring" 72 Comptable = "bcpl_cg4$Comptable" 73 Compexternal = "bcpl_cg4$Compexternal" 74 75 OutData = "bcpl_cg5$OutData" 76 Outop = "bcpl_cg5$Outop" 77 Outop2 = "bcpl_cg5$Outop2" 78 Outop3 = "bcpl_cg5$Outop3" 79 Outop4 = "bcpl_cg5$Outop4" 80 OutW = "bcpl_cg5$OutW" 81 OutW2 = "bcpl_cg5$OutW2" 82 PutCode = "bcpl_cg5$PutCode" 83 PutAbsBits = "bcpl_cg5$PutAbsBits" 84 SetLineNumber = "bcpl_cg5$SetLineNumber" 85 SectionHeader = "bcpl_cg5$SectionHeader" 86 FormOpcode = "bcpl_cg5$FormOpcode" 87 FormTag = "bcpl_cg5$FormTag" 88 CheckAddr = "bcpl_cg5$CheckAddr" 89 90 Compswitch = "bcpl_cg6$Compswitch" 91 92 WriteGetlp = "bcpl_cg7$WriteGetlp" 93 WriteEntry = "bcpl_cg7$WriteEntry" 94 WriteDefs = "bcpl_cg7$WriteDefs" 95 WriteLinkage = "bcpl_cg7$WriteLinkage" 96 97 WriteSymbol = "bcpl_cg8$WriteSymbol" 98 WriteRelBits = "bcpl_cg8$WriteRelBits" 99 WriteObjectMap = "bcpl_cg8$WriteObjectMap" 100 101 WriteData = "bcpl_cg9$WriteData" 102 WriteInstruction = "bcpl_cg9$WriteInstruction" 103 ListCodeItem = "bcpl_cg9$ListCodeItem" 104 $) 105 global // 300 - 399 are reserved for the code generator. 106 $( AbsRelBits : 300 107 Address : 301 108 ArgCount : 302 109 ArgLen : 303 110 CgTempList : 304 111 CodeFirst : 305 112 CodeP : 306 113 CodeV : 307 114 Comment : 308 115 116 DeferredJumpLabel : 310 117 DefsLength : 311 118 DefsRelbits : 312 119 EntryLabel : 313 120 GetLpLabel : 314 121 IndicatorsSetBy : 315 122 Jumpsw : 316 123 LabMaxArg : 317 124 LabMaxSSP : 318 125 126 LabTable : 320 127 LC : 321 128 LineMapFirst : 322 129 LineMapLength : 323 130 LineMapList : 324 131 LinkageLength : 325 132 LinkageRelbits : 326 133 LinkList : 327 134 Lrand : 328 135 136 MainEntriesList : 330 137 MaxArgOffset : 331 138 MaxSSP : 332 139 NewLiteralsList : 333 140 OldLabel : 334 141 OldLiteralsList : 335 142 Param : 336 143 Rrand : 337 144 RegisterTemps : 338 145 146 RegisterUsage : 340 147 RelbitsFirst : 341 148 RelbitsLength : 342 149 RelbitsList : 343 150 RelbitsOffset : 344 151 Reloc : 345 152 ResultInfo : 346 153 ResultInfoList : 347 154 SaveSpaceSize : 348 155 156 SymbolLength : 350 157 SymbolRelbits : 351 158 StackRefTag : 352 159 SymtabFirst : 353 160 SymtabP : 354 161 SymtabV : 355 162 Tag : 356 163 TextLength : 357 164 TextRelbits : 358 165 166 UsageCounter : 360 167 $) 168 manifest 169 $( CgTempSize = 9 170 CodeSize = 1000 171 LabTableSize = 100 172 SymtabSize = 200 173 $) 174 manifest // Flags for listing. 175 $( CodeSwitch = 1 176 InstructionSwitch = 2 177 DataSwitch = 3 178 LabelSwitch = 4 179 LineCountSwitch = 5 180 SectionSwitch = 6 181 HeaderSwitch = 7 182 $) 183 manifest // Relocation codes. 184 $( RelText = $820 185 RelLink18 = $822 186 RelNegLink18 = $823 187 RelLink15 = $824 188 RelDef = $825 189 RelSymbol = $826 190 RelNegSymbol = $827 191 RelStat18 = $830 192 RelStat15 = $831 193 RelExtendedAbs = $836 // Ten bit count follows this code. 194 $) 195 manifest 196 $( TagXrMask = $817 197 TagPrMask = $8700000000100 198 199 Mod16 = $8777777777760 200 $) 201 202 manifest // Modifiers and tags used in the code generator. 203 $( Ap = $8000000000100 204 Ab = $8100000000100 205 Bp = $8200000000100 206 Bb = $8300000000100 207 Lp = $8400000000100 208 Lb = $8500000000100 209 Sp = $8600000000100 210 Sb = $8700000000100 211 212 Al = $805 213 Au = $801 214 Dl = $807 215 Du = $803 216 Ql = $806 217 Qu = $802 218 219 X0 = $810 220 X1 = $811 221 X2 = $812 222 X3 = $813 223 X4 = $814 224 X5 = $815 225 X6 = $816 226 X7 = $817 227 228 Ft2 = $846 229 Ic = $804 230 Star = $820 231 StarThenReg = $860 232 $) 233 manifest // Internal codes for all machine registers used. 234 $( Ar = 1 235 Qr = 2 236 237 Xr0 = 3 238 Xr1 = 4 239 Xr2 = 5 240 Xr3 = 6 241 Xr4 = 7 242 Xr5 = 8 243 Xr6 = 9 244 Xr7 = 10 245 246 Apr = 11 247 Abr = 12 248 Bpr = 13 249 Bbr = 14 250 Lpr = 15 251 Lbr = 16 252 Spr = 17 253 Sbr = 18 254 255 EAQr = 19 256 257 NumberOfRegisters = 20 258 259 AorQr = 22 260 AnyPr = 23 261 AnyXr = 24 262 $) 13 get "bcpl_metering_head" 1 // Variables and constants for use in measuring performance of the various parts of the BCPL compiler. 2 // Last modified on 04/02/74 at 16:02:05 by R F Mabee. 3 // First installed with Version 3.4 by R F Mabee. 4 // Written in April 1973 to obtain detailed info about compiler performance. 5 6 external 7 $( SaveOldUsage = "bcpl_utility$SaveOldUsage" 8 RecordUsage = "bcpl_utility$RecordUsage" 9 PrintMeters = "bcpl_meter_print$PrintMeters" 10 $) 11 12 global 13 $( Metering : 150 14 MeterData : 151 15 DictionaryDepth : 152 16 TotalLines : 153 17 TotalWords : 154 18 $) 19 20 manifest 21 $( DriverOverhead_Meter = 0 22 SyntaxAnalysis_Meter = 3 23 Nextsymb_Meter = 6 24 ProcessGet_Meter = 9 25 SymbolAdd_Meter = 12 26 SymbolSearch_Meter = 15 27 RchWithoutListing_Meter = 18 28 RchWithListing_Meter = 21 29 PrintXref_Meter = 24 30 MakeObject_Meter = 27 31 CompileSwitchWithoutOptimizing_Meter = 30 32 CompileSwitchWithOptimizing_Meter = 33 33 SemanticTranslation_Meter = 36 34 CodeGeneration_Meter = 39 35 CompileExpression_Meter = 42 36 MeteringOverhead_Meter = 45 37 TotalLines_Count = 48 38 TextWords_Count = 49 39 DictionaryDepth_Count = 50 40 Meters_Length = 51 41 $) 14 15 let CgInit () be 16 $( NewLiteralsList, OldLiteralsList := 0, 0 17 18 LabTable := Newvec (LabTableSize) 19 for i = 0 to LabTableSize do LabTable!i := 0 20 21 if Symbols do 22 $( SymtabFirst := Newvec (SymtabSize) 23 SymtabV, SymtabP := SymtabFirst, 2 24 $) 25 if LineMap do 26 $( LineMapFirst := Newvec (1) 27 LineMapFirst!0 := 1 28 LineMapList, LineMapLength := LineMapFirst, 1 29 $) 30 31 CodeFirst := Newvec (CodeSize) 32 CodeV, CodeP := CodeFirst, 2 33 BeginSection (0) 34 35 LinkList, MainEntriesList := 0, 0 36 CgTempList := 0 37 LabMaxSSP, MaxSSP := 0, 0 38 if Crep do 39 $( LabMaxSSP := Nextparam () 40 DefineLab (LabMaxSSP, 0) // To prevent useless error message. 41 $) 42 LabMaxArg, MaxArgOffset := 0, 0 43 SaveSpaceSize := Machine = 645 -> 4, 2 44 StackRefTag := Machine = 645 -> Sp | X1, Sb | X1 45 RegisterTemps, RegisterUsage := Newvec (NumberOfRegisters), Newvec (NumberOfRegisters) 46 for i = 0 to NumberOfRegisters do RegisterTemps!i, RegisterUsage!i := 0, 0 47 UsageCounter := 0 48 49 Jumpsw := not Crep 50 DeferredJumpLabel := 0 51 EntryLabel, GetLpLabel := 0, 0 52 Param, Reloc, Comment := 0, 0, 0 53 IndicatorsSetBy := 0 54 $) 55 56 and FinishText (StaticList, EntriesList) be 57 $( OutLiterals () 58 if Crep do Listing := false // Avoid lengthy, useless output if in online-debug mode. 59 if GetLpLabel ne 0 do WriteGetlp () 60 if EntryLabel ne 0 do WriteEntry () 61 Jumpsw := false 62 TextLength := LC 63 if (LC & 1) ne 0 do OutW2 (0, "padding") 64 TextRelbits := SaveRelbits () 65 TotalWords := LC 66 67 BeginSection (0) 68 WriteDefs (EntriesList) 69 DefsLength := LC 70 if (LC & 1) ne 0 do OutW2 (0, "padding") 71 DefsRelbits := SaveRelbits () 72 TotalWords := TotalWords + LC 73 DefsRelbits := 0 // Discard, not currently needed for new-format object segment. 74 75 BeginSection (0) 76 WriteLinkage (StaticList) 77 LinkageLength := LC 78 if (LC & 1) ne 0 do OutW2 (0, "padding") 79 LinkageRelbits := SaveRelbits () 80 TotalWords := TotalWords + LC 81 82 BeginSection (0) 83 WriteSymbol () // Counts bits in TextRelbits, etc. 84 SymbolRelbits := SaveRelbits () 85 BeginSection (LC) // To Multics this is a part of the symbol section without relbits. 86 WriteRelBits () 87 SymbolLength := LC 88 SaveRelbits () // For listing - not part of object segment. 89 TotalWords := TotalWords + LC 90 91 BeginSection (TotalWords) // Use absolute location counter for object map. 92 WriteObjectMap (TotalWords) 93 SaveRelbits () // For listing - not part of object segment. 94 TotalWords := LC 95 96 if Listing do WriteS (OUTPUT, "*tend*n") 97 CodeV!0, CodeV!1 := 0, CodeP 98 99 // Fill in final addresses for all label references in text. 100 let p = CodeFirst 101 until p = 0 do 102 $( for i = 2 to p!1 - 3 by 3 do switchon p!i & Right into 103 $( case CodeSwitch: 104 case InstructionSwitch: 105 case DataSwitch: 106 let Param = p!i rshift Left 107 if Param ne 0 do 108 $( let N = LookupLabel (Param) 109 if N = 0 do CGreport (UndefLab, Param) 110 p!(i + 1) := p!(i + 1) + (N lshift 18) 111 $) 112 LC := LC + 1 113 loop 114 115 case LineCountSwitch: 116 LineCount := p!(i + 1) 117 loop 118 119 case LabelSwitch: 120 if LC ne p!(i + 2) do CGreport (PhaseError, "FinishText") 121 loop 122 123 case SectionSwitch: 124 LC := p!(i + 1) 125 default: 126 $) 127 p := p!0 128 $) 129 $) 130 and SaveRelbits () = valof 131 $( if AbsRelBits > 0 do PutAbsBits () 132 RelbitsList!1 := 0 133 resultis List2 (RelbitsLength * 36 + RelbitsOffset, RelbitsFirst) 134 $) 135 and BeginSection (NewLC) be 136 $( LC := NewLC 137 RelbitsFirst := Newvec (1) 138 RelbitsFirst!0 := 0 139 RelbitsList := RelbitsFirst 140 RelbitsOffset, RelbitsLength, AbsRelBits := 0, 0, 0 141 PutCode (SectionSwitch, NewLC, RelbitsList) // So listing will agree. 142 $) 143 144 let BuildObject (s) = valof 145 $( let p, LC = CodeFirst, 0 146 until p = 0 do 147 $( for i = 2 to p!1 - 3 by 3 do switchon p!i & Right into 148 $( case CodeSwitch: 149 case InstructionSwitch: 150 case DataSwitch: 151 s!LC := p!(i + 1) 152 LC := LC + 1 153 default: 154 $) 155 p := p!0 156 $) 157 resultis LC * 36 158 $) 159 160 and WriteObjectListing () be 161 $( let p = CodeFirst 162 until p = 0 do 163 $( for i = 2 to p!1 - 3 by 3 do ListCodeItem (lv p!i) 164 p := p!0 165 $) 166 $) CAE time 3.7, 202 source lines per second. cross reference table Ab bcpl_cg_head: 204 Abr bcpl_cg_head: 247 AbsRelBits bcpl_cg_head: 106, bcpl_cg0: 131, 140 AddLiteral bcpl_cg_head: 37 Address bcpl_cg_head: 107 Al bcpl_cg_head: 212 AND_S bcpl_symbols: 8 AnyPr bcpl_cg_head: 260 AnyXr bcpl_cg_head: 261 AorQr bcpl_cg_head: 259 Ap bcpl_cg_head: 203 ApplyDiadicOperator bcpl_cg_head: 14 ApplyMonadicOperator bcpl_cg_head: 13 ApplyOffsetOperator bcpl_cg_head: 15 Apr bcpl_cg_head: 246 Ar bcpl_cg_head: 234 ArgCount bcpl_cg_head: 108 ArgLen bcpl_cg_head: 109 ASSIGN_S bcpl_symbols: 9 Au bcpl_cg_head: 213 BadAddress bcpl_cg_codes: 7 BadLabel bcpl_cg_codes: 8 BadRegOpPair bcpl_cg_codes: 9 Bb bcpl_cg_head: 206 Bbr bcpl_cg_head: 249 BeginSection bcpl_cg0: 33, 67, 75, 82, 85, 91, 135 BE_S bcpl_symbols: 10 BIT_S bcpl_symbols: 11 Bp bcpl_cg_head: 205 Bpr bcpl_cg_head: 248 BREAK_S bcpl_symbols: 12 BuildObject bcpl_compiler_head: 63, bcpl_cg0: 144 BY_S bcpl_symbols: 13 CAE bcpl_compiler_head: 55 CaeReport bcpl_compiler_head: 40 CALL_S bcpl_symbols: 14 CASE_S bcpl_symbols: 15 CgInit bcpl_compiler_head: 62, bcpl_cg0: 15 CGreport bcpl_compiler_head: 42, bcpl_cg0: 109, 120 CgTempList bcpl_cg_head: 110, bcpl_cg0: 36 CgTempSize bcpl_cg_head: 169 Ch bcpl_compiler_head: 83 CHARCONST_S bcpl_symbols: 18 CHAR_S bcpl_symbols: 17 CheckAddr bcpl_cg_head: 88 ClaimRegister bcpl_cg_head: 26 Cleanup bcpl_compiler_head: 52 ClearMemory bcpl_cg_head: 36 ClearRegisters bcpl_cg_head: 35 CodeFirst bcpl_cg_head: 111, bcpl_cg0: 31, 32, 100, 145, 161 CodeGeneration_Meter bcpl_metering_head: 34 CodeP bcpl_cg_head: 112, bcpl_cg0: 32, 97 CodeSize bcpl_cg_head: 170, bcpl_cg0: 31 CodeSwitch bcpl_cg_head: 175, bcpl_cg0: 103, 148 CodeV bcpl_cg_head: 113, bcpl_cg0: 32, 97, 97 COLON_S bcpl_symbols: 19 Column bcpl_compiler_head: 119 CombineAddress bcpl_cg_head: 30 COMMA_S bcpl_symbols: 20 Comment bcpl_cg_head: 114, bcpl_cg0: 52 CompareStrings bcpl_compiler_head: 16 CompareToZero bcpl_cg_head: 47 Compentry bcpl_cg_head: 58 Compexternal bcpl_cg_head: 73 Compfinish bcpl_cg_head: 69 Compfnap bcpl_cg_head: 62 Compgoto bcpl_cg_head: 70 CompileExpression_Meter bcpl_metering_head: 35 CompilerDTM bcpl_compiler_head: 103 CompilerDTMString bcpl_compiler_head: 102 CompilerVersionNumber bcpl_compiler_head: 101 CompilerVersionString bcpl_compiler_head: 100 CompileSwitchWithOptimizing_Meter bcpl_metering_head: 32 CompileSwitchWithoutOptimizing_Meter bcpl_metering_head: 31 Compjump bcpl_cg_head: 31 Complab bcpl_cg_head: 32 Compreturn bcpl_cg_head: 59 Compstring bcpl_cg_head: 71 Compswitch bcpl_cg_head: 90 CompSystemCall bcpl_cg_head: 65 Comptable bcpl_cg_head: 72 Concatenate bcpl_compiler_head: 17 COND_S bcpl_symbols: 21 CONSTANT_S bcpl_symbols: 22 CONSTDEF_S bcpl_symbols: 23 ConvertNtoS bcpl_compiler_head: 19 ConvertStoN bcpl_compiler_head: 18 CreateArglist bcpl_cg_head: 60 CreateSystemArglist bcpl_cg_head: 63 Crep bcpl_compiler_head: 89, bcpl_cg0: 38, 49, 58 DataSwitch bcpl_cg_head: 177, bcpl_cg0: 105, 150 DEFAULT_S bcpl_symbols: 24 DeferredJumpLabel bcpl_cg_head: 116, bcpl_cg0: 50 DefineLab bcpl_cg_head: 33, bcpl_cg0: 40 DefsLength bcpl_cg_head: 117, bcpl_cg0: 69 DefsRelbits bcpl_cg_head: 118, bcpl_cg0: 71, 73 DiadicJumpcond bcpl_cg_head: 17 DictionaryDepth bcpl_metering_head: 15 DictionaryDepth_Count bcpl_metering_head: 39 DictionaryEntry bcpl_compiler_head: 118 DisclaimRegister bcpl_cg_head: 27 DIV_F bcpl_symbols: 25 DIV_S bcpl_symbols: 27 Dl bcpl_cg_head: 214 DOUBLE_S bcpl_symbols: 29 DO_S bcpl_symbols: 28 DriverOverhead_Meter bcpl_metering_head: 21 Du bcpl_cg_head: 215 DupCase bcpl_cg_codes: 10 DupLabel bcpl_cg_codes: 11 EAQr bcpl_cg_head: 255 ENDCASE_S bcpl_symbols: 30 Endofstreamch bcpl_compiler_head: 126 ENDPROG_S bcpl_symbols: 31 EnterIntoCrossreference bcpl_compiler_head: 48 EntriesList bcpl_cg0: 56, 68 EntryLabel bcpl_cg_head: 119, bcpl_cg0: 51, 60 EqualString bcpl_compiler_head: 15 EQV_S bcpl_symbols: 35 EQ_F bcpl_symbols: 33 EQ_S bcpl_symbols: 34 Errorsw bcpl_compiler_head: 115 ERROR_S bcpl_symbols: 32 EvalNumber bcpl_cg_head: 20 Even bcpl_compiler_head: 127 EXTERNAL_S bcpl_symbols: 37 FALSE_S bcpl_symbols: 38 FileCount bcpl_compiler_head: 109 FileNames bcpl_compiler_head: 107 FileShift bcpl_compiler_head: 129 FilesInfo bcpl_compiler_head: 108 FindInRegister bcpl_cg_head: 29 FindPrintName bcpl_compiler_head: 47 FinishText bcpl_cg_head: 11, bcpl_cg0: 56 FINISH_S bcpl_symbols: 39 FIXED_S bcpl_symbols: 40 FLOAT_S bcpl_symbols: 41 FNAP_S bcpl_symbols: 42 FNDEF_S bcpl_symbols: 43 Format bcpl_compiler_head: 11 FormCharconst bcpl_compiler_head: 37 FormOpcode bcpl_cg_head: 86 FormStringconst bcpl_compiler_head: 38 FormTag bcpl_cg_head: 87 FOR_S bcpl_symbols: 44 Freevec bcpl_compiler_head: 25 Ft2 bcpl_cg_head: 228 GetLpLabel bcpl_cg_head: 120, bcpl_cg0: 51, 59 GetRegister bcpl_cg_head: 53 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 HeaderSwitch bcpl_cg_head: 181 i bcpl_cg0: 19, 19, 46, 46, 46, 102, 102, 106, 110, 110, 116, 120, 124, 147, 147, 151, 163, 163 Ic bcpl_cg_head: 229 IFNOT_S bcpl_symbols: 54 IFSO_S bcpl_symbols: 55 IF_S bcpl_symbols: 53 IndicatorsSetBy bcpl_cg_head: 121, bcpl_cg0: 53 INPUT bcpl_compiler_head: 81 InRegister bcpl_cg_head: 28 InstructionSwitch bcpl_cg_head: 176, bcpl_cg0: 104, 149 INTO_S bcpl_symbols: 57 IsAddress bcpl_cg_head: 22 IsNumber bcpl_cg_head: 19 IsStored bcpl_cg_head: 23 IsZero bcpl_cg_head: 21 Jumpsw bcpl_cg_head: 122, bcpl_cg0: 49, 61 LABDEF_S bcpl_symbols: 58 LabelSwitch bcpl_cg_head: 178, bcpl_cg0: 119 LABEL_S bcpl_symbols: 59 LabMaxArg bcpl_cg_head: 123, bcpl_cg0: 42 LabMaxSSP bcpl_cg_head: 124, bcpl_cg0: 37, 39, 40 LabTable bcpl_cg_head: 126, bcpl_cg0: 18, 19 LabTableSize bcpl_cg_head: 171, bcpl_cg0: 18, 19 Lb bcpl_cg_head: 208 Lbr bcpl_cg_head: 251 LC bcpl_cg_head: 127, bcpl_cg0: 62, 63, 65, 69, 70, 72, 77, 78, 80, 85, 87, 89, 94, 112, 112, 120, 124, 136, 145, 151, 152, 152, 157 Left bcpl_compiler_head: 125, bcpl_cg0: 106 Length bcpl_compiler_head: 20 LengthInWords bcpl_compiler_head: 21 LENGTH_S bcpl_symbols: 62 LET_S bcpl_symbols: 63 LexInit bcpl_compiler_head: 56 LE_F bcpl_symbols: 60 LE_S bcpl_symbols: 61 LineCount bcpl_compiler_head: 114, bcpl_cg0: 116 LineCountSwitch bcpl_cg_head: 179, bcpl_cg0: 115 LineMap bcpl_compiler_head: 91, bcpl_cg0: 25 LineMapFirst bcpl_cg_head: 128, bcpl_cg0: 26, 27, 28 LineMapLength bcpl_cg_head: 129, bcpl_cg0: 28 LineMapList bcpl_cg_head: 130, bcpl_cg0: 28 LineMask bcpl_compiler_head: 129 LinkageLength bcpl_cg_head: 131, bcpl_cg0: 77 LinkageRelbits bcpl_cg_head: 132, bcpl_cg0: 79 LinkList bcpl_cg_head: 133, bcpl_cg0: 35 LinkRefersThis bcpl_cg_codes: 12 List1 bcpl_compiler_head: 26 List2 bcpl_compiler_head: 27, bcpl_cg0: 133 List3 bcpl_compiler_head: 28 List4 bcpl_compiler_head: 29 List5 bcpl_compiler_head: 30 List6 bcpl_compiler_head: 31 ListCodeItem bcpl_cg_head: 103, bcpl_cg0: 163 Listing bcpl_compiler_head: 86, bcpl_cg0: 58, 96 LIST_S bcpl_symbols: 64 Literal bcpl_cg_head: 55 LoadAppropriateRegister bcpl_cg_head: 44 LoadIndex bcpl_cg_head: 43 LoadNumber bcpl_cg_head: 45 LoadPointer bcpl_cg_head: 42 LoadRegister bcpl_cg_head: 41 LOCAL_S bcpl_symbols: 65 LOGAND_S bcpl_symbols: 67 LOGOR_S bcpl_symbols: 68 LookupLabel bcpl_cg_head: 34, bcpl_cg0: 108 LookupTemp bcpl_cg_head: 24 LOOP_S bcpl_symbols: 69 Lp bcpl_cg_head: 207 Lpr bcpl_cg_head: 250 Lrand bcpl_cg_head: 134 LSHIFT_S bcpl_symbols: 72 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 LV_STATIC bcpl_symbols: 80 LV_TEMP bcpl_symbols: 81 Machine bcpl_compiler_head: 93, bcpl_cg0: 43, 44 MainEntriesList bcpl_cg_head: 136, bcpl_cg0: 35 MAIN_S bcpl_symbols: 82 Makeaddressable bcpl_cg_head: 48 MakeCgTemp bcpl_cg_head: 25 MakeObject_Meter bcpl_metering_head: 30 MakeTimeString bcpl_compiler_head: 35 MANIFEST_S bcpl_symbols: 83 MaxArgOffset bcpl_cg_head: 137, bcpl_cg0: 42 MaxSSP bcpl_cg_head: 138, bcpl_cg0: 37 MeterData bcpl_metering_head: 14 Metering bcpl_metering_head: 13 MeteringOverhead_Meter bcpl_metering_head: 36 Meters_Length bcpl_metering_head: 40 MINUS_F bcpl_symbols: 84 MINUS_S bcpl_symbols: 85 Mod16 bcpl_cg_head: 199 MonadicJumpcond bcpl_cg_head: 16 MONITOR bcpl_compiler_head: 82 MULT_F bcpl_symbols: 87 MULT_S bcpl_symbols: 88 N bcpl_cg0: 108, 109, 110 NAMECHAIN bcpl_compiler_head: 116 NAME_S bcpl_symbols: 89 NEG_F bcpl_symbols: 90 NEG_S bcpl_symbols: 91 NEQV_S bcpl_symbols: 92 NewLC bcpl_cg0: 135, 136, 141 NewLiteralsList bcpl_cg_head: 139, bcpl_cg0: 16 NewSSP bcpl_cg_head: 57 Newvec bcpl_compiler_head: 24, bcpl_cg0: 18, 22, 26, 31, 45, 45, 137 Nextparam bcpl_compiler_head: 36, bcpl_cg0: 39 Nextsymb bcpl_compiler_head: 44 Nextsymb_Meter bcpl_metering_head: 23 NE_F bcpl_symbols: 93 NE_S bcpl_symbols: 94 NIL_S bcpl_symbols: 95 NOT_S bcpl_symbols: 97 NumberOfRegisters bcpl_cg_head: 257, bcpl_cg0: 45, 45, 46 NUMBER_S bcpl_symbols: 98 OcodeSw bcpl_compiler_head: 95 OFFSET_S bcpl_symbols: 99 OldLabel bcpl_cg_head: 140 OldLiteralsList bcpl_cg_head: 141, bcpl_cg0: 16 Optimize bcpl_compiler_head: 92 OptionString bcpl_compiler_head: 106 OR_S bcpl_symbols: 100 OutData bcpl_cg_head: 75 OutLiterals bcpl_cg_head: 38, bcpl_cg0: 57 Outop bcpl_cg_head: 76 Outop2 bcpl_cg_head: 77 Outop3 bcpl_cg_head: 78 Outop4 bcpl_cg_head: 79 OUTPUT bcpl_compiler_head: 80, bcpl_cg0: 96 Outstring bcpl_cg_head: 39 OutW bcpl_cg_head: 80 OutW2 bcpl_cg_head: 81, bcpl_cg0: 63, 70, 78 OverCase bcpl_cg_codes: 13 p bcpl_cg0: 100, 101, 102, 102, 106, 110, 110, 116, 120, 124, 127, 127, 145, 146, 147, 147, 151, 155, 155, 161, 162, 163, 163, 164, 164 Packstring bcpl_compiler_head: 12 Param bcpl_cg_head: 142, bcpl_cg0: 52, 106, 107, 108, 109 PhaseError bcpl_cg_codes: 14, bcpl_cg0: 120 Plist bcpl_compiler_head: 59 PLUS_F bcpl_symbols: 101 PLUS_S bcpl_symbols: 102 Pname bcpl_compiler_head: 58 POINTER_S bcpl_symbols: 103 PopInput bcpl_compiler_head: 34 POS_F bcpl_symbols: 104 POS_S bcpl_symbols: 105 PPrep bcpl_compiler_head: 88 Preserve bcpl_cg_head: 50 PrintMeters bcpl_metering_head: 9 PrintXref_Meter bcpl_metering_head: 29 ProcessGet_Meter bcpl_metering_head: 24 ProgramName bcpl_compiler_head: 110 PushInput bcpl_compiler_head: 33 PutAbsBits bcpl_cg_head: 83, bcpl_cg0: 131 PutCode bcpl_cg_head: 82, bcpl_cg0: 141 Ql bcpl_cg_head: 216 Qr bcpl_cg_head: 235 Qu bcpl_cg_head: 217 QuietSw bcpl_compiler_head: 97 RandomI bcpl_compiler_head: 22 RBRA_S bcpl_symbols: 107 RchWithListing_Meter bcpl_metering_head: 28 RchWithoutListing_Meter bcpl_metering_head: 27 Readch bcpl_compiler_head: 7 RecordUsage bcpl_metering_head: 8 RegisterTemps bcpl_cg_head: 144, bcpl_cg0: 45, 46 RegisterUsage bcpl_cg_head: 146, bcpl_cg0: 45, 46 REGISTER_S bcpl_symbols: 108 RelbitsFirst bcpl_cg_head: 147, bcpl_cg0: 133, 137, 138, 139 RelbitsLength bcpl_cg_head: 148, bcpl_cg0: 133, 140 RelbitsList bcpl_cg_head: 149, bcpl_cg0: 132, 139, 141 RelbitsOffset bcpl_cg_head: 150, bcpl_cg0: 133, 140 RelDef bcpl_cg_head: 188 RelExtendedAbs bcpl_cg_head: 193 RelLink15 bcpl_cg_head: 187 RelLink18 bcpl_cg_head: 185 RelNegLink18 bcpl_cg_head: 186 RelNegSymbol bcpl_cg_head: 190 Reloc bcpl_cg_head: 151, bcpl_cg0: 52 RelStat15 bcpl_cg_head: 192 RelStat18 bcpl_cg_head: 191 RelSymbol bcpl_cg_head: 189 RelText bcpl_cg_head: 184 REL_S bcpl_symbols: 109 RemoveEscapes bcpl_compiler_head: 14 REM_S bcpl_symbols: 110 REPEATUNTIL_S bcpl_symbols: 113 REPEATWHILE_S bcpl_symbols: 114 REPEAT_S bcpl_symbols: 112 REP_S bcpl_symbols: 111 ResultBlockBegin bcpl_cg_head: 66 ResultGet bcpl_cg_head: 68 ResultInfo bcpl_cg_head: 152 ResultInfoList bcpl_cg_head: 153 RESULTIS_S bcpl_symbols: 115 ResultSet bcpl_cg_head: 67 RETURN_S bcpl_symbols: 117 Right bcpl_compiler_head: 125, bcpl_cg0: 102, 147 RKET_S bcpl_symbols: 118 Rrand bcpl_cg_head: 143 RSHIFT_S bcpl_symbols: 119 RTAP_S bcpl_symbols: 120 RTDEF_S bcpl_symbols: 121 RV_S bcpl_symbols: 122 s bcpl_cg0: 144, 151 Satisfactory bcpl_cg_head: 54 SaveOldUsage bcpl_metering_head: 7 SaveRelbits bcpl_cg0: 64, 71, 79, 84, 88, 93, 130 SaveSpaceSize bcpl_cg_head: 154, bcpl_cg0: 43 Sb bcpl_cg_head: 210, bcpl_cg0: 44 Sbr bcpl_cg_head: 253 SBRA_S bcpl_symbols: 123 SECTBEGIN_S bcpl_symbols: 124 SECTBRA_S bcpl_symbols: 125 SECTEND_S bcpl_symbols: 127 SectionHeader bcpl_cg_head: 85 SectionSwitch bcpl_cg_head: 180, bcpl_cg0: 123, 141 SECTKET_S bcpl_symbols: 128 SemanticTranslation_Meter bcpl_metering_head: 33 SEMICOLON_S bcpl_symbols: 129 SetLineNumber bcpl_cg_head: 84 SetupAddr bcpl_cg_head: 46 SKET_S bcpl_symbols: 130 Sp bcpl_cg_head: 209, bcpl_cg0: 44 Spr bcpl_cg_head: 252 StackRefTag bcpl_cg_head: 158, bcpl_cg0: 44 Star bcpl_cg_head: 230 StarThenReg bcpl_cg_head: 231 StaticList bcpl_cg0: 56, 76 STATIC_S bcpl_symbols: 131 Store bcpl_cg_head: 51 StoreArg bcpl_cg_head: 61 StoreRegister bcpl_cg_head: 52 StoreString bcpl_compiler_head: 32 StoreSystemArg bcpl_cg_head: 64 STRINGCONST_S bcpl_symbols: 133 STRING_S bcpl_symbols: 132 STRUCTURE_S bcpl_symbols: 134 SwapAandQ bcpl_cg_head: 49 SWITCHON_S bcpl_symbols: 135 Symb bcpl_compiler_head: 117 SymbolAdd_Meter bcpl_metering_head: 25 SymbolLength bcpl_cg_head: 156, bcpl_cg0: 87 SymbolName bcpl_compiler_head: 46 SymbolRelbits bcpl_cg_head: 157, bcpl_cg0: 84 Symbols bcpl_compiler_head: 90, bcpl_cg0: 21 SymbolSearch_Meter bcpl_metering_head: 26 SymtabFirst bcpl_cg_head: 159, bcpl_cg0: 22, 23 SymtabP bcpl_cg_head: 160, bcpl_cg0: 23 SymtabSize bcpl_cg_head: 172, bcpl_cg0: 22 SymtabV bcpl_cg_head: 161, bcpl_cg0: 23 SyntaxAnalysis_Meter bcpl_metering_head: 22 TABLE_S bcpl_symbols: 137 Tag bcpl_cg_head: 162 TagPrMask bcpl_cg_head: 197 TagXrMask bcpl_cg_head: 196 TEMP_S bcpl_symbols: 138 TEST_S bcpl_symbols: 139 TextLength bcpl_cg_head: 163, bcpl_cg0: 62 TextRelbits bcpl_cg_head: 164, bcpl_cg0: 64 TextWords_Count bcpl_metering_head: 38 TimeNow bcpl_compiler_head: 105 TimeNowString bcpl_compiler_head: 104 TotalLines bcpl_metering_head: 16 TotalLines_Count bcpl_metering_head: 37 TotalWords bcpl_metering_head: 17, bcpl_cg0: 65, 72, 72, 80, 80, 89, 89, 91, 92, 94 TO_S bcpl_symbols: 140 Trans bcpl_compiler_head: 61 Transreport bcpl_compiler_head: 41 TRUE_S bcpl_symbols: 141 TYPE_S bcpl_symbols: 142 UndefLab bcpl_cg_codes: 15, bcpl_cg0: 109 UnexpectedCase bcpl_compiler_head: 130 UNLESS_S bcpl_symbols: 143 Unpackstring bcpl_compiler_head: 13 UNTIL_S bcpl_symbols: 144 UpperCase bcpl_compiler_head: 87 UsageCounter bcpl_cg_head: 166, bcpl_cg0: 47 UserID bcpl_compiler_head: 111 UtilitiesInit bcpl_compiler_head: 51 VALDEF_S bcpl_symbols: 145 VALOF_S bcpl_symbols: 147 VECAP_S bcpl_symbols: 149 VEC_S bcpl_symbols: 148 Vmax bcpl_compiler_head: 128 WHILE_S bcpl_symbols: 150 Writech bcpl_compiler_head: 8 WriteData bcpl_cg_head: 101 WriteDefs bcpl_cg_head: 94, bcpl_cg0: 68 WriteEntry bcpl_cg_head: 93, bcpl_cg0: 60 WriteGetlp bcpl_cg_head: 92, bcpl_cg0: 59 WriteInstruction bcpl_cg_head: 102 WriteLinkage bcpl_cg_head: 95, bcpl_cg0: 76 WriteN bcpl_compiler_head: 10 WriteObjectListing bcpl_compiler_head: 64, bcpl_cg0: 160 WriteObjectMap bcpl_cg_head: 99, bcpl_cg0: 92 WriteRelBits bcpl_cg_head: 98, bcpl_cg0: 86 WriteS bcpl_compiler_head: 9, bcpl_cg0: 96 WriteSymbol bcpl_cg_head: 97, bcpl_cg0: 83 X0 bcpl_cg_head: 219 X1 bcpl_cg_head: 220, bcpl_cg0: 44, 44 X2 bcpl_cg_head: 221 X3 bcpl_cg_head: 222 X4 bcpl_cg_head: 223 X5 bcpl_cg_head: 224 X6 bcpl_cg_head: 225 X7 bcpl_cg_head: 226 Xr0 bcpl_cg_head: 237 Xr1 bcpl_cg_head: 238 Xr2 bcpl_cg_head: 239 Xr3 bcpl_cg_head: 240 Xr4 bcpl_cg_head: 241 Xr5 bcpl_cg_head: 242 Xr6 bcpl_cg_head: 243 Xr7 bcpl_cg_head: 244 Xref bcpl_compiler_head: 94 Trans time 0.7, 1301 object words per second. " Begin text of SaveRelbits aa 000000 000013 123141 zero 11,42593 " SaveRelbits aa 000001 166145 122145 zero 60517,42085 aa 000002 154142 151164 zero 55394,53876 aa 000003 163000 000000 zero 58880 L3: aa 000004 000000 213000 130 epaq 0 " set lp to linkage section aa 000005 700026 764161 lprplp sb|22,*au aa 000006 200000 021100 adlx1 bp|0 " BCPL save aa 000007 700000 542111 sprpbp sb|0,x1 aa 000010 700001 544111 sprplp sb|1,x1 aa 000011 700423 620111 eax0 sb|275,x1 aa 000012 777760 360003 anx0 -16,du aa 000013 700025 740100 stx0 sb|21 aa 000014 600023 740100 stx0 sp|19 " end of save sequence aa 000015 600454 234100 131 szn sp|300 " AbsRelBits aa 000016 000003 604404 tmoz L8 4a 000017 400054 272120 tsbbp lp|L9,* " PutAbsBits aa 000020 000010 000000 zero 8 L8: aa 000021 600527 760100 132 lprpap sp|343 " RelbitsList aa 000022 000001 450100 stz ap|1 aa 000023 600526 236100 133 ldq sp|342 " RelbitsLength aa 000024 000044 402007 mpy 36,dl " 36 aa 000025 600530 076100 adq sp|344 " RelbitsOffset aa 000026 700012 756111 stq sb|10,x1 aa 000027 600525 236100 ldq sp|341 " RelbitsFirst aa 000030 700013 756111 stq sb|11,x1 4a 000031 400052 272120 tsbbp lp|L10,* " List2 aa 000032 000010 000002 zero 8,2 L7: aa 000033 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000034 200000 121100 sblx1 bp|0 aa 000035 700001 764111 lprplp sb|1,x1 aa 000036 200001 710100 tra bp|1 " end of return sequence " Begin text of BeginSection aa 000037 000014 102145 zero 12,33893 " BeginSection aa 000040 147151 156123 zero 52841,56403 aa 000041 145143 164151 zero 51811,59497 aa 000042 157156 000000 zero 56942 L4: aa 000043 000000 213000 135 epaq 0 " set lp to linkage section aa 000044 700026 764161 lprplp sb|22,*au aa 000045 200000 021100 adlx1 bp|0 " BCPL save aa 000046 700000 542111 sprpbp sb|0,x1 aa 000047 700001 544111 sprplp sb|1,x1 aa 000050 700424 620111 eax0 sb|276,x1 aa 000051 777760 360003 anx0 -16,du aa 000052 700025 740100 stx0 sb|21 aa 000053 600023 740100 stx0 sp|19 " end of save sequence aa 000054 700002 236111 136 ldq sb|2,x1 " NewLC aa 000055 600501 756100 stq sp|321 " LC aa 000056 000001 236007 137 ldq 1,dl " 1 aa 000057 700006 756111 stq sb|6,x1 4a 000060 400050 272120 tsbbp lp|L14,* " Newvec aa 000061 000004 000001 zero 4,1 aa 000062 600525 756100 stq sp|341 " RelbitsFirst aa 000063 600525 762100 138 lprpbp sp|341 " RelbitsFirst aa 000064 200000 450100 stz bp|0 aa 000065 600525 236100 139 ldq sp|341 " RelbitsFirst aa 000066 600527 756100 stq sp|343 " RelbitsList aa 000067 600530 450100 140 stz sp|344 " RelbitsOffset aa 000070 600526 450100 stz sp|342 " RelbitsLength aa 000071 600454 450100 stz sp|300 " AbsRelBits aa 000072 000006 236007 141 ldq 6,dl " SectionSwitch aa 000073 700006 756111 stq sb|6,x1 aa 000074 700002 236111 ldq sb|2,x1 " NewLC aa 000075 700007 756111 stq sb|7,x1 aa 000076 600527 236100 ldq sp|343 " RelbitsList aa 000077 700010 756111 stq sb|8,x1 4a 000100 400046 272120 tsbbp lp|L15,* " PutCode aa 000101 000004 000003 zero 4,3 L13: aa 000102 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000103 200000 121100 sblx1 bp|0 aa 000104 700001 764111 lprplp sb|1,x1 aa 000105 200001 710100 tra bp|1 " end of return sequence " Begin text of FinishText aa 000106 000012 106151 zero 10,35945 " FinishText aa 000107 156151 163150 zero 56425,58984 aa 000110 124145 170164 zero 43109,61556 L2: aa 000111 000000 213000 56 epaq 0 " set lp to linkage section aa 000112 700026 764161 lprplp sb|22,*au aa 000113 200000 021100 adlx1 bp|0 " BCPL save aa 000114 700000 542111 sprpbp sb|0,x1 aa 000115 700001 544111 sprplp sb|1,x1 aa 000116 700423 620111 eax0 sb|275,x1 aa 000117 777760 360003 anx0 -16,du aa 000120 700025 740100 stx0 sb|21 aa 000121 600023 740100 stx0 sp|19 " end of save sequence 4a 000122 400044 272120 57 tsbbp lp|L19,* " OutLiterals aa 000123 000020 000000 zero 16 aa 000124 600147 234100 58 szn sp|103 " Crep aa 000125 000002 600004 tze L20 aa 000126 600144 450100 stz sp|100 " Listing L20: aa 000127 600472 234100 59 szn sp|314 " GetLpLabel aa 000130 000003 600004 tze L21 4a 000131 400042 272120 tsbbp lp|L22,* " WriteGetlp aa 000132 000020 000000 zero 16 L21: aa 000133 600471 234100 60 szn sp|313 " EntryLabel aa 000134 000003 600004 tze L23 4a 000135 400040 272120 tsbbp lp|L24,* " WriteEntry aa 000136 000020 000000 zero 16 L23: aa 000137 600474 450100 61 stz sp|316 " Jumpsw aa 000140 600501 236100 62 ldq sp|321 " LC aa 000141 600545 756100 stq sp|357 " TextLength aa 000142 600501 236100 63 ldq sp|321 " LC aa 000143 000001 376007 anq 1,dl " 1 aa 000144 000006 600004 tze L25 aa 000145 700022 450111 stz sb|18,x1 aa 000146 000313 351404 eapab L26 " "padding" aa 000147 700023 541111 sprpab sb|19,x1 4a 000150 400036 272120 tsbbp lp|L27,* " OutW2 aa 000151 000020 000002 zero 16,2 L25: aa 000152 777634 272004 64 tsbbp L3+2 " SaveRelbits aa 000153 000020 000000 zero 16 aa 000154 600546 756100 stq sp|358 " TextRelbits aa 000155 600501 236100 65 ldq sp|321 " LC aa 000156 600232 756100 stq sp|154 " TotalWords aa 000157 700022 450111 67 stz sb|18,x1 aa 000160 777665 272004 tsbbp L4+2 " BeginSection aa 000161 000020 000001 zero 16,1 aa 000162 700003 236111 68 ldq sb|3,x1 " EntriesList aa 000163 700022 756111 stq sb|18,x1 4a 000164 400034 272120 tsbbp lp|L28,* " WriteDefs aa 000165 000020 000001 zero 16,1 aa 000166 600501 236100 69 ldq sp|321 " LC aa 000167 600467 756100 stq sp|311 " DefsLength aa 000170 600501 236100 70 ldq sp|321 " LC aa 000171 000001 376007 anq 1,dl " 1 aa 000172 000006 600004 tze L29 aa 000173 700022 450111 stz sb|18,x1 aa 000174 000265 351404 eapab L26 " "padding" aa 000175 700023 541111 sprpab sb|19,x1 4a 000176 400036 272120 tsbbp lp|L27,* " OutW2 aa 000177 000020 000002 zero 16,2 L29: aa 000200 777606 272004 71 tsbbp L3+2 " SaveRelbits aa 000201 000020 000000 zero 16 aa 000202 600470 756100 stq sp|312 " DefsRelbits aa 000203 600501 236100 72 ldq sp|321 " LC aa 000204 600232 056100 asq sp|154 " TotalWords aa 000205 600470 450100 73 stz sp|312 " DefsRelbits aa 000206 700022 450111 75 stz sb|18,x1 aa 000207 777636 272004 tsbbp L4+2 " BeginSection aa 000210 000020 000001 zero 16,1 aa 000211 700002 236111 76 ldq sb|2,x1 " StaticList aa 000212 700022 756111 stq sb|18,x1 4a 000213 400032 272120 tsbbp lp|L30,* " WriteLinkage aa 000214 000020 000001 zero 16,1 aa 000215 600501 236100 77 ldq sp|321 " LC aa 000216 600505 756100 stq sp|325 " LinkageLength aa 000217 600501 236100 78 ldq sp|321 " LC aa 000220 000001 376007 anq 1,dl " 1 aa 000221 000006 600004 tze L31 aa 000222 700022 450111 stz sb|18,x1 aa 000223 000236 351404 eapab L26 " "padding" aa 000224 700023 541111 sprpab sb|19,x1 4a 000225 400036 272120 tsbbp lp|L27,* " OutW2 aa 000226 000020 000002 zero 16,2 L31: aa 000227 777557 272004 79 tsbbp L3+2 " SaveRelbits aa 000230 000020 000000 zero 16 aa 000231 600506 756100 stq sp|326 " LinkageRelbits aa 000232 600501 236100 80 ldq sp|321 " LC aa 000233 600232 056100 asq sp|154 " TotalWords aa 000234 700022 450111 82 stz sb|18,x1 aa 000235 777610 272004 tsbbp L4+2 " BeginSection aa 000236 000020 000001 zero 16,1 4a 000237 400030 272120 83 tsbbp lp|L32,* " WriteSymbol aa 000240 000020 000000 zero 16 aa 000241 777545 272004 84 tsbbp L3+2 " SaveRelbits aa 000242 000020 000000 zero 16 aa 000243 600537 756100 stq sp|351 " SymbolRelbits aa 000244 600501 236100 85 ldq sp|321 " LC aa 000245 700022 756111 stq sb|18,x1 aa 000246 777577 272004 tsbbp L4+2 " BeginSection aa 000247 000020 000001 zero 16,1 4a 000250 400026 272120 86 tsbbp lp|L33,* " WriteRelBits aa 000251 000020 000000 zero 16 aa 000252 600501 236100 87 ldq sp|321 " LC aa 000253 600536 756100 stq sp|350 " SymbolLength aa 000254 777532 272004 88 tsbbp L3+2 " SaveRelbits aa 000255 000020 000000 zero 16 aa 000256 600501 236100 89 ldq sp|321 " LC aa 000257 600232 056100 asq sp|154 " TotalWords aa 000260 600232 236100 91 ldq sp|154 " TotalWords aa 000261 700022 756111 stq sb|18,x1 aa 000262 777563 272004 tsbbp L4+2 " BeginSection aa 000263 000020 000001 zero 16,1 aa 000264 600232 236100 92 ldq sp|154 " TotalWords aa 000265 700022 756111 stq sb|18,x1 4a 000266 400024 272120 tsbbp lp|L34,* " WriteObjectMap aa 000267 000020 000001 zero 16,1 aa 000270 777516 272004 93 tsbbp L3+2 " SaveRelbits aa 000271 000020 000000 zero 16 aa 000272 600501 236100 94 ldq sp|321 " LC aa 000273 600232 756100 stq sp|154 " TotalWords aa 000274 600144 234100 96 szn sp|100 " Listing aa 000275 000007 600004 tze L35 aa 000276 600040 236100 ldq sp|32 " OUTPUT aa 000277 700022 756111 stq sb|18,x1 aa 000300 000157 351404 eapab L36 " "*tend*n" aa 000301 700023 541111 sprpab sb|19,x1 4a 000302 400022 272120 tsbbp lp|L37,* " WriteS aa 000303 000020 000002 zero 16,2 L35: aa 000304 600462 236100 97 ldq sp|306 " CodeP aa 000305 600463 761100 lprpab sp|307 " CodeV aa 000306 100001 756100 stq ab|1 aa 000307 600463 763100 lprpbb sp|307 " CodeV aa 000310 300000 450100 stz bb|0 aa 000311 600461 236100 100 ldq sp|305 " CodeFirst aa 000312 700004 756111 stq sb|4,x1 " p aa 000313 000133 710004 101 tra L38 L39: aa 000314 000002 236007 102 ldq 2,dl " 2 aa 000315 700005 756111 stq sb|5,x1 " i aa 000316 700004 765111 lprplb sb|4,x1 " p aa 000317 500001 236100 ldq lb|1 aa 000320 000003 176007 sbq 3,dl " 3 aa 000321 700006 756111 stq sb|6,x1 aa 000322 000116 710004 tra L41 L40: aa 000323 000074 710004 103 tra L43 L44: aa 000324 700005 722111 106 lxl2 sb|5,x1 " i aa 000325 700004 760111 lprpap sb|4,x1 " p aa 000326 000000 236112 ldq ap|0,x2 aa 000327 000022 772000 qrl 18 aa 000330 700010 756111 stq sb|8,x1 " Param aa 000331 700010 234111 107 szn sb|8,x1 " Param aa 000332 000032 600004 tze L45 aa 000333 700010 236111 108 ldq sb|8,x1 " Param aa 000334 700022 756111 stq sb|18,x1 4a 000335 400020 272120 tsbbp lp|L46,* " LookupLabel aa 000336 000020 000001 zero 16,1 aa 000337 700011 756111 stq sb|9,x1 " N aa 000340 700011 234111 109 szn sb|9,x1 " N aa 000341 000007 601004 tnz L47 aa 000342 000464 236007 ldq 308,dl " UndefLab aa 000343 700022 756111 stq sb|18,x1 aa 000344 700010 236111 ldq sb|8,x1 " Param aa 000345 700023 756111 stq sb|19,x1 4a 000346 400016 272120 tsbbp lp|L48,* " CGreport aa 000347 000020 000002 zero 16,2 L47: aa 000350 700005 236111 110 ldq sb|5,x1 " i aa 000351 000001 076007 adq 1,dl " 1 aa 000352 700005 235111 lda sb|5,x1 " i aa 000353 000001 075007 ada 1,dl " 1 aa 000354 700013 756111 stq sb|11,x1 " temporary aa 000355 700011 236111 ldq sb|9,x1 " N aa 000356 000022 736000 qls 18 aa 000357 700013 723111 lxl3 sb|11,x1 aa 000360 700004 762111 lprpbp sb|4,x1 " p aa 000361 200000 076113 adq bp|0,x3 aa 000362 700004 761111 lprpab sb|4,x1 " p aa 000363 100000 756105 stq ab|0,al L45: aa 000364 600501 054100 112 aos sp|321 " LC aa 000365 000051 710004 115 tra L49 L50: aa 000366 700005 236111 116 ldq sb|5,x1 " i aa 000367 000001 076007 adq 1,dl " 1 aa 000370 700004 763111 lprpbb sb|4,x1 " p aa 000371 300000 235106 lda bb|0,ql aa 000372 600214 755100 sta sp|140 " LineCount aa 000373 000043 710004 119 tra L49 L51: aa 000374 700005 236111 120 ldq sb|5,x1 " i aa 000375 000002 076007 adq 2,dl " 2 aa 000376 600501 235100 lda sp|321 " LC aa 000377 700004 765111 lprplb sb|4,x1 " p aa 000400 500000 115106 cmpa lb|0,ql aa 000401 000007 600004 tze L52 aa 000402 000463 236007 ldq 307,dl " PhaseError aa 000403 700022 756111 stq sb|18,x1 aa 000404 000050 350004 eapap L53 " "FinishText" aa 000405 700023 540111 sprpap sb|19,x1 4a 000406 400016 272120 tsbbp lp|L48,* " CGreport aa 000407 000020 000002 zero 16,2 L52: aa 000410 000026 710004 123 tra L49 L54: aa 000411 700005 236111 124 ldq sb|5,x1 " i aa 000412 000001 076007 adq 1,dl " 1 aa 000413 700004 760111 lprpap sb|4,x1 " p aa 000414 000000 235106 lda ap|0,ql aa 000415 600501 755100 sta sp|321 " LC L55: aa 000416 000020 710004 125 tra L42 L43: aa 000417 700005 724111 lxl4 sb|5,x1 " i aa 000420 700004 762111 lprpbp sb|4,x1 " p aa 000421 200000 236114 ldq bp|0,x4 aa 000422 777777 376007 anq -1,dl " Right " Begin switchon aa 000423 000044 777000 llr 36 " exchange A and Q aa 000424 000001 115007 cmpa 1,dl aa 000425 777771 604004 tmi L55 aa 000426 000004 115007 cmpa 4,dl aa 000427 777675 604004 tmi L44 aa 000430 000005 115007 cmpa 5,dl aa 000431 777743 604004 tmi L51 aa 000432 777734 600004 tze L50 aa 000433 000006 115007 cmpa 6,dl aa 000434 777755 600004 tze L54 aa 000435 777761 710004 tra L55 L42: L49: aa 000436 000003 235007 lda 3,dl " 3 aa 000437 700005 055111 asa sb|5,x1 " i L41: aa 000440 700005 235111 lda sb|5,x1 " i aa 000441 700006 115111 cmpa sb|6,x1 aa 000442 777661 604404 tmoz L40 aa 000443 700004 761111 127 lprpab sb|4,x1 " p aa 000444 100000 236100 ldq ab|0 aa 000445 700004 756111 stq sb|4,x1 " p L38: aa 000446 700004 234111 szn sb|4,x1 " p aa 000447 777645 601004 tnz L39 L18: aa 000450 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000451 200000 121100 sblx1 bp|0 aa 000452 700001 764111 lprplp sb|1,x1 aa 000453 200001 710100 tra bp|1 " end of return sequence " Literal pool L53: aa 000454 000012 106151 zero 10,35945 " "FinishText" aa 000455 156151 163150 zero 56425,58984 aa 000456 124145 170164 zero 43109,61556 L36: aa 000457 000005 011145 zero 5,4709 " "*tend*n" aa 000460 156144 012000 zero 56420,5120 L26: aa 000461 000007 160141 zero 7,57441 " "padding" aa 000462 144144 151156 zero 51300,53870 aa 000463 147000 000000 zero 52736 " Begin text of CgInit aa 000464 000006 103147 zero 6,34407 " CgInit aa 000465 111156 151164 zero 37486,53876 L1: aa 000466 000000 213000 15 epaq 0 " set lp to linkage section aa 000467 700026 764161 lprplp sb|22,*au aa 000470 200000 021100 adlx1 bp|0 " BCPL save aa 000471 700000 542111 sprpbp sb|0,x1 aa 000472 700001 544111 sprplp sb|1,x1 aa 000473 700423 620111 eax0 sb|275,x1 aa 000474 777760 360003 anx0 -16,du aa 000475 700025 740100 stx0 sb|21 aa 000476 600023 740100 stx0 sp|19 " end of save sequence aa 000477 600517 450100 16 stz sp|335 " OldLiteralsList aa 000500 600515 450100 stz sp|333 " NewLiteralsList aa 000501 000144 236007 18 ldq 100,dl " LabTableSize aa 000502 700010 756111 stq sb|8,x1 4a 000503 400050 272120 tsbbp lp|L14,* " Newvec aa 000504 000006 000001 zero 6,1 aa 000505 600500 756100 stq sp|320 " LabTable aa 000506 700002 450111 19 stz sb|2,x1 " i aa 000507 000005 710004 tra L60 L59: aa 000510 700002 725111 lxl5 sb|2,x1 " i aa 000511 600500 763100 lprpbb sp|320 " LabTable aa 000512 300000 450115 stz bb|0,x5 aa 000513 700002 054111 aos sb|2,x1 " i L60: aa 000514 700002 236111 ldq sb|2,x1 " i aa 000515 000144 116007 cmpq 100,dl " LabTableSize aa 000516 777772 604404 tmoz L59 aa 000517 600150 234100 21 szn sp|104 " Symbols aa 000520 000012 600004 tze L61 aa 000521 000310 235007 22 lda 200,dl " SymtabSize aa 000522 700010 755111 sta sb|8,x1 4a 000523 400050 272120 tsbbp lp|L14,* " Newvec aa 000524 000006 000001 zero 6,1 aa 000525 600541 756100 stq sp|353 " SymtabFirst aa 000526 600541 236100 23 ldq sp|353 " SymtabFirst aa 000527 600543 756100 stq sp|355 " SymtabV aa 000530 000002 236007 ldq 2,dl " 2 aa 000531 600542 756100 stq sp|354 " SymtabP L61: aa 000532 600151 234100 25 szn sp|105 " LineMap aa 000533 000015 600004 tze L62 aa 000534 000001 236007 26 ldq 1,dl " 1 aa 000535 700010 756111 stq sb|8,x1 4a 000536 400050 272120 tsbbp lp|L14,* " Newvec aa 000537 000006 000001 zero 6,1 aa 000540 600502 756100 stq sp|322 " LineMapFirst aa 000541 000001 236007 27 ldq 1,dl " 1 aa 000542 600502 765100 lprplb sp|322 " LineMapFirst aa 000543 500000 756100 stq lb|0 aa 000544 000001 236007 28 ldq 1,dl " 1 aa 000545 600503 756100 stq sp|323 " LineMapLength aa 000546 600502 236100 ldq sp|322 " LineMapFirst aa 000547 600504 756100 stq sp|324 " LineMapList L62: aa 000550 001750 236007 31 ldq 1000,dl " CodeSize aa 000551 700010 756111 stq sb|8,x1 4a 000552 400050 272120 tsbbp lp|L14,* " Newvec aa 000553 000006 000001 zero 6,1 aa 000554 600461 756100 stq sp|305 " CodeFirst aa 000555 000002 236007 32 ldq 2,dl " 2 aa 000556 600462 756100 stq sp|306 " CodeP aa 000557 600461 236100 ldq sp|305 " CodeFirst aa 000560 600463 756100 stq sp|307 " CodeV aa 000561 700010 450111 33 stz sb|8,x1 aa 000562 777263 272004 tsbbp L4+2 " BeginSection aa 000563 000006 000001 zero 6,1 aa 000564 600512 450100 35 stz sp|330 " MainEntriesList aa 000565 600507 450100 stz sp|327 " LinkList aa 000566 600460 450100 36 stz sp|304 " CgTempList aa 000567 600514 450100 37 stz sp|332 " MaxSSP aa 000570 600476 450100 stz sp|318 " LabMaxSSP aa 000571 600147 234100 38 szn sp|103 " Crep aa 000572 000011 600004 tze L63 4a 000573 400014 272120 39 tsbbp lp|L64,* " Nextparam aa 000574 000006 000000 zero 6 aa 000575 600476 756100 stq sp|318 " LabMaxSSP aa 000576 600476 236100 40 ldq sp|318 " LabMaxSSP aa 000577 700010 756111 stq sb|8,x1 aa 000600 700011 450111 stz sb|9,x1 4a 000601 400012 272120 tsbbp lp|L65,* " DefineLab aa 000602 000006 000002 zero 6,2 L63: aa 000603 600513 450100 42 stz sp|331 " MaxArgOffset aa 000604 600475 450100 stz sp|317 " LabMaxArg aa 000605 600153 236100 43 ldq sp|107 " Machine aa 000606 001205 116007 cmpq 645,dl " 645 aa 000607 000003 601004 tnz L66 aa 000610 000004 235007 lda 4,dl " 4 aa 000611 000002 710004 tra L67 L66: aa 000612 000002 235007 lda 2,dl " 2 L67: aa 000613 600534 755100 sta sp|348 " SaveSpaceSize aa 000614 600153 235100 44 lda sp|107 " Machine aa 000615 001205 115007 cmpa 645,dl " 645 aa 000616 000003 601004 tnz L68 aa 000617 000052 336004 lcq L70 aa 000620 000002 710004 tra L69 L68: aa 000621 000047 336004 lcq L71 L69: aa 000622 600540 756100 stq sp|352 " StackRefTag aa 000623 000024 236007 45 ldq 20,dl " NumberOfRegisters aa 000624 700010 756111 stq sb|8,x1 4a 000625 400050 272120 tsbbp lp|L14,* " Newvec aa 000626 000006 000001 zero 6,1 aa 000627 600524 756100 stq sp|340 " RegisterUsage aa 000630 000024 236007 ldq 20,dl " NumberOfRegisters aa 000631 700010 756111 stq sb|8,x1 4a 000632 400050 272120 tsbbp lp|L14,* " Newvec aa 000633 000006 000001 zero 6,1 aa 000634 600522 756100 stq sp|338 " RegisterTemps aa 000635 700002 450111 46 stz sb|2,x1 " i aa 000636 000010 710004 tra L73 L72: aa 000637 700002 726111 lxl6 sb|2,x1 " i aa 000640 600522 760100 lprpap sp|338 " RegisterTemps aa 000641 000000 450116 stz ap|0,x6 aa 000642 700002 722111 lxl2 sb|2,x1 " i aa 000643 600524 762100 lprpbp sp|340 " RegisterUsage aa 000644 200000 450112 stz bp|0,x2 aa 000645 700002 054111 aos sb|2,x1 " i L73: aa 000646 700002 236111 ldq sb|2,x1 " i aa 000647 000024 116007 cmpq 20,dl " NumberOfRegisters aa 000650 777767 604404 tmoz L72 aa 000651 600550 450100 47 stz sp|360 " UsageCounter aa 000652 000001 335007 49 lca 1,dl " true aa 000653 600147 675100 era sp|103 " Crep aa 000654 600474 755100 sta sp|316 " Jumpsw aa 000655 600466 450100 50 stz sp|310 " DeferredJumpLabel aa 000656 600471 450100 51 stz sp|313 " EntryLabel aa 000657 600472 450100 stz sp|314 " GetLpLabel aa 000660 600531 450100 52 stz sp|345 " Reloc aa 000661 600464 450100 stz sp|308 " Comment aa 000662 600520 450100 stz sp|336 " Param aa 000663 600473 450100 53 stz sp|315 " IndicatorsSetBy L58: aa 000664 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000665 200000 121100 sblx1 bp|0 aa 000666 700001 764111 lprplp sb|1,x1 aa 000667 200001 710100 tra bp|1 " end of return sequence " Literal pool L71: aa 000670 077777 777667 zero 32767,-73 L70: aa 000671 177777 777667 zero 65535,-73 " Begin text of WriteObjectListing aa 000672 000022 127162 zero 18,44658 " WriteObjectListing aa 000673 151164 145117 zero 53876,51791 aa 000674 142152 145143 zero 50282,51811 aa 000675 164114 151163 zero 59468,53875 aa 000676 164151 156147 zero 59497,56423 L75: aa 000677 000000 213000 160 epaq 0 " set lp to linkage section aa 000700 700026 764161 lprplp sb|22,*au aa 000701 200000 021100 adlx1 bp|0 " BCPL save aa 000702 700000 542111 sprpbp sb|0,x1 aa 000703 700001 544111 sprplp sb|1,x1 aa 000704 700422 620111 eax0 sb|274,x1 aa 000705 777760 360003 anx0 -16,du aa 000706 700025 740100 stx0 sb|21 aa 000707 600023 740100 stx0 sp|19 " end of save sequence aa 000710 600461 235100 161 lda sp|305 " CodeFirst aa 000711 700002 755111 sta sb|2,x1 " p aa 000712 000026 710004 162 tra L79 L80: aa 000713 000002 235007 163 lda 2,dl " 2 aa 000714 700003 755111 sta sb|3,x1 " i aa 000715 700002 761111 lprpab sb|2,x1 " p aa 000716 100001 235100 lda ab|1 aa 000717 000003 175007 sba 3,dl " 3 aa 000720 700004 755111 sta sb|4,x1 aa 000721 000011 710004 tra L82 L81: aa 000722 700003 723111 lxl3 sb|3,x1 " i aa 000723 700002 763111 lprpbb sb|2,x1 " p aa 000724 300000 353513 eapbb bb|0,x3 aa 000725 700012 543111 sprpbb sb|10,x1 4a 000726 400010 272120 tsbbp lp|L83,* " ListCodeItem aa 000727 000010 000001 zero 8,1 aa 000730 000003 235007 lda 3,dl " 3 aa 000731 700003 055111 asa sb|3,x1 " i L82: aa 000732 700003 235111 lda sb|3,x1 " i aa 000733 700004 115111 cmpa sb|4,x1 aa 000734 777766 604404 tmoz L81 aa 000735 700002 763111 164 lprpbb sb|2,x1 " p aa 000736 300000 236100 ldq bb|0 aa 000737 700002 756111 stq sb|2,x1 " p L79: aa 000740 700002 234111 szn sb|2,x1 " p aa 000741 777752 601004 tnz L80 L78: aa 000742 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000743 200000 121100 sblx1 bp|0 aa 000744 700001 764111 lprplp sb|1,x1 aa 000745 200001 710100 tra bp|1 " end of return sequence " Begin text of BuildObject aa 000746 000013 102165 zero 11,33909 " BuildObject aa 000747 151154 144117 zero 53868,51279 aa 000750 142152 145143 zero 50282,51811 aa 000751 164000 000000 zero 59392 L74: aa 000752 000000 213000 144 epaq 0 " set lp to linkage section aa 000753 700026 764161 lprplp sb|22,*au aa 000754 200000 021100 adlx1 bp|0 " BCPL save aa 000755 700000 542111 sprpbp sb|0,x1 aa 000756 700001 544111 sprplp sb|1,x1 aa 000757 700417 620111 eax0 sb|271,x1 aa 000760 777760 360003 anx0 -16,du aa 000761 700025 740100 stx0 sb|21 aa 000762 600023 740100 stx0 sp|19 " end of save sequence aa 000763 600461 236100 145 ldq sp|305 " CodeFirst aa 000764 700004 756111 stq sb|4,x1 " p aa 000765 700005 450111 stz sb|5,x1 " LC aa 000766 000044 710004 146 tra L87 L88: aa 000767 000002 236007 147 ldq 2,dl " 2 aa 000770 700006 756111 stq sb|6,x1 " i aa 000771 700004 765111 lprplb sb|4,x1 " p aa 000772 500001 236100 ldq lb|1 aa 000773 000003 176007 sbq 3,dl " 3 aa 000774 700007 756111 stq sb|7,x1 aa 000775 000027 710004 tra L90 L89: aa 000776 000012 710004 148 tra L92 L93: aa 000777 700006 236111 151 ldq sb|6,x1 " i aa 001000 000001 076007 adq 1,dl " 1 aa 001001 700004 760111 lprpap sb|4,x1 " p aa 001002 000000 235106 lda ap|0,ql aa 001003 700005 724111 lxl4 sb|5,x1 " LC aa 001004 700002 762111 lprpbp sb|2,x1 " s aa 001005 200000 755114 sta bp|0,x4 aa 001006 700005 054111 152 aos sb|5,x1 " LC L94: aa 001007 000013 710004 153 tra L91 L92: aa 001010 700006 725111 lxl5 sb|6,x1 " i aa 001011 700004 761111 lprpab sb|4,x1 " p aa 001012 100000 236115 ldq ab|0,x5 aa 001013 777777 376007 anq -1,dl " Right " Begin switchon aa 001014 000044 777000 llr 36 " exchange A and Q aa 001015 000001 115007 cmpa 1,dl aa 001016 777771 604004 tmi L94 aa 001017 000004 115007 cmpa 4,dl aa 001020 777757 604004 tmi L93 aa 001021 777766 710004 tra L94 L91: aa 001022 000003 235007 lda 3,dl " 3 aa 001023 700006 055111 asa sb|6,x1 " i L90: aa 001024 700006 235111 lda sb|6,x1 " i aa 001025 700007 115111 cmpa sb|7,x1 aa 001026 777750 604404 tmoz L89 aa 001027 700004 763111 155 lprpbb sb|4,x1 " p aa 001030 300000 236100 ldq bb|0 aa 001031 700004 756111 stq sb|4,x1 " p L87: aa 001032 700004 234111 szn sb|4,x1 " p aa 001033 777734 601004 tnz L88 aa 001034 700005 236111 157 ldq sb|5,x1 " LC aa 001035 000044 402007 mpy 36,dl " 36 L86: aa 001036 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001037 200000 121100 sblx1 bp|0 aa 001040 700001 764111 lprplp sb|1,x1 aa 001041 200001 710100 tra bp|1 " end of return sequence " Definition section part one - external entry points 5a 000000 000027 000000 " pointer to first definition aa 000001 000000 600000 " flags: new format, ignore header aa 000002 000000 000000 " list terminator aa 000003 010142 143160 " "bcpl_cg0" aa 000004 154137 143147 aa 000005 060000 000000 aa 000006 022127 162151 " "WriteObjectListing" aa 000007 164145 117142 aa 000010 152145 143164 aa 000011 114151 163164 aa 000012 151156 147000 aa 000013 013102 165151 " "BuildObject" aa 000014 154144 117142 aa 000015 152145 143164 aa 000016 012106 151156 " "FinishText" aa 000017 151163 150124 aa 000020 145170 164000 aa 000021 006103 147111 " "CgInit" aa 000022 156151 164000 aa 000023 014163 171155 " "symbol_table" aa 000024 142157 154137 aa 000025 164141 142154 aa 000026 145000 000000 " Segname definition for bcpl_cg0 55 000027 000032 000002 " forward, backward threads 5a 000030 000002 400003 " value defined, class flags 55 000031 000003 000032 " name pointer, first entry def " Definition for WriteObjectListing 55 000032 000035 000027 " forward, backward threads 0a 000033 000677 500000 " value defined, class flags 55 000034 000006 000027 " name pointer, segname def pointer " Definition for BuildObject 55 000035 000040 000032 " forward, backward threads 0a 000036 000752 500000 " value defined, class flags 55 000037 000013 000027 " name pointer, segname def pointer " Definition for FinishText 55 000040 000043 000035 " forward, backward threads 0a 000041 000111 500000 " value defined, class flags 55 000042 000016 000027 " name pointer, segname def pointer " Definition for CgInit 55 000043 000046 000040 " forward, backward threads 0a 000044 000466 500000 " value defined, class flags 55 000045 000021 000027 " name pointer, segname def pointer " Definition for symbol_table 55 000046 000002 000043 " forward, backward threads 6a 000047 000000 400002 " value defined, class flags 55 000050 000023 000027 " name pointer, segname def pointer " Definition section part two - symbolic info for external references aa 000051 010142 143160 " "bcpl_cg9" aa 000052 154137 143147 aa 000053 071000 000000 aa 000054 014114 151163 " "ListCodeItem" aa 000055 164103 157144 aa 000056 145111 164145 aa 000057 155000 000000 5a 000060 000061 000000 aa 000061 000004 000000 55 000062 000051 000054 aa 000063 010142 143160 " "bcpl_cg2" aa 000064 154137 143147 aa 000065 062000 000000 aa 000066 011104 145146 " "DefineLab" aa 000067 151156 145114 aa 000070 141142 000000 5a 000071 000072 000000 aa 000072 000004 000000 55 000073 000063 000066 aa 000074 014142 143160 " "bcpl_utility" aa 000075 154137 165164 aa 000076 151154 151164 aa 000077 171000 000000 aa 000100 011116 145170 " "Nextparam" aa 000101 164160 141162 aa 000102 141155 000000 5a 000103 000104 000000 aa 000104 000004 000000 55 000105 000074 000100 aa 000106 013142 143160 " "bcpl_report" aa 000107 154137 162145 aa 000110 160157 162164 aa 000111 010103 107162 " "CGreport" aa 000112 145160 157162 aa 000113 164000 000000 5a 000114 000115 000000 aa 000115 000004 000000 55 000116 000106 000111 aa 000117 013114 157157 " "LookupLabel" aa 000120 153165 160114 aa 000121 141142 145154 5a 000122 000123 000000 aa 000123 000004 000000 55 000124 000063 000117 aa 000125 017142 143160 " "bcpl_stream_io_" aa 000126 154137 163164 aa 000127 162145 141155 aa 000130 137151 157137 aa 000131 006127 162151 " "WriteS" aa 000132 164145 123000 5a 000133 000134 000000 aa 000134 000004 000000 55 000135 000125 000131 aa 000136 010142 143160 " "bcpl_cg8" aa 000137 154137 143147 aa 000140 070000 000000 aa 000141 016127 162151 " "WriteObjectMap" aa 000142 164145 117142 aa 000143 152145 143164 aa 000144 115141 160000 5a 000145 000146 000000 aa 000146 000004 000000 55 000147 000136 000141 aa 000150 014127 162151 " "WriteRelBits" aa 000151 164145 122145 aa 000152 154102 151164 aa 000153 163000 000000 5a 000154 000155 000000 aa 000155 000004 000000 55 000156 000136 000150 aa 000157 013127 162151 " "WriteSymbol" aa 000160 164145 123171 aa 000161 155142 157154 5a 000162 000163 000000 aa 000163 000004 000000 55 000164 000136 000157 aa 000165 010142 143160 " "bcpl_cg7" aa 000166 154137 143147 aa 000167 067000 000000 aa 000170 014127 162151 " "WriteLinkage" aa 000171 164145 114151 aa 000172 156153 141147 aa 000173 145000 000000 5a 000174 000175 000000 aa 000175 000004 000000 55 000176 000165 000170 aa 000177 011127 162151 " "WriteDefs" aa 000200 164145 104145 aa 000201 146163 000000 5a 000202 000203 000000 aa 000203 000004 000000 55 000204 000165 000177 aa 000205 010142 143160 " "bcpl_cg5" aa 000206 154137 143147 aa 000207 065000 000000 aa 000210 005117 165164 " "OutW2" aa 000211 127062 000000 5a 000212 000213 000000 aa 000213 000004 000000 55 000214 000205 000210 aa 000215 012127 162151 " "WriteEntry" aa 000216 164145 105156 aa 000217 164162 171000 5a 000220 000221 000000 aa 000221 000004 000000 55 000222 000165 000215 aa 000223 012127 162151 " "WriteGetlp" aa 000224 164145 107145 aa 000225 164154 160000 5a 000226 000227 000000 aa 000227 000004 000000 55 000230 000165 000223 aa 000231 013117 165164 " "OutLiterals" aa 000232 114151 164145 aa 000233 162141 154163 5a 000234 000235 000000 aa 000235 000004 000000 55 000236 000063 000231 aa 000237 007120 165164 " "PutCode" aa 000240 103157 144145 5a 000241 000242 000000 aa 000242 000004 000000 55 000243 000205 000237 aa 000244 006116 145167 " "Newvec" aa 000245 166145 143000 5a 000246 000247 000000 aa 000247 000004 000000 55 000250 000074 000244 aa 000251 005114 151163 " "List2" aa 000252 164062 000000 5a 000253 000254 000000 aa 000254 000004 000000 55 000255 000074 000251 aa 000256 012120 165164 " "PutAbsBits" aa 000257 101142 163102 aa 000260 151164 163000 5a 000261 000262 000000 aa 000262 000004 000000 55 000263 000205 000256 " Linkage section - static variables and external links aa 000000 000000 000000 " linkage header 0a 000001 001042 000000 " address of defs aa 000002 000000 000000 aa 000003 000000 000000 aa 000004 000000 000000 aa 000005 000000 000000 2a 000006 000010 000056 " offset to links, total length aa 000007 000000 000056 " obsolete length " External link pairs L83: 3a 000010 777770 000046 " "bcpl_cg9$ListCodeItem" 5a 000011 000060 000000 L65: 3a 000012 777766 000046 " "bcpl_cg2$DefineLab" 5a 000013 000071 000000 L64: 3a 000014 777764 000046 " "bcpl_utility$Nextparam" 5a 000015 000103 000000 L48: 3a 000016 777762 000046 " "bcpl_report$CGreport" 5a 000017 000114 000000 L46: 3a 000020 777760 000046 " "bcpl_cg2$LookupLabel" 5a 000021 000122 000000 L37: 3a 000022 777756 000046 " "bcpl_stream_io_$WriteS" 5a 000023 000133 000000 L34: 3a 000024 777754 000046 " "bcpl_cg8$WriteObjectMap" 5a 000025 000145 000000 L33: 3a 000026 777752 000046 " "bcpl_cg8$WriteRelBits" 5a 000027 000154 000000 L32: 3a 000030 777750 000046 " "bcpl_cg8$WriteSymbol" 5a 000031 000162 000000 L30: 3a 000032 777746 000046 " "bcpl_cg7$WriteLinkage" 5a 000033 000174 000000 L28: 3a 000034 777744 000046 " "bcpl_cg7$WriteDefs" 5a 000035 000202 000000 L27: 3a 000036 777742 000046 " "bcpl_cg5$OutW2" 5a 000037 000212 000000 L24: 3a 000040 777740 000046 " "bcpl_cg7$WriteEntry" 5a 000041 000220 000000 L22: 3a 000042 777736 000046 " "bcpl_cg7$WriteGetlp" 5a 000043 000226 000000 L19: 3a 000044 777734 000046 " "bcpl_cg2$OutLiterals" 5a 000045 000234 000000 L15: 3a 000046 777732 000046 " "bcpl_cg5$PutCode" 5a 000047 000241 000000 L14: 3a 000050 777730 000046 " "bcpl_utility$Newvec" 5a 000051 000246 000000 L10: 3a 000052 777726 000046 " "bcpl_utility$List2" 5a 000053 000253 000000 L9: 3a 000054 777724 000046 " "bcpl_cg5$PutAbsBits" 5a 000055 000261 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 025744 440424 " 04/17/00 1920.7 mdt Mon aa 000010 142143 160154 " "bcpl " aa 000011 040040 040040 aa 000012 000056 000034 " compiler version name - pointer, length aa 000013 000065 000022 " user id - pointer, length aa 000014 000072 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 000170 " section header pointer, block size aa 000020 000000 000170 " next block pointer, rel_text aa 000021 000000 000212 " rel_def, rel_link aa 000022 000223 000170 " rel_symbol, default truncate aa 000023 000024 000000 " optional truncate, unused aa 000024 000000 000001 " source files map: version number aa 000025 000000 000006 " number of files aa 000026 000103 000035 " bcpl_cg0 aa 000027 310157 122142 " last modified on aa 000030 000000 131036 " 04/17/00 1920.7 mdt Mon aa 000031 025744 400000 aa 000032 000113 000040 " bcpl_cg_head aa 000033 305736 045656 " last modified on aa 000034 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000035 407545 600000 aa 000036 000123 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 000135 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 000145 000041 " bcpl_cg_codes aa 000047 305736 045637 " last modified on aa 000050 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000051 407545 600000 aa 000052 000156 000046 " bcpl_metering_head aa 000053 305736 045647 " last modified on aa 000054 000000 110731 " 04/22/82 1614.9 mdt Thu aa 000055 407546 200000 aa 000056 102103 120114 " "BCPL version 3.5, March 1982" aa 000057 040166 145162 aa 000060 163151 157156 aa 000061 040063 056065 aa 000062 054040 115141 aa 000063 162143 150040 aa 000064 061071 070062 aa 000065 123143 150162 " "Schroth.SysMaint.m" aa 000066 157164 150056 aa 000067 123171 163115 aa 000070 141151 156164 aa 000071 056155 040040 aa 000072 163157 165162 " "source xref alist optimize 6180" aa 000073 143145 040040 aa 000074 170162 145146 aa 000075 040040 141154 aa 000076 151163 164040 aa 000077 040157 160164 aa 000100 151155 151172 aa 000101 145040 040066 aa 000102 061070 060040 aa 000103 076165 144144 " ">udd>sm>ds>w>ml>bcpl_cg0.bcpl" aa 000104 076163 155076 aa 000105 144163 076167 aa 000106 076155 154076 aa 000107 142143 160154 aa 000110 137143 147060 aa 000111 056142 143160 aa 000112 154040 040040 aa 000113 076154 144144 " ">ldd>incl>bcpl_cg_head.incl.bcpl" aa 000114 076151 156143 aa 000115 154076 142143 aa 000116 160154 137143 aa 000117 147137 150145 aa 000120 141144 056151 aa 000121 156143 154056 aa 000122 142143 160154 aa 000123 076154 144144 " ">ldd>incl>bcpl_compiler_head.incl.bcpl" aa 000124 076151 156143 aa 000125 154076 142143 aa 000126 160154 137143 aa 000127 157155 160151 aa 000130 154145 162137 aa 000131 150145 141144 aa 000132 056151 156143 aa 000133 154056 142143 aa 000134 160154 040040 aa 000135 076154 144144 " ">ldd>incl>bcpl_symbols.incl.bcpl" aa 000136 076151 156143 aa 000137 154076 142143 aa 000140 160154 137163 aa 000141 171155 142157 aa 000142 154163 056151 aa 000143 156143 154056 aa 000144 142143 160154 aa 000145 076154 144144 " ">ldd>incl>bcpl_cg_codes.incl.bcpl" aa 000146 076151 156143 aa 000147 154076 142143 aa 000150 160154 137143 aa 000151 147137 143157 aa 000152 144145 163056 aa 000153 151156 143154 aa 000154 056142 143160 aa 000155 154040 040040 aa 000156 076154 144144 " ">ldd>incl>bcpl_metering_head.incl.bcpl" aa 000157 076151 156143 aa 000160 154076 142143 aa 000161 160154 137155 aa 000162 145164 145162 aa 000163 151156 147137 aa 000164 150145 141144 aa 000165 056151 156143 aa 000166 154056 142143 aa 000167 160154 040040 " Relocation information " text section relocation bits aa 000170 000000 000002 " version number of rel-bits structure aa 000171 000000 001053 " length in bits aa 000172 740365 170047 aa 000173 236026 647403 aa 000174 751701 072000 aa 000175 012001 236012 aa 000176 647402 751700 aa 000177 472360 146474 aa 000200 023517 004723 aa 000201 601064 740335 aa 000202 170057 236032 aa 000203 647402 151701 aa 000204 772360 746474 aa 000205 037517 005323 aa 000206 601364 740415 aa 000207 000024 740475 aa 000210 000123 607364 aa 000211 742270 000000 l " inkage relocation bits aa 000212 000000 000002 " version number of rel-bits structure aa 000213 000000 000374 " length in bits aa 000214 100002 204652 aa 000215 465246 524652 aa 000216 465246 524652 aa 000217 465246 524652 aa 000220 465246 524652 aa 000221 465246 524652 aa 000222 465246 524652 s " ymbol relocation bits aa 000223 000000 000002 " version number of rel-bits structure aa 000224 000000 000043 " length in bits aa 000225 740365 770642 " Object map aa 001632 000000 000001 " version number of object_map structure aa 001633 157142 152137 " "obj_map " aa 001634 155141 160040 aa 001635 000000 001042 " text offset, length aa 001636 001042 000264 " def offset, length aa 001637 001326 000056 " link offset, length aa 001640 001404 000226 " symbol offset, length aa 001641 000000 000000 " break map offset, length aa 001642 340000 000000 " flags: ^bound, relocatable, procedure, standard aa 001643 001632 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