Compilation listing of file >2.1spec>online>mib083074>bcpl_cg1.bcpl. Compilation performed for Martinson.SysMaint.a at 01/24/75 0649.7 mst Fri. Compiled by BCPL version 3.4, August 1973. Compiler updated at 09/25/73 0959.1 mst Tue. Options applied: source xref alist optimize 6180. 1 // Arithmetic sequences are generated by these routines. 2 // Last modified on 06/06/74 at 18:21:22 by R F Mabee. 3 // First installed as Version 3.4 by R F Mabee. 4 // Written in April 1973 to properly divide the work between Trans and CG. 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 08/15/73 at 00:31:50 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 // Copyright (c) 1973 by the author, Robert F. Mabee. 7 // This file may only be reproduced or modified with explicit written 8 // permission of the author. Permission is hereby extended to those 9 // persons responsible for operating the Multics system to make such 10 // copies as are normally required to ensure the integrity of the Multics 11 // file system. Permission is also hereby extended to those persons 12 // responsible for maintaining the Multics program libraries to make such 13 // copies as are normally required for online installations. 14 15 get "bcpl_compiler_head" 1 // Declarations common to the entire BCPL compiler. 2 // Last modified on 07/28/73 at 03:56:32 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 // Copyright (c) 1973 by the author, Robert F. Mabee. 7 // This file may only be reproduced or modified with explicit written 8 // permission of the author. Permission is hereby extended to those 9 // persons responsible for operating the Multics system to make such 10 // copies as are normally required to ensure the integrity of the Multics 11 // file system. Permission is also hereby extended to those persons 12 // responsible for maintaining the Multics program libraries to make such 13 // copies as are normally required for online installations. 14 15 external 16 $( Readch = "bcpl_machine_code_$Readch" // Library routines used by the compiler. 17 Writech = "bcpl_machine_code_$Writech" 18 WriteS = "bcpl_stream_io_$WriteS" 19 WriteN = "bcpl_stream_io_$WriteN" 20 Format = "bcpl_stream_io_$Format" 21 Packstring = "bcpl_machine_code_$Packstring" 22 Unpackstring = "bcpl_machine_code_$Unpackstring" 23 RemoveEscapes = "bcpl_conversions_$RemoveEscapes" 24 EqualString = "bcpl_strings_$EqualString" 25 CompareStrings = "bcpl_strings_$CompareStrings" // Alphabetic comparison. 26 Concatenate = "bcpl_strings_$Concatenate" 27 ConvertStoN = "bcpl_conversions_$ConvertStoN" 28 ConvertNtoS = "bcpl_conversions_$ConvertNtoS" 29 Length = "bcpl_strings_$Length" // Number of characters. 30 LengthInWords = "bcpl_strings_$LengthInWords" // Length of packed string. 31 RandomI = "bcpl_arithmetic_$RandomI" 32 33 Newvec = "bcpl_utility$Newvec" // Utility routines used throughout the compiler. 34 Freevec = "bcpl_utility$Freevec" 35 List1 = "bcpl_utility$List1" 36 List2 = "bcpl_utility$List2" 37 List3 = "bcpl_utility$List3" 38 List4 = "bcpl_utility$List4" 39 List5 = "bcpl_utility$List5" 40 List6 = "bcpl_utility$List6" 41 StoreString = "bcpl_utility$StoreString" 42 PushInput = "bcpl_utility$PushInput" 43 PopInput = "bcpl_utility$PopInput" 44 MakeTimeString = "bcpl_utility$MakeTimeString" 45 Nextparam = "bcpl_utility$Nextparam" 46 FormCharconst = "bcpl_utility$FormCharconst" 47 FormStringconst = "bcpl_utility$FormStringconst" 48 49 CaeReport = "bcpl_report$CaeReport" 50 Transreport = "bcpl_report$Transreport" 51 CGreport = "bcpl_report$CGreport" 52 53 Nextsymb = "bcpl_lex0$Nextsymb" 54 55 SymbolName = "bcpl_plist$SymbolName" 56 FindPrintName = "bcpl_plist$FindPrintName" 57 EnterIntoCrossreference = "bcpl_plist$EnterIntoCrossreference" 58 59 GetVersion = "bcpl_version$GetVersion" // Routines used only by the driver. 60 UtilitiesInit = "bcpl_utility$UtilitiesInit" 61 Cleanup = "bcpl_utility$Cleanup" 62 GetStream = "bcpl_utility$GetStream" 63 64 CAE = "bcpl_cae0$CAE" 65 LexInit = "bcpl_lex0$LexInit" 66 67 Pname = "bcpl_plist$Pname" 68 Plist = "bcpl_plist$Plist" 69 70 Trans = "bcpl_trans0$Trans" 71 CgInit = "bcpl_cg0$CgInit" 72 BuildObject = "bcpl_cg0$BuildObject" 73 WriteObjectListing = "bcpl_cg0$WriteObjectListing" 74 $) 75 76 global // Globals are reserved in blocks as follows: 77 $( // 0 - 31 system 78 // 32 - 99 library 79 // 100 - 149 options and other common cells 80 // 150 - 159 metering cells 81 // 160 - 169 bcpl_utility 82 // 170 - 199 to be assigned 83 // 200 - 229 lexical phase 84 // 230 - 249 syntax analyzer 85 // 250 - 299 translator 86 // 300 - 399 code generator 87 88 // Cells used for communication with the library. 89 OUTPUT : 32 90 INPUT : 33 91 MONITOR : 34 92 Ch : 36 93 94 // Options for this compilation. 95 Listing : 100 96 UpperCase : 101 97 PPrep : 102 98 Crep : 103 99 Symbols : 104 100 LineMap : 105 101 Optimize : 106 102 Machine : 107 103 Xref : 108 104 OcodeSw : 109 105 HaveListingFile : 110 106 QuietSw : 111 107 108 // Other information about this compilation. 109 CompilerVersionString : 120 110 CompilerVersionNumber : 121 111 CompilerDTMString : 122 112 CompilerDTM : 123 113 TimeNowString : 124 114 TimeNow : 125 115 OptionString : 126 116 FileNames : 127 117 FilesInfo : 128 118 FileCount : 129 119 ProgramName : 130 120 UserID : 131 121 122 // Working variables needing global scope. 123 LineCount : 140 124 Errorsw : 141 125 NAMECHAIN : 142 126 Symb : 143 127 DictionaryEntry : 144 128 Column : 145 129 $) 130 manifest 131 $( GlobalTemp = 199 $) // Number of cell available for local, temporary use. 132 133 manifest 134 $( Left = 18; Right = $8777777 135 Endofstreamch = $87777 136 Even = $87777777777776 137 Vmax = 511 138 LineMask = $817777; FileShift = 13 // Breakdown of line count. 139 UnexpectedCase = 99 // Error code for use throughout compiler. 140 $) 16 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 07/08/73 at 22:55:31 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 // Copyright (c) 1973 by the author, Robert F. Mabee. 8 // This file may only be reproduced or modified with explicit written 9 // permission of the author. Permission is hereby extended to those 10 // persons responsible for operating the Multics system to make such 11 // copies as are normally required to ensure the integrity of the Multics 12 // file system. Permission is also hereby extended to those persons 13 // responsible for maintaining the Multics program libraries to make such 14 // copies as are normally required for online installations. 15 16 manifest 17 $( AND_S = 1 18 ASSIGN_S = 2 19 BE_S = 3 20 BIT_S = 4 21 BREAK_S = 5 22 BY_S = 6 23 CALL_S = 07 24 CASE_S = 08 25 26 CHAR_S = 10 27 CHARCONST_S = 11 28 COLON_S = 12 29 COMMA_S = 13 30 COND_S = 14 31 CONSTANT_S = 15 32 CONSTDEF_S = 16 33 DEFAULT_S = 17 34 DIV_F = 18 35 36 DIV_S = 20 37 DO_S = 21 38 DOUBLE_S = 22 39 ENDCASE_S = 23 40 ENDPROG_S = 24 41 ERROR_S = 25 42 EQ_F = 26 43 EQ_S = 27 44 EQV_S = 28 45 46 EXTERNAL_S = 30 47 FALSE_S = 31 48 FINISH_S = 32 49 FIXED_S = 33 50 FLOAT_S = 34 51 FNAP_S = 35 52 FNDEF_S = 36 53 FOR_S = 37 54 GE_F = 38 55 56 GE_S = 40 57 GET_S = 41 58 GLOBAL_S = 42 59 GOTO_S = 43 60 GR_F = 44 61 GR_S = 45 62 IF_S = 46 63 IFNOT_S = 47 64 IFSO_S = 48 65 66 INTO_S = 50 67 LABDEF_S = 51 68 LABEL_S = 52 69 LE_F = 53 70 LE_S = 54 71 LENGTH_S = 55 72 LET_S = 56 73 LIST_S = 57 74 LOCAL_S = 58 75 76 LOGAND_S = 60 77 LOGOR_S = 61 78 LOOP_S = 62 79 LS_F = 63 80 LS_S = 64 81 LSHIFT_S = 65 82 LV_S = 66 83 LVECAP_S = 67 84 LV_ARG_OUT = 68 85 86 LV_FNAP_RESULT = 70 87 LV_GLOBAL = 71 88 LV_LOCAL = 72 89 LV_STATIC = 73 90 LV_TEMP = 74 91 MAIN_S = 75 92 MANIFEST_S = 76 93 MINUS_F = 77 94 MINUS_S = 78 95 96 MULT_F = 80 97 MULT_S = 81 98 NAME_S = 82 99 NEG_F = 83 100 NEG_S = 84 101 NEQV_S = 85 102 NE_F = 86 103 NE_S = 87 104 NIL_S = 88 105 106 NOT_S = 90 107 NUMBER_S = 91 108 OFFSET_S = 92 109 OR_S = 93 110 PLUS_F = 94 111 PLUS_S = 95 112 POINTER_S = 96 113 POS_F = 97 114 POS_S = 98 115 116 RBRA_S = 100 117 REGISTER_S = 101 118 REL_S = 102 119 REM_S = 103 120 REP_S = 104 121 REPEAT_S = 105 122 REPEATUNTIL_S = 106 123 REPEATWHILE_S = 107 124 RESULTIS_S = 108 125 126 RETURN_S = 110 127 RKET_S = 111 128 RSHIFT_S = 112 129 RTAP_S = 113 130 RTDEF_S = 114 131 RV_S = 115 132 SBRA_S = 116 133 SECTBEGIN_S = 117 134 SECTBRA_S = 118 135 136 SECTEND_S = 120 137 SECTKET_S = 121 138 SEMICOLON_S = 122 139 SKET_S = 123 140 STATIC_S = 124 141 STRING_S = 125 142 STRINGCONST_S = 126 143 STRUCTURE_S = 127 144 SWITCHON_S = 128 145 146 TABLE_S = 130 147 TEMP_S = 131 148 TEST_S = 132 149 TO_S = 133 150 TRUE_S = 134 151 TYPE_S = 135 152 UNLESS_S = 136 153 UNTIL_S = 137 154 VALDEF_S = 138 155 156 VALOF_S = 140 157 VEC_S = 141 158 VECAP_S = 142 159 WHILE_S = 143 160 $) 17 get "bcpl_cg_codes" 1 // Report codes for the code generation phase. 2 // Last modified on 08/15/73 at 00:33:36 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 // Copyright (c) 1973 by the author, Robert F. Mabee. 7 // This file may only be reproduced or modified with explicit written 8 // permission of the author. Permission is hereby extended to those 9 // persons responsible for operating the Multics system to make such 10 // copies as are normally required to ensure the integrity of the Multics 11 // file system. Permission is also hereby extended to those persons 12 // responsible for maintaining the Multics program libraries to make such 13 // copies as are normally required for online installations. 14 15 manifest // 300 - 399 are reserved for CG. 16 $( BadAddress = 300 17 BadLabel = 301 18 BadRegOpPair = 302 19 DupCase = 303 20 DupLabel = 304 21 LinkRefersThis = 305 22 OverCase = 306 23 PhaseError = 307 24 UndefLab = 308 25 $) 18 19 external 20 $( FinishText = "bcpl_cg0$FinishText" 21 22 ApplyMonadicOperator = "bcpl_cg1$ApplyMonadicOperator" 23 ApplyDiadicOperator = "bcpl_cg1$ApplyDiadicOperator" 24 ApplyOffsetOperator = "bcpl_cg1$ApplyOffsetOperator" 25 MonadicJumpcond = "bcpl_cg1$MonadicJumpcond" 26 DiadicJumpcond = "bcpl_cg1$DiadicJumpcond" 27 28 IsNumber = "bcpl_cg2$IsNumber" 29 EvalNumber = "bcpl_cg2$EvalNumber" 30 IsZero = "bcpl_cg2$IsZero" 31 IsAddress = "bcpl_cg2$IsAddress" 32 IsStored = "bcpl_cg2$IsStored" 33 LookupTemp = "bcpl_cg2$LookupTemp" 34 MakeCgTemp = "bcpl_cg2$MakeCgTemp" 35 ClaimRegister = "bcpl_cg2$ClaimRegister" 36 DisclaimRegister = "bcpl_cg2$DisclaimRegister" 37 InRegister = "bcpl_cg2$InRegister" 38 FindInRegister = "bcpl_cg2$FindInRegister" 39 CombineAddress = "bcpl_cg2$CombineAddress" 40 Compjump = "bcpl_cg2$Compjump" 41 Complab = "bcpl_cg2$Complab" 42 DefineLab = "bcpl_cg2$DefineLab" 43 LookupLabel = "bcpl_cg2$LookupLabel" 44 ClearRegisters = "bcpl_cg2$ClearRegisters" 45 ClearMemory = "bcpl_cg2$ClearMemory" 46 AddLiteral = "bcpl_cg2$AddLiteral" 47 OutLiterals = "bcpl_cg2$OutLiterals" 48 Outstring = "bcpl_cg2$Outstring" 49 50 LoadRegister = "bcpl_cg3$LoadRegister" 51 LoadPointer = "bcpl_cg3$LoadPointer" 52 LoadIndex = "bcpl_cg3$LoadIndex" 53 LoadAppropriateRegister = "bcpl_cg3$LoadAppropriateRegister" 54 LoadNumber = "bcpl_cg3$LoadNumber" 55 SetupAddr = "bcpl_cg3$SetupAddr" 56 CompareToZero = "bcpl_cg3$CompareToZero" 57 Makeaddressable = "bcpl_cg3$Makeaddressable" 58 SwapAandQ = "bcpl_cg3$SwapAandQ" 59 Preserve = "bcpl_cg3$Preserve" 60 Store = "bcpl_cg3$Store" 61 StoreRegister = "bcpl_cg3$StoreRegister" 62 GetRegister = "bcpl_cg3$GetRegister" 63 Satisfactory = "bcpl_cg3$Satisfactory" 64 Literal = "bcpl_cg3$Literal" 65 66 NewSSP = "bcpl_cg4$NewSSP" 67 Compentry = "bcpl_cg4$Compentry" 68 Compreturn = "bcpl_cg4$Compreturn" 69 CreateArglist = "bcpl_cg4$CreateArglist" 70 StoreArg = "bcpl_cg4$StoreArg" 71 Compfnap = "bcpl_cg4$Compfnap" 72 CreateSystemArglist = "bcpl_cg4$CreateSystemArglist" 73 StoreSystemArg = "bcpl_cg4$StoreSystemArg" 74 CompSystemCall = "bcpl_cg4$CompSystemCall" 75 ResultBlockBegin = "bcpl_cg4$ResultBlockBegin" 76 ResultSet = "bcpl_cg4$ResultSet" 77 ResultGet = "bcpl_cg4$ResultGet" 78 Compfinish = "bcpl_cg4$Compfinish" 79 Compgoto = "bcpl_cg4$Compgoto" 80 Compstring = "bcpl_cg4$Compstring" 81 Comptable = "bcpl_cg4$Comptable" 82 Compexternal = "bcpl_cg4$Compexternal" 83 84 OutData = "bcpl_cg5$OutData" 85 Outop = "bcpl_cg5$Outop" 86 Outop2 = "bcpl_cg5$Outop2" 87 Outop3 = "bcpl_cg5$Outop3" 88 Outop4 = "bcpl_cg5$Outop4" 89 OutW = "bcpl_cg5$OutW" 90 OutW2 = "bcpl_cg5$OutW2" 91 PutCode = "bcpl_cg5$PutCode" 92 PutAbsBits = "bcpl_cg5$PutAbsBits" 93 SetLineNumber = "bcpl_cg5$SetLineNumber" 94 SectionHeader = "bcpl_cg5$SectionHeader" 95 FormOpcode = "bcpl_cg5$FormOpcode" 96 FormTag = "bcpl_cg5$FormTag" 97 CheckAddr = "bcpl_cg5$CheckAddr" 98 99 Compswitch = "bcpl_cg6$Compswitch" 100 101 WriteGetlp = "bcpl_cg7$WriteGetlp" 102 WriteEntry = "bcpl_cg7$WriteEntry" 103 WriteDefs = "bcpl_cg7$WriteDefs" 104 WriteLinkage = "bcpl_cg7$WriteLinkage" 105 106 WriteSymbol = "bcpl_cg8$WriteSymbol" 107 WriteRelBits = "bcpl_cg8$WriteRelBits" 108 WriteObjectMap = "bcpl_cg8$WriteObjectMap" 109 110 WriteData = "bcpl_cg9$WriteData" 111 WriteInstruction = "bcpl_cg9$WriteInstruction" 112 ListCodeItem = "bcpl_cg9$ListCodeItem" 113 $) 114 global // 300 - 399 are reserved for the code generator. 115 $( AbsRelBits : 300 116 Address : 301 117 ArgCount : 302 118 ArgLen : 303 119 CgTempList : 304 120 CodeFirst : 305 121 CodeP : 306 122 CodeV : 307 123 Comment : 308 124 125 DeferredJumpLabel : 310 126 DefsLength : 311 127 DefsRelbits : 312 128 EntryLabel : 313 129 GetLpLabel : 314 130 IndicatorsSetBy : 315 131 Jumpsw : 316 132 LabMaxArg : 317 133 LabMaxSSP : 318 134 135 LabTable : 320 136 LC : 321 137 LineMapFirst : 322 138 LineMapLength : 323 139 LineMapList : 324 140 LinkageLength : 325 141 LinkageRelbits : 326 142 LinkList : 327 143 Lrand : 328 144 145 MainEntriesList : 330 146 MaxArgOffset : 331 147 MaxSSP : 332 148 NewLiteralsList : 333 149 OldLabel : 334 150 OldLiteralsList : 335 151 Param : 336 152 Rrand : 337 153 RegisterTemps : 338 154 155 RegisterUsage : 340 156 RelbitsFirst : 341 157 RelbitsLength : 342 158 RelbitsList : 343 159 RelbitsOffset : 344 160 Reloc : 345 161 ResultInfo : 346 162 ResultInfoList : 347 163 SaveSpaceSize : 348 164 165 SymbolLength : 350 166 SymbolRelbits : 351 167 StackRefTag : 352 168 SymtabFirst : 353 169 SymtabP : 354 170 SymtabV : 355 171 Tag : 356 172 TextLength : 357 173 TextRelbits : 358 174 175 UsageCounter : 360 176 $) 177 manifest 178 $( CgTempSize = 9 179 CodeSize = 1000 180 LabTableSize = 100 181 SymtabSize = 200 182 $) 183 manifest // Flags for listing. 184 $( CodeSwitch = 1 185 InstructionSwitch = 2 186 DataSwitch = 3 187 LabelSwitch = 4 188 LineCountSwitch = 5 189 SectionSwitch = 6 190 HeaderSwitch = 7 191 $) 192 manifest // Relocation codes. 193 $( RelText = $820 194 RelLink18 = $822 195 RelNegLink18 = $823 196 RelLink15 = $824 197 RelDef = $825 198 RelSymbol = $826 199 RelNegSymbol = $827 200 RelStat18 = $830 201 RelStat15 = $831 202 RelExtendedAbs = $836 // Ten bit count follows this code. 203 $) 204 manifest 205 $( TagXrMask = $817 206 TagPrMask = $8700000000100 207 208 Mod16 = $8777777777760 209 $) 210 211 manifest // Modifiers and tags used in the code generator. 212 $( Ap = $8000000000100 213 Ab = $8100000000100 214 Bp = $8200000000100 215 Bb = $8300000000100 216 Lp = $8400000000100 217 Lb = $8500000000100 218 Sp = $8600000000100 219 Sb = $8700000000100 220 221 Al = $805 222 Au = $801 223 Dl = $807 224 Du = $803 225 Ql = $806 226 Qu = $802 227 228 X0 = $810 229 X1 = $811 230 X2 = $812 231 X3 = $813 232 X4 = $814 233 X5 = $815 234 X6 = $816 235 X7 = $817 236 237 Ft2 = $846 238 Ic = $804 239 Star = $820 240 StarThenReg = $860 241 $) 242 manifest // Internal codes for all machine registers used. 243 $( Ar = 1 244 Qr = 2 245 246 Xr0 = 3 247 Xr1 = 4 248 Xr2 = 5 249 Xr3 = 6 250 Xr4 = 7 251 Xr5 = 8 252 Xr6 = 9 253 Xr7 = 10 254 255 Apr = 11 256 Abr = 12 257 Bpr = 13 258 Bbr = 14 259 Lpr = 15 260 Lbr = 16 261 Spr = 17 262 Sbr = 18 263 264 EAQr = 19 265 266 NumberOfRegisters = 20 267 268 AorQr = 22 269 AnyPr = 23 270 AnyXr = 24 271 $) 13 get "bcpl_opcodes" 1 // Definitions for 645 and 6180 machine instructions. See FormOpcode. 2 // Last modified on 07/20/73 at 23:35:00 by R F Mabee. 3 // 6180 instructions added and installed as Version 3.4 by R F Mabee. 4 // First installed as Version 2.7 by R F Mabee 5 6 // Copyright (c) 1973 by the author, Robert F. Mabee. 7 // This file may only be reproduced or modified with explicit written 8 // permission of the author. Permission is hereby extended to those 9 // persons responsible for operating the Multics system to make such 10 // copies as are normally required to ensure the integrity of the Multics 11 // file system. Permission is also hereby extended to those persons 12 // responsible for maintaining the Multics program libraries to make such 13 // copies as are normally required for online installations. 14 15 manifest // Note: low order bit of ten bit opcode is here represented by high order bit, 16 $( // so remaining bits will retain proper representation as octal numbers. 17 Abd = $81503 18 Ada = $80075 19 Adlx1 = $80021 20 Als = $80735 21 Ana = $80375 22 Ansa = $80355 23 Anx0 = $80360 24 Aos = $80054 25 Arl = $80771 26 Asa = $80055 27 Cmpa = $80115 28 Div = $80506 29 Dvf = $80507 30 Eabap = $80310 31 Eablb = $80331 32 Eablp = $80330 33 Eapab = $81351 34 Eapap = $80350 35 Eapbp = $80352 36 Eaplb = $81371 37 Eaplp = $80370 38 Eax0 = $80620 39 Eax1 = $80621 40 Eax7 = $80627 41 Epaq = $80213 42 Era = $80675 43 Ersa = $80655 44 Fad = $80475 45 Fcmp = $80515 46 Fdi = $80525 47 Fdv = $80565 48 Fld = $80431 49 Fmp = $80461 50 Fneg = $80513 51 Fsb = $80575 52 Fstr = $80470 53 Fszn = $80430 54 Lca = $80335 55 Lda = $80235 56 Ldaq = $80237 57 Ldx7 = $80227 58 Llr = $80777 59 Lprpap = $80760 60 Lprpbp = $80762 61 Lprplp = $80764 62 Lrl = $80773 63 Lxl0 = $80720 64 Lxl1 = $80721 65 Mpy = $80402 66 Neg = $80531 67 Negl = $80533 68 Ora = $80275 69 Orsa = $80255 70 Sba = $80175 71 Sblx1 = $80121 72 Sprpap = $80540 73 Sprpbp = $80542 74 Sprplp = $80544 75 Sreg = $80753 76 Ssa = $80155 77 Sta = $80755 78 Staq = $80757 79 Stb = $80254 80 Stc1 = $80554 81 Stcd = $80357 82 Stpab = $81251 83 Stpap = $80250 84 Stpbp = $80252 85 Stplb = $81651 86 Stplp = $80650 87 Stx0 = $80740 88 Stz = $80450 89 Sxl0 = $80440 90 Sxl1 = $80441 91 Szn = $80234 92 Tmi = $80604 93 Tmoz = $81604 94 Tnz = $80601 95 Tpl = $80605 96 Tpnz = $81605 97 Tra = $80710 98 Trc = $80603 99 Tsbap = $80270 100 Tsbbp = $80272 101 Tsblp = $80670 102 Tsx0 = $80700 103 Tze = $80600 104 $) 14 15 let ApplyDiadicOperator (Op, Result) be 16 $( let Reg = valof switchon Op into 17 $( case PLUS_S: 18 if Optimize then if TryDiadicRAR (Result, Asa) resultis 0 19 resultis ApplySymmetrical (Ada, AorQr) 20 21 case PLUS_F: 22 resultis ApplySymmetrical (Fad, EAQr) 23 24 case MINUS_S: 25 if Optimize do 26 $( if TryDiadicRAR (Result, Ssa) resultis 0 27 if InRegister (Rrand, AorQr) & not InRegister (Lrand, AorQr) do 28 $( let r = ApplyRL (Sba, AorQr) 29 resultis ApplyNegate (r) 30 $) 31 $) 32 resultis ApplyLR (Sba, AorQr) 33 34 case MINUS_F: 35 if Optimize then if InRegister (Rrand, EAQr) do 36 $( ApplyRL (Fsb, EAQr) 37 resultis ApplyNegate (EAQr) 38 $) 39 resultis ApplyLR (Fsb, EAQr) 40 41 case MULT_S: 42 if Optimize do 43 $( let r = TryShift (Lrand, Rrand) 44 if r ne 0 resultis r 45 r := TryShift (Rrand, Lrand) 46 if r ne 0 resultis r 47 if (InRegister (Lrand, Ar) & not InRegister (Rrand, Qr)) 48 | (InRegister (Rrand, Ar) & not InRegister (Lrand, Qr)) do SwapAandQ () 49 $) 50 GetRegister (Ar) // Overwritten by multiply hardware. 51 resultis ApplySymmetrical (Mpy, Qr) 52 53 case MULT_F: 54 resultis ApplySymmetrical (Fmp, EAQr) 55 56 case DIV_S: 57 if Optimize then if InRegister (Lrand, Ar) do SwapAandQ () 58 GetRegister (Ar) // Overwritten by divide hardware. 59 resultis ApplyLR (Div, Qr) 60 61 case DIV_F: 62 if Optimize then if InRegister (Rrand, EAQr) do 63 resultis ApplyRL (Fdi, EAQr) 64 resultis ApplyLR (Fdv, EAQr) 65 66 case REM_S: 67 if Optimize then if InRegister (Lrand, Ar) do SwapAandQ () 68 GetRegister (Ar) // Remainder appears in Ar but operands do not. 69 ApplyLR (Div, Qr) 70 resultis Ar 71 72 case LOGOR_S: 73 if Optimize then if TryDiadicRAR (Result, Orsa) resultis 0 74 resultis ApplySymmetrical (Ora, AorQr) 75 76 case LOGAND_S: 77 if Optimize then if TryDiadicRAR (Result, Ansa) resultis 0 78 resultis ApplySymmetrical (Ana, AorQr) 79 80 case NEQV_S: 81 if Optimize then if TryDiadicRAR (Result, Ersa) resultis 0 82 resultis ApplySymmetrical (Era, AorQr) 83 84 case EQV_S: $( let r = ApplySymmetrical (Era, AorQr) 85 Literal (true, "true") 86 Outop (FormOpcode (Era, r)) 87 resultis r 88 $) 89 90 default: CGreport (UnexpectedCase, Op, "ApplyDiadicOperator") 91 resultis 0 92 $) 93 DisclaimRegister (Lrand) 94 DisclaimRegister (Rrand) 95 ClaimRegister (Reg, Result) 96 $) 97 98 and ApplyOffsetOperator (Op, Result, Offset) be 99 $( let Reg = valof switchon Op into 100 $( case VECAP_S: 101 if Result!0 = LV_TEMP goto RememberAddress 102 let r = GetRegister (AorQr) 103 CombineAddress (Lrand, Rrand, Offset) 104 Outop (FormOpcode (Lda, r)) 105 IndicatorsSetBy := r 106 resultis r 107 108 case LVECAP_S: 109 if Result!0 = LV_TEMP goto RememberAddress 110 if Optimize then if IsSameLoc (Result, Lrand) do 111 $( let r = nil 112 test IsZero (Rrand) 113 then $( if Offset = 1 do 114 $( SetupAddr (Result) 115 Outop (Aos) 116 IndicatorsSetBy := 0 117 resultis 0 118 $) 119 r := LoadNumber (Offset, AorQr) 120 $) 121 or $( r := LoadRegister (Rrand, AorQr) 122 unless Offset = 0 do 123 $( Literal (Offset) 124 Outop (FormOpcode (Ada, r)) 125 $) 126 $) 127 SetupAddr (Result) 128 Outop (FormOpcode (Asa, r)) 129 IndicatorsSetBy := 0 130 RegisterUsage!r := 0 131 resultis 0 132 $) 133 r := GetRegister (AnyPr) 134 CombineAddress (Lrand, Rrand, Offset) 135 Outop (FormOpcode (Eapap, r)) 136 resultis r 137 138 RememberAddress: 139 let h = MakeCgTemp (Result!1) 140 h!1 := Op 141 h!2, h!3, h!4 := Lrand!0, Lrand!1, Lrand!2 142 h!5, h!6, h!7 := Rrand!0, Rrand!1, Rrand!2 143 h!8 := Offset 144 return 145 146 case LSHIFT_S: 147 case RSHIFT_S: 148 $( let r = LoadRegister (Lrand, AorQr) 149 let Xr = IsZero (Rrand) -> 0, LoadIndex (Rrand, AnyXr) 150 Outop3 (FormOpcode (Op = LSHIFT_S -> Als, Arl, r), Offset, FormTag (Xr)) 151 IndicatorsSetBy := r 152 resultis r 153 $) 154 155 default: CGreport (UnexpectedCase, Op, "ApplyAddressOperator") 156 resultis 0 157 $) 158 DisclaimRegister (Lrand) 159 DisclaimRegister (Rrand) 160 ClaimRegister (Reg, Result) 161 $) 162 163 and ApplyMonadicOperator (Op, Result) be 164 $( let Reg = valof switchon Op into 165 $( case POS_S: 166 case POS_F: 167 case ASSIGN_S: 168 if Optimize then if Result!0 ne LV_TEMP do 169 $( Store (Lrand, Result) 170 resultis 0 171 $) 172 resultis LoadAppropriateRegister (Lrand, 0) 173 174 case NEG_S: 175 if Optimize then if TryMonadicRAR (Result, Ssa, 0) resultis 0 176 resultis LoadNegative (Lrand) 177 178 case NEG_F: 179 resultis ApplyNegate (LoadRegister (Lrand, EAQr)) 180 181 case NOT_S: 182 if Optimize then if TryMonadicRAR (Result, Ersa, true) resultis 0 183 let r = FindInRegister (Lrand, AorQr) 184 test r = 0 185 then $( r := LoadNumber (true, AorQr, "true") 186 Makeaddressable (Lrand) 187 $) 188 or Literal (true, "true") 189 Outop (FormOpcode (Era, r)) 190 IndicatorsSetBy := r 191 resultis r 192 193 default: CGreport (UnexpectedCase, Op, "ApplyMonadicOperator") 194 resultis 0 195 $) 196 DisclaimRegister (Lrand) 197 ClaimRegister (Reg, Result) 198 $) 199 200 and ApplySymmetrical (Inst, Reg) = InRegister (Rrand, Reg) -> ApplyRL (Inst, Reg), ApplyLR (Inst, Reg) 201 and ApplyRL (Inst, Reg) = valof 202 $( let t, u = Lrand, Rrand 203 Rrand, Lrand := t, u 204 let r = ApplyLR (Inst, Reg) 205 Lrand, Rrand := t, u 206 resultis r 207 $) 208 and ApplyLR (Inst, Reg) = valof 209 $( let r = LoadRegister (Lrand, Reg) 210 Makeaddressable (Rrand) 211 Outop (FormOpcode (Inst, r)) 212 IndicatorsSetBy := r 213 resultis r 214 $) 215 and ApplyNegate (r) = valof 216 switchon r into 217 $( case Qr: if RegisterTemps!Ar = 0 do 218 $( Outop3 (Negl, 0, Dl) 219 IndicatorsSetBy := 0 220 resultis Qr 221 $) 222 SwapAandQ () 223 case Ar: Outop3 (Neg, 0, Dl) 224 IndicatorsSetBy := Ar 225 resultis Ar 226 case EAQr:Outop3 (Fneg, 0, Dl) 227 IndicatorsSetBy := EAQr 228 resultis EAQr 229 default: CGreport (UnexpectedCase, r, "ApplyNegate") 230 resultis r 231 $) 232 and LoadNegative (t) = valof 233 $( let r = FindInRegister (t, AorQr) 234 if r ne 0 resultis ApplyNegate (r) 235 r := GetRegister (AorQr) 236 Makeaddressable (t) 237 Outop (FormOpcode (Lca, r)) 238 IndicatorsSetBy := r 239 resultis r 240 $) 241 242 and TryShift (Rand, Const) = valof 243 $( unless IsNumber (Const) resultis 0 244 let n, i = EvalNumber (Const!0, Const!1), 0 245 until n = (1 lshift i) do 246 $( if i > 36 resultis 0 247 i := i + 1 248 $) 249 let r = LoadRegister (Rand, AorQr) 250 Outop3 (FormOpcode (Als, r), i, 0) 251 IndicatorsSetBy := r 252 resultis r 253 $) 254 255 and TryMonadicRAR (Result, Op, Const) = valof 256 $( unless IsSameLoc (Result, Lrand) resultis false 257 let r = LoadNumber (Const, AorQr, 0) 258 SetupAddr (Result) 259 Outop (FormOpcode (Op, r)) 260 IndicatorsSetBy := 0 261 RegisterUsage!r := 0 262 resultis true 263 $) 264 and TryDiadicRAR (Result, Op) = valof 265 $( let X = Rrand 266 unless IsSameLoc (Result, Lrand) do 267 $( X := Lrand 268 unless IsSameLoc (Result, Rrand) resultis false 269 $) 270 if Op = Asa & IsNumber (X) then if EvalNumber (X!0, X!1) = 1 do 271 $( SetupAddr (Result) 272 Outop (Aos) 273 IndicatorsSetBy := 0 274 resultis true 275 $) 276 let r = nil 277 test Op = Ssa & X = Rrand 278 then r, Op := LoadNegative (X), Asa 279 or r := LoadRegister (X, AorQr) 280 SetupAddr (Result) 281 Outop (FormOpcode (Op, r)) 282 IndicatorsSetBy := 0 283 RegisterUsage!r := 0 284 resultis true 285 $) 286 287 and IsSameLoc (t, u) = valof 288 switchon t!0 into 289 $( case LV_GLOBAL: 290 resultis u!0 = GLOBAL_S & t!1 = u!1 -> true, false 291 case LV_LOCAL: 292 resultis u!0 = LOCAL_S & t!1 = u!1 -> true, false 293 case LV_STATIC: 294 resultis u!0 = STATIC_S & t!1 = u!1 -> true, false 295 case TEMP_S: 296 unless u!0 = TEMP_S resultis false 297 let g, h = LookupTemp (t!1), LookupTemp (u!1) 298 if g = 0 | h = 0 resultis false 299 unless g!1 = LVECAP_S & h!1 = VECAP_S resultis false 300 resultis g!2 = h!2 & g!3 = h!3 & g!5 = h!5 & g!6 = h!6 & g!8 = h!8 -> true, false 301 default: resultis false 302 $) 303 304 and DiadicJumpcond (Op, L) be 305 $( let Reversed = valof switchon Op into 306 $( case EQ_S: case NE_S: case LS_S: case GR_S: case LE_S: case GE_S: 307 if IsZero (Rrand) do 308 $( CompareToZero (Lrand) 309 resultis false 310 $) 311 if IsZero (Lrand) do 312 $( CompareToZero (Rrand) 313 resultis true 314 $) 315 if InRegister (Rrand, AorQr) do 316 $( ApplyRL (Cmpa, AorQr) 317 IndicatorsSetBy := 0 318 resultis true 319 $) 320 ApplyLR (Cmpa, AorQr) 321 IndicatorsSetBy := 0 322 resultis false 323 324 case EQ_F: case NE_F: case LS_F: case GR_F: case LE_F: case GE_F: 325 if InRegister (Rrand, EAQr) do 326 $( ApplyRL (Fcmp, EAQr) 327 IndicatorsSetBy := 0 328 resultis true 329 $) 330 ApplyLR (Fcmp, EAQr) 331 IndicatorsSetBy := 0 332 resultis false 333 334 default: CGreport (UnexpectedCase, Op, "DiadicJumpcond") 335 return 336 $) 337 338 let t = valof switchon Op into 339 $( case EQ_S: case EQ_F: resultis Tze 340 case NE_S: case NE_F: resultis Tnz 341 case LS_S: case LS_F: resultis Reversed -> Tpnz, Tmi 342 case GR_S: case GR_F: resultis Reversed -> Tmi, Tpnz 343 case LE_S: case LE_F: resultis Reversed -> Tpl, Tmoz 344 case GE_S: case GE_F: resultis Reversed -> Tmoz, Tpl 345 $) 346 347 if Machine = 645 test t = Tmoz 348 then $( Outop2 (Tmi, L) 349 t := Tze 350 $) 351 or if t = Tpnz do 352 $( Outop3 (Tze, 2, Ic) 353 t := Tpl 354 $) 355 Outop2 (t, L) 356 DisclaimRegister (Lrand) 357 DisclaimRegister (Rrand) 358 $) 359 360 and MonadicJumpcond (Op, L) be 361 $( CompareToZero (Lrand) 362 Outop2 (Op = TRUE_S -> Tnz, Tze, L) 363 DisclaimRegister (Lrand) 364 $) CAE time 8.5, 125 source lines per second. cross reference table Ab bcpl_cg_head: 213 Abd bcpl_opcodes: 17 Abr bcpl_cg_head: 256 AbsRelBits bcpl_cg_head: 115 Ada bcpl_opcodes: 18, bcpl_cg1: 19, 124 AddLiteral bcpl_cg_head: 46 Address bcpl_cg_head: 116 Adlx1 bcpl_opcodes: 19 Al bcpl_cg_head: 221 Als bcpl_opcodes: 20, bcpl_cg1: 150, 250 Ana bcpl_opcodes: 21, bcpl_cg1: 78 AND_S bcpl_symbols: 17 Ansa bcpl_opcodes: 22, bcpl_cg1: 77 Anx0 bcpl_opcodes: 23 AnyPr bcpl_cg_head: 269, bcpl_cg1: 133 AnyXr bcpl_cg_head: 270, bcpl_cg1: 149 AorQr bcpl_cg_head: 268, bcpl_cg1: 19, 27, 27, 28, 32, 74, 78, 82, 84, 102, 119, 121, 148, 183, 185, 233, 235, 249, 257, 279, 315, 316, 320 Aos bcpl_opcodes: 24, bcpl_cg1: 115, 272 Ap bcpl_cg_head: 212 ApplyDiadicOperator bcpl_cg_head: 23, bcpl_cg1: 15 ApplyLR bcpl_cg1: 32, 39, 59, 64, 69, 200, 204, 208, 320, 330 ApplyMonadicOperator bcpl_cg_head: 22, bcpl_cg1: 163 ApplyNegate bcpl_cg1: 29, 37, 179, 215, 234 ApplyOffsetOperator bcpl_cg_head: 24, bcpl_cg1: 98 ApplyRL bcpl_cg1: 28, 36, 63, 200, 201, 316, 326 ApplySymmetrical bcpl_cg1: 19, 22, 51, 54, 74, 78, 82, 84, 200 Apr bcpl_cg_head: 255 Ar bcpl_cg_head: 243, bcpl_cg1: 47, 48, 50, 57, 58, 67, 68, 70, 217, 223, 224, 225 ArgCount bcpl_cg_head: 117 ArgLen bcpl_cg_head: 118 Arl bcpl_opcodes: 25, bcpl_cg1: 150 Asa bcpl_opcodes: 26, bcpl_cg1: 18, 128, 270, 278 ASSIGN_S bcpl_symbols: 18, bcpl_cg1: 167 Au bcpl_cg_head: 222 BadAddress bcpl_cg_codes: 16 BadLabel bcpl_cg_codes: 17 BadRegOpPair bcpl_cg_codes: 18 Bb bcpl_cg_head: 215 Bbr bcpl_cg_head: 258 BE_S bcpl_symbols: 19 BIT_S bcpl_symbols: 20 Bp bcpl_cg_head: 214 Bpr bcpl_cg_head: 257 BREAK_S bcpl_symbols: 21 BuildObject bcpl_compiler_head: 72 BY_S bcpl_symbols: 22 CAE bcpl_compiler_head: 64 CaeReport bcpl_compiler_head: 49 CALL_S bcpl_symbols: 23 CASE_S bcpl_symbols: 24 CgInit bcpl_compiler_head: 71 CGreport bcpl_compiler_head: 51, bcpl_cg1: 90, 155, 193, 229, 334 CgTempList bcpl_cg_head: 119 CgTempSize bcpl_cg_head: 178 Ch bcpl_compiler_head: 92 CHARCONST_S bcpl_symbols: 27 CHAR_S bcpl_symbols: 26 CheckAddr bcpl_cg_head: 97 ClaimRegister bcpl_cg_head: 35, bcpl_cg1: 95, 160, 197 Cleanup bcpl_compiler_head: 61 ClearMemory bcpl_cg_head: 45 ClearRegisters bcpl_cg_head: 44 Cmpa bcpl_opcodes: 27, bcpl_cg1: 316, 320 CodeFirst bcpl_cg_head: 120 CodeP bcpl_cg_head: 121 CodeSize bcpl_cg_head: 179 CodeSwitch bcpl_cg_head: 184 CodeV bcpl_cg_head: 122 COLON_S bcpl_symbols: 28 Column bcpl_compiler_head: 128 CombineAddress bcpl_cg_head: 39, bcpl_cg1: 103, 134 COMMA_S bcpl_symbols: 29 Comment bcpl_cg_head: 123 CompareStrings bcpl_compiler_head: 25 CompareToZero bcpl_cg_head: 56, bcpl_cg1: 308, 312, 361 Compentry bcpl_cg_head: 67 Compexternal bcpl_cg_head: 82 Compfinish bcpl_cg_head: 78 Compfnap bcpl_cg_head: 71 Compgoto bcpl_cg_head: 79 CompilerDTM bcpl_compiler_head: 112 CompilerDTMString bcpl_compiler_head: 111 CompilerVersionNumber bcpl_compiler_head: 110 CompilerVersionString bcpl_compiler_head: 109 Compjump bcpl_cg_head: 40 Complab bcpl_cg_head: 41 Compreturn bcpl_cg_head: 68 Compstring bcpl_cg_head: 80 Compswitch bcpl_cg_head: 99 CompSystemCall bcpl_cg_head: 74 Comptable bcpl_cg_head: 81 Concatenate bcpl_compiler_head: 26 COND_S bcpl_symbols: 30 Const bcpl_cg1: 242, 243, 244, 244, 255, 257 CONSTANT_S bcpl_symbols: 31 CONSTDEF_S bcpl_symbols: 32 ConvertNtoS bcpl_compiler_head: 28 ConvertStoN bcpl_compiler_head: 27 CreateArglist bcpl_cg_head: 69 CreateSystemArglist bcpl_cg_head: 72 Crep bcpl_compiler_head: 98 DataSwitch bcpl_cg_head: 186 DEFAULT_S bcpl_symbols: 33 DeferredJumpLabel bcpl_cg_head: 125 DefineLab bcpl_cg_head: 42 DefsLength bcpl_cg_head: 126 DefsRelbits bcpl_cg_head: 127 DiadicJumpcond bcpl_cg_head: 26, bcpl_cg1: 304 DictionaryEntry bcpl_compiler_head: 127 DisclaimRegister bcpl_cg_head: 36, bcpl_cg1: 93, 94, 158, 159, 196, 356, 357, 363 Div bcpl_opcodes: 28, bcpl_cg1: 59, 69 DIV_F bcpl_symbols: 34, bcpl_cg1: 61 DIV_S bcpl_symbols: 36, bcpl_cg1: 56 Dl bcpl_cg_head: 223, bcpl_cg1: 218, 223, 226 DOUBLE_S bcpl_symbols: 38 DO_S bcpl_symbols: 37 Du bcpl_cg_head: 224 DupCase bcpl_cg_codes: 19 DupLabel bcpl_cg_codes: 20 Dvf bcpl_opcodes: 29 Eabap bcpl_opcodes: 30 Eablb bcpl_opcodes: 31 Eablp bcpl_opcodes: 32 Eapab bcpl_opcodes: 33 Eapap bcpl_opcodes: 34, bcpl_cg1: 135 Eapbp bcpl_opcodes: 35 Eaplb bcpl_opcodes: 36 Eaplp bcpl_opcodes: 37 EAQr bcpl_cg_head: 264, bcpl_cg1: 22, 35, 36, 37, 39, 54, 62, 63, 64, 179, 226, 227, 228, 325, 326, 330 Eax0 bcpl_opcodes: 38 Eax1 bcpl_opcodes: 39 Eax7 bcpl_opcodes: 40 ENDCASE_S bcpl_symbols: 39 Endofstreamch bcpl_compiler_head: 135 ENDPROG_S bcpl_symbols: 40 EnterIntoCrossreference bcpl_compiler_head: 57 EntryLabel bcpl_cg_head: 128 Epaq bcpl_opcodes: 41 EqualString bcpl_compiler_head: 24 EQV_S bcpl_symbols: 44, bcpl_cg1: 84 EQ_F bcpl_symbols: 42, bcpl_cg1: 324, 339 EQ_S bcpl_symbols: 43, bcpl_cg1: 306, 339 Era bcpl_opcodes: 42, bcpl_cg1: 82, 84, 86, 189 Errorsw bcpl_compiler_head: 124 ERROR_S bcpl_symbols: 41 Ersa bcpl_opcodes: 43, bcpl_cg1: 81, 182 EvalNumber bcpl_cg_head: 29, bcpl_cg1: 244, 270 Even bcpl_compiler_head: 136 EXTERNAL_S bcpl_symbols: 46 Fad bcpl_opcodes: 44, bcpl_cg1: 22 FALSE_S bcpl_symbols: 47 Fcmp bcpl_opcodes: 45, bcpl_cg1: 326, 330 Fdi bcpl_opcodes: 46, bcpl_cg1: 63 Fdv bcpl_opcodes: 47, bcpl_cg1: 64 FileCount bcpl_compiler_head: 118 FileNames bcpl_compiler_head: 116 FileShift bcpl_compiler_head: 138 FilesInfo bcpl_compiler_head: 117 FindInRegister bcpl_cg_head: 38, bcpl_cg1: 183, 233 FindPrintName bcpl_compiler_head: 56 FinishText bcpl_cg_head: 20 FINISH_S bcpl_symbols: 48 FIXED_S bcpl_symbols: 49 Fld bcpl_opcodes: 48 FLOAT_S bcpl_symbols: 50 Fmp bcpl_opcodes: 49, bcpl_cg1: 54 FNAP_S bcpl_symbols: 51 FNDEF_S bcpl_symbols: 52 Fneg bcpl_opcodes: 50, bcpl_cg1: 226 Format bcpl_compiler_head: 20 FormCharconst bcpl_compiler_head: 46 FormOpcode bcpl_cg_head: 95, bcpl_cg1: 86, 104, 124, 128, 135, 150, 189, 211, 237, 250, 259, 281 FormStringconst bcpl_compiler_head: 47 FormTag bcpl_cg_head: 96, bcpl_cg1: 150 FOR_S bcpl_symbols: 53 Freevec bcpl_compiler_head: 34 Fsb bcpl_opcodes: 51, bcpl_cg1: 36, 39 Fstr bcpl_opcodes: 52 Fszn bcpl_opcodes: 53 Ft2 bcpl_cg_head: 237 g bcpl_cg1: 297, 298, 299, 300, 300, 300, 300, 300 GetLpLabel bcpl_cg_head: 129 GetRegister bcpl_cg_head: 62, bcpl_cg1: 50, 58, 68, 102, 133, 235 GetStream bcpl_compiler_head: 62 GetVersion bcpl_compiler_head: 59 GET_S bcpl_symbols: 57 GE_F bcpl_symbols: 54, bcpl_cg1: 324, 344 GE_S bcpl_symbols: 56, bcpl_cg1: 306, 344 GlobalTemp bcpl_compiler_head: 131 GLOBAL_S bcpl_symbols: 58, bcpl_cg1: 290 GOTO_S bcpl_symbols: 59 GR_F bcpl_symbols: 60, bcpl_cg1: 324, 342 GR_S bcpl_symbols: 61, bcpl_cg1: 306, 342 h bcpl_cg1: 139, 140, 141, 141, 141, 142, 142, 142, 143, 297, 298, 299, 300, 300, 300, 300, 300 HaveListingFile bcpl_compiler_head: 105 HeaderSwitch bcpl_cg_head: 190 i bcpl_cg1: 244, 245, 246, 247, 247, 250 Ic bcpl_cg_head: 238, bcpl_cg1: 352 IFNOT_S bcpl_symbols: 63 IFSO_S bcpl_symbols: 64 IF_S bcpl_symbols: 62 IndicatorsSetBy bcpl_cg_head: 130, bcpl_cg1: 105, 116, 129, 151, 190, 212, 219, 224, 227, 238, 251, 260, 273, 282, 317, 321, 327, 331 INPUT bcpl_compiler_head: 90 InRegister bcpl_cg_head: 37, bcpl_cg1: 27, 27, 35, 47, 47, 48, 48, 57, 62, 67, 200, 315, 325 Inst bcpl_cg1: 200, 200, 200, 201, 204, 208, 211 InstructionSwitch bcpl_cg_head: 185 INTO_S bcpl_symbols: 66 IsAddress bcpl_cg_head: 31 IsNumber bcpl_cg_head: 28, bcpl_cg1: 243, 270 IsSameLoc bcpl_cg1: 110, 256, 266, 268, 287 IsStored bcpl_cg_head: 32 IsZero bcpl_cg_head: 30, bcpl_cg1: 112, 149, 307, 311 Jumpsw bcpl_cg_head: 131 L bcpl_cg1: 304, 348, 355, 360, 362 LABDEF_S bcpl_symbols: 67 LabelSwitch bcpl_cg_head: 187 LABEL_S bcpl_symbols: 68 LabMaxArg bcpl_cg_head: 132 LabMaxSSP bcpl_cg_head: 133 LabTable bcpl_cg_head: 135 LabTableSize bcpl_cg_head: 180 Lb bcpl_cg_head: 217 Lbr bcpl_cg_head: 260 LC bcpl_cg_head: 136 Lca bcpl_opcodes: 54, bcpl_cg1: 237 Lda bcpl_opcodes: 55, bcpl_cg1: 104 Ldaq bcpl_opcodes: 56 Ldx7 bcpl_opcodes: 57 Left bcpl_compiler_head: 134 Length bcpl_compiler_head: 29 LengthInWords bcpl_compiler_head: 30 LENGTH_S bcpl_symbols: 71 LET_S bcpl_symbols: 72 LexInit bcpl_compiler_head: 65 LE_F bcpl_symbols: 69, bcpl_cg1: 324, 343 LE_S bcpl_symbols: 70, bcpl_cg1: 306, 343 LineCount bcpl_compiler_head: 123 LineCountSwitch bcpl_cg_head: 188 LineMap bcpl_compiler_head: 100 LineMapFirst bcpl_cg_head: 137 LineMapLength bcpl_cg_head: 138 LineMapList bcpl_cg_head: 139 LineMask bcpl_compiler_head: 138 LinkageLength bcpl_cg_head: 140 LinkageRelbits bcpl_cg_head: 141 LinkList bcpl_cg_head: 142 LinkRefersThis bcpl_cg_codes: 21 List1 bcpl_compiler_head: 35 List2 bcpl_compiler_head: 36 List3 bcpl_compiler_head: 37 List4 bcpl_compiler_head: 38 List5 bcpl_compiler_head: 39 List6 bcpl_compiler_head: 40 ListCodeItem bcpl_cg_head: 112 Listing bcpl_compiler_head: 95 LIST_S bcpl_symbols: 73 Literal bcpl_cg_head: 64, bcpl_cg1: 85, 123, 188 Llr bcpl_opcodes: 58 LoadAppropriateRegister bcpl_cg_head: 53, bcpl_cg1: 172 LoadIndex bcpl_cg_head: 52, bcpl_cg1: 149 LoadNegative bcpl_cg1: 176, 232, 278 LoadNumber bcpl_cg_head: 54, bcpl_cg1: 119, 185, 257 LoadPointer bcpl_cg_head: 51 LoadRegister bcpl_cg_head: 50, bcpl_cg1: 121, 148, 179, 209, 249, 279 LOCAL_S bcpl_symbols: 74, bcpl_cg1: 292 LOGAND_S bcpl_symbols: 76, bcpl_cg1: 76 LOGOR_S bcpl_symbols: 77, bcpl_cg1: 72 LookupLabel bcpl_cg_head: 43 LookupTemp bcpl_cg_head: 33, bcpl_cg1: 297, 297 LOOP_S bcpl_symbols: 78 Lp bcpl_cg_head: 216 Lpr bcpl_cg_head: 259 Lprpap bcpl_opcodes: 59 Lprpbp bcpl_opcodes: 60 Lprplp bcpl_opcodes: 61 Lrand bcpl_cg_head: 143, bcpl_cg1: 27, 43, 45, 47, 48, 57, 67, 93, 103, 110, 134, 141, 141, 141, 148, 158, 169, 172, 176, 179, 183, 186, 196, 202, 203, 205, 209, 256, 266, 267, 308, 311, 356, 361, 363 Lrl bcpl_opcodes: 62 LSHIFT_S bcpl_symbols: 81, bcpl_cg1: 146, 150 LS_F bcpl_symbols: 79, bcpl_cg1: 324, 341 LS_S bcpl_symbols: 80, bcpl_cg1: 306, 341 LVECAP_S bcpl_symbols: 83, bcpl_cg1: 108, 299 LV_ARG_OUT bcpl_symbols: 84 LV_FNAP_RESULT bcpl_symbols: 86 LV_GLOBAL bcpl_symbols: 87, bcpl_cg1: 289 LV_LOCAL bcpl_symbols: 88, bcpl_cg1: 291 LV_S bcpl_symbols: 82 LV_STATIC bcpl_symbols: 89, bcpl_cg1: 293 LV_TEMP bcpl_symbols: 90, bcpl_cg1: 101, 109, 168 Lxl0 bcpl_opcodes: 63 Lxl1 bcpl_opcodes: 64 Machine bcpl_compiler_head: 102, bcpl_cg1: 347 MainEntriesList bcpl_cg_head: 145 MAIN_S bcpl_symbols: 91 Makeaddressable bcpl_cg_head: 57, bcpl_cg1: 186, 210, 236 MakeCgTemp bcpl_cg_head: 34, bcpl_cg1: 139 MakeTimeString bcpl_compiler_head: 44 MANIFEST_S bcpl_symbols: 92 MaxArgOffset bcpl_cg_head: 146 MaxSSP bcpl_cg_head: 147 MINUS_F bcpl_symbols: 93, bcpl_cg1: 34 MINUS_S bcpl_symbols: 94, bcpl_cg1: 24 Mod16 bcpl_cg_head: 208 MonadicJumpcond bcpl_cg_head: 25, bcpl_cg1: 360 MONITOR bcpl_compiler_head: 91 Mpy bcpl_opcodes: 65, bcpl_cg1: 51 MULT_F bcpl_symbols: 96, bcpl_cg1: 53 MULT_S bcpl_symbols: 97, bcpl_cg1: 41 n bcpl_cg1: 244, 245 NAMECHAIN bcpl_compiler_head: 125 NAME_S bcpl_symbols: 98 Neg bcpl_opcodes: 66, bcpl_cg1: 223 Negl bcpl_opcodes: 67, bcpl_cg1: 218 NEG_F bcpl_symbols: 99, bcpl_cg1: 178 NEG_S bcpl_symbols: 100, bcpl_cg1: 174 NEQV_S bcpl_symbols: 101, bcpl_cg1: 80 NewLiteralsList bcpl_cg_head: 148 NewSSP bcpl_cg_head: 66 Newvec bcpl_compiler_head: 33 Nextparam bcpl_compiler_head: 45 Nextsymb bcpl_compiler_head: 53 NE_F bcpl_symbols: 102, bcpl_cg1: 324, 340 NE_S bcpl_symbols: 103, bcpl_cg1: 306, 340 NIL_S bcpl_symbols: 104 NOT_S bcpl_symbols: 106, bcpl_cg1: 181 NumberOfRegisters bcpl_cg_head: 266 NUMBER_S bcpl_symbols: 107 OcodeSw bcpl_compiler_head: 104 Offset bcpl_cg1: 98, 103, 113, 119, 122, 123, 134, 143, 150 OFFSET_S bcpl_symbols: 108 OldLabel bcpl_cg_head: 149 OldLiteralsList bcpl_cg_head: 150 Op bcpl_cg1: 15, 16, 90, 98, 99, 140, 150, 155, 163, 164, 193, 255, 259, 264, 270, 277, 278, 281, 304, 305, 334, 338, 360, 362 Optimize bcpl_compiler_head: 101, bcpl_cg1: 18, 25, 35, 42, 57, 62, 67, 73, 77, 81, 110, 168, 175, 182 OptionString bcpl_compiler_head: 115 Ora bcpl_opcodes: 68, bcpl_cg1: 74 Orsa bcpl_opcodes: 69, bcpl_cg1: 73 OR_S bcpl_symbols: 109 OutData bcpl_cg_head: 84 OutLiterals bcpl_cg_head: 47 Outop bcpl_cg_head: 85, bcpl_cg1: 86, 104, 115, 124, 128, 135, 189, 211, 237, 259, 272, 281 Outop2 bcpl_cg_head: 86, bcpl_cg1: 348, 355, 362 Outop3 bcpl_cg_head: 87, bcpl_cg1: 150, 218, 223, 226, 250, 352 Outop4 bcpl_cg_head: 88 OUTPUT bcpl_compiler_head: 89 Outstring bcpl_cg_head: 48 OutW bcpl_cg_head: 89 OutW2 bcpl_cg_head: 90 OverCase bcpl_cg_codes: 22 Packstring bcpl_compiler_head: 21 Param bcpl_cg_head: 151 PhaseError bcpl_cg_codes: 23 Plist bcpl_compiler_head: 68 PLUS_F bcpl_symbols: 110, bcpl_cg1: 21 PLUS_S bcpl_symbols: 111, bcpl_cg1: 17 Pname bcpl_compiler_head: 67 POINTER_S bcpl_symbols: 112 PopInput bcpl_compiler_head: 43 POS_F bcpl_symbols: 113, bcpl_cg1: 166 POS_S bcpl_symbols: 114, bcpl_cg1: 165 PPrep bcpl_compiler_head: 97 Preserve bcpl_cg_head: 59 ProgramName bcpl_compiler_head: 119 PushInput bcpl_compiler_head: 42 PutAbsBits bcpl_cg_head: 92 PutCode bcpl_cg_head: 91 Ql bcpl_cg_head: 225 Qr bcpl_cg_head: 244, bcpl_cg1: 47, 48, 51, 59, 69, 217, 220 Qu bcpl_cg_head: 226 QuietSw bcpl_compiler_head: 106 r bcpl_cg1: 28, 29, 43, 44, 44, 45, 46, 46, 84, 86, 87, 102, 104, 105, 106, 111, 119, 121, 124, 128, 130, 133, 135, 136, 148, 150, 151, 152, 183, 184, 185, 189, 190, 191, 204, 206, 209, 211, 212, 213, 215, 216, 229, 230, 233, 234, 234, 235, 237, 238, 239, 249, 250, 251, 252, 257, 259, 261, 276, 278, 279, 281, 283 Rand bcpl_cg1: 242, 249 RandomI bcpl_compiler_head: 31 RBRA_S bcpl_symbols: 116 Readch bcpl_compiler_head: 16 Reg bcpl_cg1: 16, 95, 99, 160, 164, 197, 200, 200, 200, 200, 201, 204, 208, 209 RegisterTemps bcpl_cg_head: 153, bcpl_cg1: 217 RegisterUsage bcpl_cg_head: 155, bcpl_cg1: 130, 261, 283 REGISTER_S bcpl_symbols: 117 RelbitsFirst bcpl_cg_head: 156 RelbitsLength bcpl_cg_head: 157 RelbitsList bcpl_cg_head: 158 RelbitsOffset bcpl_cg_head: 159 RelDef bcpl_cg_head: 197 RelExtendedAbs bcpl_cg_head: 202 RelLink15 bcpl_cg_head: 196 RelLink18 bcpl_cg_head: 194 RelNegLink18 bcpl_cg_head: 195 RelNegSymbol bcpl_cg_head: 199 Reloc bcpl_cg_head: 160 RelStat15 bcpl_cg_head: 201 RelStat18 bcpl_cg_head: 200 RelSymbol bcpl_cg_head: 198 RelText bcpl_cg_head: 193 REL_S bcpl_symbols: 118 RememberAddress bcpl_cg1: 101, 109, 138 RemoveEscapes bcpl_compiler_head: 23 REM_S bcpl_symbols: 119, bcpl_cg1: 66 REPEATUNTIL_S bcpl_symbols: 122 REPEATWHILE_S bcpl_symbols: 123 REPEAT_S bcpl_symbols: 121 REP_S bcpl_symbols: 120 Result bcpl_cg1: 15, 18, 26, 73, 77, 81, 95, 98, 101, 109, 110, 114, 127, 139, 160, 163, 168, 169, 175, 182, 197, 255, 256, 258, 264, 266, 268, 271, 280 ResultBlockBegin bcpl_cg_head: 75 ResultGet bcpl_cg_head: 77 ResultInfo bcpl_cg_head: 161 ResultInfoList bcpl_cg_head: 162 RESULTIS_S bcpl_symbols: 124 ResultSet bcpl_cg_head: 76 RETURN_S bcpl_symbols: 126 Reversed bcpl_cg1: 305, 341, 342, 343, 344 Right bcpl_compiler_head: 134 RKET_S bcpl_symbols: 127 Rrand bcpl_cg_head: 152, bcpl_cg1: 27, 35, 43, 45, 47, 48, 62, 94, 103, 112, 121, 134, 142, 142, 142, 149, 149, 159, 200, 202, 203, 205, 210, 265, 268, 277, 307, 312, 315, 325, 357 RSHIFT_S bcpl_symbols: 128, bcpl_cg1: 147 RTAP_S bcpl_symbols: 129 RTDEF_S bcpl_symbols: 130 RV_S bcpl_symbols: 131 Satisfactory bcpl_cg_head: 63 SaveSpaceSize bcpl_cg_head: 163 Sb bcpl_cg_head: 219 Sba bcpl_opcodes: 70, bcpl_cg1: 28, 32 Sblx1 bcpl_opcodes: 71 Sbr bcpl_cg_head: 262 SBRA_S bcpl_symbols: 132 SECTBEGIN_S bcpl_symbols: 133 SECTBRA_S bcpl_symbols: 134 SECTEND_S bcpl_symbols: 136 SectionHeader bcpl_cg_head: 94 SectionSwitch bcpl_cg_head: 189 SECTKET_S bcpl_symbols: 137 SEMICOLON_S bcpl_symbols: 138 SetLineNumber bcpl_cg_head: 93 SetupAddr bcpl_cg_head: 55, bcpl_cg1: 114, 127, 258, 271, 280 SKET_S bcpl_symbols: 139 Sp bcpl_cg_head: 218 Spr bcpl_cg_head: 261 Sprpap bcpl_opcodes: 72 Sprpbp bcpl_opcodes: 73 Sprplp bcpl_opcodes: 74 Sreg bcpl_opcodes: 75 Ssa bcpl_opcodes: 76, bcpl_cg1: 26, 175, 277 Sta bcpl_opcodes: 77 StackRefTag bcpl_cg_head: 167 Staq bcpl_opcodes: 78 Star bcpl_cg_head: 239 StarThenReg bcpl_cg_head: 240 STATIC_S bcpl_symbols: 140, bcpl_cg1: 294 Stb bcpl_opcodes: 79 Stc1 bcpl_opcodes: 80 Stcd bcpl_opcodes: 81 Store bcpl_cg_head: 60, bcpl_cg1: 169 StoreArg bcpl_cg_head: 70 StoreRegister bcpl_cg_head: 61 StoreString bcpl_compiler_head: 41 StoreSystemArg bcpl_cg_head: 73 Stpab bcpl_opcodes: 82 Stpap bcpl_opcodes: 83 Stpbp bcpl_opcodes: 84 Stplb bcpl_opcodes: 85 Stplp bcpl_opcodes: 86 STRINGCONST_S bcpl_symbols: 142 STRING_S bcpl_symbols: 141 STRUCTURE_S bcpl_symbols: 143 Stx0 bcpl_opcodes: 87 Stz bcpl_opcodes: 88 SwapAandQ bcpl_cg_head: 58, bcpl_cg1: 48, 57, 67, 222 SWITCHON_S bcpl_symbols: 144 Sxl0 bcpl_opcodes: 89 Sxl1 bcpl_opcodes: 90 Symb bcpl_compiler_head: 126 SymbolLength bcpl_cg_head: 165 SymbolName bcpl_compiler_head: 55 SymbolRelbits bcpl_cg_head: 166 Symbols bcpl_compiler_head: 99 SymtabFirst bcpl_cg_head: 168 SymtabP bcpl_cg_head: 169 SymtabSize bcpl_cg_head: 181 SymtabV bcpl_cg_head: 170 Szn bcpl_opcodes: 91 t bcpl_cg1: 202, 203, 205, 232, 233, 236, 287, 288, 290, 292, 294, 297, 338, 347, 349, 351, 353, 355 TABLE_S bcpl_symbols: 146 Tag bcpl_cg_head: 171 TagPrMask bcpl_cg_head: 206 TagXrMask bcpl_cg_head: 205 TEMP_S bcpl_symbols: 147, bcpl_cg1: 295, 296 TEST_S bcpl_symbols: 148 TextLength bcpl_cg_head: 172 TextRelbits bcpl_cg_head: 173 TimeNow bcpl_compiler_head: 114 TimeNowString bcpl_compiler_head: 113 Tmi bcpl_opcodes: 92, bcpl_cg1: 341, 342, 348 Tmoz bcpl_opcodes: 93, bcpl_cg1: 343, 344, 347 Tnz bcpl_opcodes: 94, bcpl_cg1: 340, 362 TO_S bcpl_symbols: 149 Tpl bcpl_opcodes: 95, bcpl_cg1: 343, 344, 353 Tpnz bcpl_opcodes: 96, bcpl_cg1: 341, 342, 351 Tra bcpl_opcodes: 97 Trans bcpl_compiler_head: 70 Transreport bcpl_compiler_head: 50 Trc bcpl_opcodes: 98 TRUE_S bcpl_symbols: 150, bcpl_cg1: 362 TryDiadicRAR bcpl_cg1: 18, 26, 73, 77, 81, 264 TryMonadicRAR bcpl_cg1: 175, 182, 255 TryShift bcpl_cg1: 43, 45, 242 Tsbap bcpl_opcodes: 99 Tsbbp bcpl_opcodes: 100 Tsblp bcpl_opcodes: 101 Tsx0 bcpl_opcodes: 102 TYPE_S bcpl_symbols: 151 Tze bcpl_opcodes: 103, bcpl_cg1: 339, 349, 352, 362 u bcpl_cg1: 202, 203, 205, 287, 290, 290, 292, 292, 294, 294, 296, 297 UndefLab bcpl_cg_codes: 24 UnexpectedCase bcpl_compiler_head: 139, bcpl_cg1: 90, 155, 193, 229, 334 UNLESS_S bcpl_symbols: 152 Unpackstring bcpl_compiler_head: 22 UNTIL_S bcpl_symbols: 153 UpperCase bcpl_compiler_head: 96 UsageCounter bcpl_cg_head: 175 UserID bcpl_compiler_head: 120 UtilitiesInit bcpl_compiler_head: 60 VALDEF_S bcpl_symbols: 154 VALOF_S bcpl_symbols: 156 VECAP_S bcpl_symbols: 158, bcpl_cg1: 100, 299 VEC_S bcpl_symbols: 157 Vmax bcpl_compiler_head: 137 WHILE_S bcpl_symbols: 159 Writech bcpl_compiler_head: 17 WriteData bcpl_cg_head: 110 WriteDefs bcpl_cg_head: 103 WriteEntry bcpl_cg_head: 102 WriteGetlp bcpl_cg_head: 101 WriteInstruction bcpl_cg_head: 111 WriteLinkage bcpl_cg_head: 104 WriteN bcpl_compiler_head: 19 WriteObjectListing bcpl_compiler_head: 73 WriteObjectMap bcpl_cg_head: 108 WriteRelBits bcpl_cg_head: 107 WriteS bcpl_compiler_head: 18 WriteSymbol bcpl_cg_head: 106 X bcpl_cg1: 265, 267, 270, 270, 270, 277, 278, 279 X0 bcpl_cg_head: 228 X1 bcpl_cg_head: 229 X2 bcpl_cg_head: 230 X3 bcpl_cg_head: 231 X4 bcpl_cg_head: 232 X5 bcpl_cg_head: 233 X6 bcpl_cg_head: 234 X7 bcpl_cg_head: 235 Xr bcpl_cg1: 149, 150 Xr0 bcpl_cg_head: 246 Xr1 bcpl_cg_head: 247 Xr2 bcpl_cg_head: 248 Xr3 bcpl_cg_head: 249 Xr4 bcpl_cg_head: 250 Xr5 bcpl_cg_head: 251 Xr6 bcpl_cg_head: 252 Xr7 bcpl_cg_head: 253 Xref bcpl_compiler_head: 103 Trans time 3.2, 730 object words per second. " Begin text of ApplyOffsetOperator aa 000000 000023 101160 zero 19,33392 " ApplyOffsetOperator aa 000001 160154 171117 zero 57452,62031 aa 000002 146146 163145 zero 52326,58981 aa 000003 164117 160145 zero 59471,57445 aa 000004 162141 164157 zero 58465,59503 aa 000005 162000 000000 zero 58368 L2: aa 000006 000000 213000 98 epaq 0 " set lp to linkage section aa 000007 700026 764161 lprplp sb|22,*au aa 000010 200000 021100 adlx1 bp|0 " BCPL save aa 000011 700000 542111 sprpbp sb|0,x1 aa 000012 700001 544111 sprplp sb|1,x1 aa 000013 700424 620111 eax0 sb|276,x1 aa 000014 777760 360003 anx0 -16,du aa 000015 700025 740100 stx0 sb|21 " end of save sequence aa 000016 000372 710004 100 tra L21 L22: aa 000017 700003 760111 101 lprpap sb|3,x1 " Result aa 000020 000000 236100 ldq ap|0 aa 000021 000112 116007 cmpq 74,dl " LV_TEMP aa 000022 000216 600004 tze L15 aa 000023 000026 235007 102 lda 22,dl " AorQr aa 000024 700020 755111 sta sb|16,x1 4a 000025 400074 272120 tsbbp lp|L23,* " GetRegister aa 000026 000016 000001 zero 14,1 aa 000027 700006 756111 stq sb|6,x1 " r aa 000030 600510 236100 103 ldq sp|328 " Lrand aa 000031 700020 756111 stq sb|16,x1 aa 000032 600521 236100 ldq sp|337 " Rrand aa 000033 700021 756111 stq sb|17,x1 aa 000034 700004 236111 ldq sb|4,x1 " Offset aa 000035 700022 756111 stq sb|18,x1 4a 000036 400072 272120 tsbbp lp|L24,* " CombineAddress aa 000037 000016 000003 zero 14,3 aa 000040 000235 236007 104 ldq 157,dl " Lda aa 000041 700020 756111 stq sb|16,x1 aa 000042 700006 236111 ldq sb|6,x1 " r aa 000043 700021 756111 stq sb|17,x1 4a 000044 400070 272120 tsbbp lp|L25,* " FormOpcode aa 000045 000016 000002 zero 14,2 aa 000046 700007 756111 stq sb|7,x1 aa 000047 700007 236111 ldq sb|7,x1 aa 000050 700020 756111 stq sb|16,x1 4a 000051 400066 272120 tsbbp lp|L26,* " Outop aa 000052 000016 000001 zero 14,1 aa 000053 700006 236111 105 ldq sb|6,x1 " r aa 000054 600473 756100 stq sp|315 " IndicatorsSetBy aa 000055 700006 236111 106 ldq sb|6,x1 " r aa 000056 000350 710004 108 tra L19 L27: aa 000057 700003 762111 109 lprpbp sb|3,x1 " Result aa 000060 200000 235100 lda bp|0 aa 000061 000112 115007 cmpa 74,dl " LV_TEMP aa 000062 000156 600004 tze L15 aa 000063 600152 234100 110 szn sp|106 " Optimize aa 000064 000122 600004 tze L28 aa 000065 700003 236111 ldq sb|3,x1 " Result aa 000066 700020 756111 stq sb|16,x1 aa 000067 600510 236100 ldq sp|328 " Lrand aa 000070 700021 756111 stq sb|17,x1 aa 000071 001607 272004 tsbbp L12+2 " IsSameLoc aa 000072 000016 000002 zero 14,2 aa 000073 000000 116007 cmpq 0,dl aa 000074 000112 600004 tze L29 aa 000075 600521 236100 112 ldq sp|337 " Rrand aa 000076 700020 756111 stq sb|16,x1 4a 000077 400064 272120 tsbbp lp|L32,* " IsZero aa 000100 000016 000001 zero 14,1 aa 000101 000000 116007 cmpq 0,dl aa 000102 000027 600004 tze L30 aa 000103 700004 236111 113 ldq sb|4,x1 " Offset aa 000104 000001 116007 cmpq 1,dl " 1 aa 000105 000014 601004 tnz L33 aa 000106 700003 235111 114 lda sb|3,x1 " Result aa 000107 700020 755111 sta sb|16,x1 4a 000110 400062 272120 tsbbp lp|L34,* " SetupAddr aa 000111 000016 000001 zero 14,1 aa 000112 000054 235007 115 lda 44,dl " Aos aa 000113 700020 755111 sta sb|16,x1 4a 000114 400066 272120 tsbbp lp|L26,* " Outop aa 000115 000016 000001 zero 14,1 aa 000116 600473 450100 116 stz sp|315 " IndicatorsSetBy aa 000117 000000 236007 117 ldq 0,dl " 0 aa 000120 000306 710004 tra L19 L33: aa 000121 700004 235111 119 lda sb|4,x1 " Offset aa 000122 700020 755111 sta sb|16,x1 aa 000123 000026 235007 lda 22,dl " AorQr aa 000124 700021 755111 sta sb|17,x1 4a 000125 400060 272120 tsbbp lp|L35,* " LoadNumber aa 000126 000016 000002 zero 14,2 aa 000127 700007 756111 stq sb|7,x1 " r aa 000130 000031 710004 tra L31 L30: aa 000131 600521 236100 121 ldq sp|337 " Rrand aa 000132 700020 756111 stq sb|16,x1 aa 000133 000026 236007 ldq 22,dl " AorQr aa 000134 700021 756111 stq sb|17,x1 4a 000135 400056 272120 tsbbp lp|L36,* " LoadRegister aa 000136 000016 000002 zero 14,2 aa 000137 700007 756111 stq sb|7,x1 " r aa 000140 700004 234111 122 szn sb|4,x1 " Offset aa 000141 000020 600004 tze L37 aa 000142 700004 236111 123 ldq sb|4,x1 " Offset aa 000143 700020 756111 stq sb|16,x1 4a 000144 400054 272120 tsbbp lp|L38,* " Literal aa 000145 000016 000001 zero 14,1 aa 000146 000075 236007 124 ldq 61,dl " Ada aa 000147 700020 756111 stq sb|16,x1 aa 000150 700007 236111 ldq sb|7,x1 " r aa 000151 700021 756111 stq sb|17,x1 4a 000152 400070 272120 tsbbp lp|L25,* " FormOpcode aa 000153 000016 000002 zero 14,2 aa 000154 700010 756111 stq sb|8,x1 aa 000155 700010 236111 ldq sb|8,x1 aa 000156 700020 756111 stq sb|16,x1 4a 000157 400066 272120 tsbbp lp|L26,* " Outop aa 000160 000016 000001 zero 14,1 L37: L31: aa 000161 700003 236111 127 ldq sb|3,x1 " Result aa 000162 700020 756111 stq sb|16,x1 4a 000163 400062 272120 tsbbp lp|L34,* " SetupAddr aa 000164 000016 000001 zero 14,1 aa 000165 000055 236007 128 ldq 45,dl " Asa aa 000166 700020 756111 stq sb|16,x1 aa 000167 700007 236111 ldq sb|7,x1 " r aa 000170 700021 756111 stq sb|17,x1 4a 000171 400070 272120 tsbbp lp|L25,* " FormOpcode aa 000172 000016 000002 zero 14,2 aa 000173 700010 756111 stq sb|8,x1 aa 000174 700010 236111 ldq sb|8,x1 aa 000175 700020 756111 stq sb|16,x1 4a 000176 400066 272120 tsbbp lp|L26,* " Outop aa 000177 000016 000001 zero 14,1 aa 000200 600473 450100 129 stz sp|315 " IndicatorsSetBy aa 000201 700007 722111 130 lxl2 sb|7,x1 " r aa 000202 600524 761100 lprpab sp|340 " RegisterUsage aa 000203 100000 450112 stz ab|0,x2 aa 000204 000000 236007 131 ldq 0,dl " 0 aa 000205 000221 710004 tra L19 L29: L28: aa 000206 000027 235007 133 lda 23,dl " AnyPr aa 000207 700020 755111 sta sb|16,x1 4a 000210 400074 272120 tsbbp lp|L23,* " GetRegister aa 000211 000016 000001 zero 14,1 aa 000212 700006 756111 stq sb|6,x1 " r aa 000213 600510 236100 134 ldq sp|328 " Lrand aa 000214 700020 756111 stq sb|16,x1 aa 000215 600521 236100 ldq sp|337 " Rrand aa 000216 700021 756111 stq sb|17,x1 aa 000217 700004 236111 ldq sb|4,x1 " Offset aa 000220 700022 756111 stq sb|18,x1 4a 000221 400072 272120 tsbbp lp|L24,* " CombineAddress aa 000222 000016 000003 zero 14,3 aa 000223 000350 236007 135 ldq 232,dl " Eapap aa 000224 700020 756111 stq sb|16,x1 aa 000225 700006 236111 ldq sb|6,x1 " r aa 000226 700021 756111 stq sb|17,x1 4a 000227 400070 272120 tsbbp lp|L25,* " FormOpcode aa 000230 000016 000002 zero 14,2 aa 000231 700007 756111 stq sb|7,x1 aa 000232 700007 236111 ldq sb|7,x1 aa 000233 700020 756111 stq sb|16,x1 4a 000234 400066 272120 tsbbp lp|L26,* " Outop aa 000235 000016 000001 zero 14,1 aa 000236 700006 236111 136 ldq sb|6,x1 " r aa 000237 000167 710004 138 tra L19 L15: aa 000240 700003 763111 139 lprpbb sb|3,x1 " Result aa 000241 300001 235100 lda bb|1 aa 000242 700020 755111 sta sb|16,x1 4a 000243 400052 272120 tsbbp lp|L39,* " MakeCgTemp aa 000244 000016 000001 zero 14,1 aa 000245 700007 756111 stq sb|7,x1 " h aa 000246 700002 236111 140 ldq sb|2,x1 " Op aa 000247 700007 765111 lprplb sb|7,x1 " h aa 000250 500001 756100 stq lb|1 aa 000251 600510 760100 141 lprpap sp|328 " Lrand aa 000252 000001 236100 ldq ap|1 aa 000253 700007 762111 lprpbp sb|7,x1 " h aa 000254 200003 756100 stq bp|3 aa 000255 600510 761100 lprpab sp|328 " Lrand aa 000256 100000 236100 ldq ab|0 aa 000257 700007 763111 lprpbb sb|7,x1 " h aa 000260 300002 756100 stq bb|2 aa 000261 600510 765100 lprplb sp|328 " Lrand aa 000262 500002 236100 ldq lb|2 aa 000263 700007 760111 lprpap sb|7,x1 " h aa 000264 000004 756100 stq ap|4 aa 000265 600521 762100 142 lprpbp sp|337 " Rrand aa 000266 200000 236100 ldq bp|0 aa 000267 700007 761111 lprpab sb|7,x1 " h aa 000270 100005 756100 stq ab|5 aa 000271 600521 763100 lprpbb sp|337 " Rrand aa 000272 300001 236100 ldq bb|1 aa 000273 700007 765111 lprplb sb|7,x1 " h aa 000274 500006 756100 stq lb|6 aa 000275 600521 760100 lprpap sp|337 " Rrand aa 000276 000002 236100 ldq ap|2 aa 000277 700007 762111 lprpbp sb|7,x1 " h aa 000300 200007 756100 stq bp|7 aa 000301 700004 236111 143 ldq sb|4,x1 " Offset aa 000302 700007 761111 lprpab sb|7,x1 " h aa 000303 100010 756100 stq ab|8 aa 000304 000143 710004 146 tra L18 L40: aa 000305 600510 236100 148 ldq sp|328 " Lrand aa 000306 700020 756111 stq sb|16,x1 aa 000307 000026 236007 ldq 22,dl " AorQr aa 000310 700021 756111 stq sb|17,x1 4a 000311 400056 272120 tsbbp lp|L36,* " LoadRegister aa 000312 000016 000002 zero 14,2 aa 000313 700010 756111 stq sb|8,x1 " r aa 000314 600521 236100 149 ldq sp|337 " Rrand aa 000315 700020 756111 stq sb|16,x1 4a 000316 400064 272120 tsbbp lp|L32,* " IsZero aa 000317 000016 000001 zero 14,1 aa 000320 000000 116007 cmpq 0,dl aa 000321 000003 600004 tze L41 aa 000322 000000 236007 ldq 0,dl " 0 aa 000323 000007 710004 tra L42 L41: aa 000324 600521 235100 lda sp|337 " Rrand aa 000325 700020 755111 sta sb|16,x1 aa 000326 000030 235007 lda 24,dl " AnyXr aa 000327 700021 755111 sta sb|17,x1 4a 000330 400050 272120 tsbbp lp|L43,* " LoadIndex aa 000331 000016 000002 zero 14,2 L42: aa 000332 700014 756111 stq sb|12,x1 aa 000333 700014 236111 ldq sb|12,x1 aa 000334 700011 756111 stq sb|9,x1 " Xr aa 000335 700002 236111 150 ldq sb|2,x1 " Op aa 000336 000101 116007 cmpq 65,dl " LSHIFT_S aa 000337 000003 601004 tnz L44 aa 000340 000735 235007 lda 477,dl " Als aa 000341 000002 710004 tra L45 L44: aa 000342 000771 235007 lda 505,dl " Arl L45: aa 000343 700015 755111 sta sb|13,x1 aa 000344 700015 235111 lda sb|13,x1 aa 000345 700014 755111 sta sb|12,x1 aa 000346 700014 235111 lda sb|12,x1 aa 000347 700020 755111 sta sb|16,x1 aa 000350 700010 235111 lda sb|8,x1 " r aa 000351 700021 755111 sta sb|17,x1 4a 000352 400070 272120 tsbbp lp|L25,* " FormOpcode aa 000353 000016 000002 zero 14,2 aa 000354 700012 756111 stq sb|10,x1 aa 000355 700011 236111 ldq sb|9,x1 " Xr aa 000356 700020 756111 stq sb|16,x1 4a 000357 400046 272120 tsbbp lp|L46,* " FormTag aa 000360 000016 000001 zero 14,1 aa 000361 700014 756111 stq sb|12,x1 aa 000362 700012 236111 ldq sb|10,x1 aa 000363 700020 756111 stq sb|16,x1 aa 000364 700004 236111 ldq sb|4,x1 " Offset aa 000365 700021 756111 stq sb|17,x1 aa 000366 700014 236111 ldq sb|12,x1 aa 000367 700022 756111 stq sb|18,x1 4a 000370 400044 272120 tsbbp lp|L47,* " Outop3 aa 000371 000016 000003 zero 14,3 aa 000372 700010 236111 151 ldq sb|8,x1 " r aa 000373 600473 756100 stq sp|315 " IndicatorsSetBy aa 000374 700010 236111 152 ldq sb|8,x1 " r aa 000375 000031 710004 155 tra L19 L48: aa 000376 000143 235007 lda 99,dl " UnexpectedCase aa 000377 700020 755111 sta sb|16,x1 aa 000400 700002 235111 lda sb|2,x1 " Op aa 000401 700021 755111 sta sb|17,x1 aa 000402 000051 353404 eapbb L49 " "ApplyAddressOperator" aa 000403 700022 543111 sprpbb sb|18,x1 4a 000404 400042 272120 tsbbp lp|L50,* " CGreport aa 000405 000016 000003 zero 14,3 aa 000406 000000 236007 156 ldq 0,dl " 0 aa 000407 000017 710004 tra L19 L21: " Begin switchon aa 000410 700002 235111 lda sb|2,x1 " Op aa 000411 000043 773000 lrl 35 aa 000412 000004 507007 dvf 4,dl " hash table size 0a 000413 000422 115006 cmpa L51,ql aa 000414 777762 601004 tnz L48 0a 000415 000416 710006 tra L52,ql L52: aa 000416 777667 710004 tra L40 aa 000417 777666 710004 tra L40 aa 000420 777377 710004 tra L22 aa 000421 777436 710004 tra L27 L51: aa 000422 000000 000034 zero 0,28 aa 000423 000000 000020 zero 0,16 aa 000424 000000 000043 zero 0,35 aa 000425 000000 000020 zero 0,16 L20: L19: aa 000426 700006 756111 stq sb|6,x1 aa 000427 700006 236111 ldq sb|6,x1 aa 000430 700005 756111 stq sb|5,x1 " Reg aa 000431 600510 236100 158 ldq sp|328 " Lrand aa 000432 700020 756111 stq sb|16,x1 4a 000433 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 000434 000016 000001 zero 14,1 aa 000435 600521 236100 159 ldq sp|337 " Rrand aa 000436 700020 756111 stq sb|16,x1 4a 000437 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 000440 000016 000001 zero 14,1 aa 000441 700005 236111 160 ldq sb|5,x1 " Reg aa 000442 700020 756111 stq sb|16,x1 aa 000443 700003 236111 ldq sb|3,x1 " Result aa 000444 700021 756111 stq sb|17,x1 4a 000445 400036 272120 tsbbp lp|L54,* " ClaimRegister aa 000446 000016 000002 zero 14,2 L18: aa 000447 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000450 200000 121100 sblx1 bp|0 aa 000451 700001 764111 lprplp sb|1,x1 aa 000452 200001 710100 tra bp|1 " end of return sequence " Literal pool L49: aa 000453 000024 101160 zero 20,33392 " "ApplyAddressOperator" aa 000454 160154 171101 zero 57452,62017 aa 000455 144144 162145 zero 51300,58469 aa 000456 163163 117160 zero 58995,40560 aa 000457 145162 141164 zero 51826,49780 aa 000460 157162 000000 zero 56946 " Begin text of ApplyMonadicOperator aa 000461 000024 101160 zero 20,33392 " ApplyMonadicOperator aa 000462 160154 171115 zero 57452,62029 aa 000463 157156 141144 zero 56942,49764 aa 000464 151143 117160 zero 53859,40560 aa 000465 145162 141164 zero 51826,49780 aa 000466 157162 000000 zero 56946 L3: aa 000467 000000 213000 163 epaq 0 " set lp to linkage section aa 000470 700026 764161 lprplp sb|22,*au aa 000471 200000 021100 adlx1 bp|0 " BCPL save aa 000472 700000 542111 sprpbp sb|0,x1 aa 000473 700001 544111 sprplp sb|1,x1 aa 000474 700424 620111 eax0 sb|276,x1 aa 000475 777760 360003 anx0 -16,du aa 000476 700025 740100 stx0 sb|21 " end of save sequence aa 000477 000172 710004 165 tra L60 L61: aa 000500 600152 234100 168 szn sp|106 " Optimize aa 000501 000015 600004 tze L62 aa 000502 700003 763111 lprpbb sb|3,x1 " Result aa 000503 300000 236100 ldq bb|0 aa 000504 000112 116007 cmpq 74,dl " LV_TEMP aa 000505 000011 600004 tze L63 aa 000506 600510 235100 169 lda sp|328 " Lrand aa 000507 700014 755111 sta sb|12,x1 aa 000510 700003 235111 lda sb|3,x1 " Result aa 000511 700015 755111 sta sb|13,x1 4a 000512 400034 272120 tsbbp lp|L64,* " Store aa 000513 000012 000002 zero 10,2 aa 000514 000000 235007 170 lda 0,dl " 0 aa 000515 000201 710004 tra L58 L63: L62: aa 000516 600510 236100 172 ldq sp|328 " Lrand aa 000517 700014 756111 stq sb|12,x1 aa 000520 700015 450111 stz sb|13,x1 4a 000521 400032 272120 tsbbp lp|L65,* " LoadAppropriateRegister aa 000522 000012 000002 zero 10,2 aa 000523 000044 777000 llr 36 " exchange A and Q aa 000524 000172 710004 174 tra L58 L66: aa 000525 600152 234100 175 szn sp|106 " Optimize aa 000526 000014 600004 tze L67 aa 000527 700003 235111 lda sb|3,x1 " Result aa 000530 700014 755111 sta sb|12,x1 aa 000531 000155 235007 lda 109,dl " Ssa aa 000532 700015 755111 sta sb|13,x1 aa 000533 700016 450111 stz sb|14,x1 aa 000534 001555 272004 tsbbp L10+2 " TryMonadicRAR aa 000535 000012 000003 zero 10,3 aa 000536 000000 116007 cmpq 0,dl aa 000537 000003 600004 tze L68 aa 000540 000000 235007 lda 0,dl " 0 aa 000541 000155 710004 tra L58 L68: L67: aa 000542 600510 236100 176 ldq sp|328 " Lrand aa 000543 700014 756111 stq sb|12,x1 aa 000544 001746 272004 tsbbp L8+2 " LoadNegative aa 000545 000012 000001 zero 10,1 aa 000546 000044 777000 llr 36 " exchange A and Q aa 000547 000147 710004 178 tra L58 L69: aa 000550 600510 235100 179 lda sp|328 " Lrand aa 000551 700014 755111 sta sb|12,x1 aa 000552 000023 235007 lda 19,dl " EAQr aa 000553 700015 755111 sta sb|13,x1 4a 000554 400056 272120 tsbbp lp|L36,* " LoadRegister aa 000555 000012 000002 zero 10,2 aa 000556 700007 756111 stq sb|7,x1 aa 000557 700007 236111 ldq sb|7,x1 aa 000560 700014 756111 stq sb|12,x1 aa 000561 000320 272004 tsbbp L7+2 " ApplyNegate aa 000562 000012 000001 zero 10,1 aa 000563 000044 777000 llr 36 " exchange A and Q aa 000564 000132 710004 181 tra L58 L70: aa 000565 600152 234100 182 szn sp|106 " Optimize aa 000566 000015 600004 tze L71 aa 000567 700003 235111 lda sb|3,x1 " Result aa 000570 700014 755111 sta sb|12,x1 aa 000571 000655 235007 lda 429,dl " Ersa aa 000572 700015 755111 sta sb|13,x1 aa 000573 000001 335007 lca 1,dl " true aa 000574 700016 755111 sta sb|14,x1 aa 000575 001514 272004 tsbbp L10+2 " TryMonadicRAR aa 000576 000012 000003 zero 10,3 aa 000577 000000 116007 cmpq 0,dl aa 000600 000003 600004 tze L72 aa 000601 000000 235007 lda 0,dl " 0 aa 000602 000114 710004 tra L58 L72: L71: aa 000603 600510 236100 183 ldq sp|328 " Lrand aa 000604 700014 756111 stq sb|12,x1 aa 000605 000026 236007 ldq 22,dl " AorQr aa 000606 700015 756111 stq sb|13,x1 4a 000607 400030 272120 tsbbp lp|L73,* " FindInRegister aa 000610 000012 000002 zero 10,2 aa 000611 700005 756111 stq sb|5,x1 " r aa 000612 700005 234111 184 szn sb|5,x1 " r aa 000613 000017 601004 tnz L74 aa 000614 000001 336007 185 lcq 1,dl " true aa 000615 700014 756111 stq sb|12,x1 aa 000616 000026 236007 ldq 22,dl " AorQr aa 000617 700015 756111 stq sb|13,x1 aa 000620 000125 371404 eaplb L76 " "true" aa 000621 700016 545111 sprplb sb|14,x1 4a 000622 400060 272120 tsbbp lp|L35,* " LoadNumber aa 000623 000012 000003 zero 10,3 aa 000624 700005 756111 stq sb|5,x1 " r aa 000625 600510 236100 186 ldq sp|328 " Lrand aa 000626 700014 756111 stq sb|12,x1 4a 000627 400026 272120 tsbbp lp|L77,* " Makeaddressable aa 000630 000012 000001 zero 10,1 aa 000631 000007 710004 tra L75 L74: aa 000632 000001 336007 188 lcq 1,dl " true aa 000633 700014 756111 stq sb|12,x1 aa 000634 000111 371404 eaplb L76 " "true" aa 000635 700015 545111 sprplb sb|13,x1 4a 000636 400054 272120 tsbbp lp|L38,* " Literal aa 000637 000012 000002 zero 10,2 L75: aa 000640 000675 236007 189 ldq 445,dl " Era aa 000641 700014 756111 stq sb|12,x1 aa 000642 700005 236111 ldq sb|5,x1 " r aa 000643 700015 756111 stq sb|13,x1 4a 000644 400070 272120 tsbbp lp|L25,* " FormOpcode aa 000645 000012 000002 zero 10,2 aa 000646 700006 756111 stq sb|6,x1 aa 000647 700006 236111 ldq sb|6,x1 aa 000650 700014 756111 stq sb|12,x1 4a 000651 400066 272120 tsbbp lp|L26,* " Outop aa 000652 000012 000001 zero 10,1 aa 000653 700005 236111 190 ldq sb|5,x1 " r aa 000654 600473 756100 stq sp|315 " IndicatorsSetBy aa 000655 700005 235111 191 lda sb|5,x1 " r aa 000656 000040 710004 193 tra L58 L78: aa 000657 000143 236007 ldq 99,dl " UnexpectedCase aa 000660 700014 756111 stq sb|12,x1 aa 000661 700002 236111 ldq sb|2,x1 " Op aa 000662 700015 756111 stq sb|13,x1 aa 000663 000054 371404 eaplb L79 " "ApplyMonadicOperator" aa 000664 700016 545111 sprplb sb|14,x1 4a 000665 400042 272120 tsbbp lp|L50,* " CGreport aa 000666 000012 000003 zero 10,3 aa 000667 000000 235007 194 lda 0,dl " 0 aa 000670 000026 710004 tra L58 L60: " Begin switchon aa 000671 700002 235111 lda sb|2,x1 " Op aa 000672 000141 115007 cmpa 97,dl aa 000673 000004 604004 tmi L80 aa 000674 000143 115007 cmpa 99,dl aa 000675 777603 604004 tmi L61 aa 000676 777761 710004 tra L78 L80: aa 000677 000043 773000 lrl 35 aa 000700 000005 507007 dvf 5,dl " hash table size 0a 000701 000711 115006 cmpa L81,ql aa 000702 777755 601004 tnz L78 0a 000703 000704 710006 tra L82,ql L82: aa 000704 777661 710004 tra L70 aa 000705 777752 710004 tra L78 aa 000706 777572 710004 tra L61 aa 000707 777641 710004 tra L69 aa 000710 777615 710004 tra L66 L81: aa 000711 000000 000022 zero 0,18 aa 000712 000000 000000 zero 0 aa 000713 000000 000000 zero 0 aa 000714 000000 000020 zero 0,16 aa 000715 000000 000020 zero 0,16 L59: L58: aa 000716 700005 755111 sta sb|5,x1 aa 000717 700005 236111 ldq sb|5,x1 aa 000720 700004 756111 stq sb|4,x1 " Reg aa 000721 600510 236100 196 ldq sp|328 " Lrand aa 000722 700014 756111 stq sb|12,x1 4a 000723 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 000724 000012 000001 zero 10,1 aa 000725 700004 236111 197 ldq sb|4,x1 " Reg aa 000726 700014 756111 stq sb|12,x1 aa 000727 700003 236111 ldq sb|3,x1 " Result aa 000730 700015 756111 stq sb|13,x1 4a 000731 400036 272120 tsbbp lp|L54,* " ClaimRegister aa 000732 000012 000002 zero 10,2 L57: aa 000733 700000 762111 lprpbp sb|0,x1 " bcpl return aa 000734 200000 121100 sblx1 bp|0 aa 000735 700001 764111 lprplp sb|1,x1 aa 000736 200001 710100 tra bp|1 " end of return sequence " Literal pool L79: aa 000737 000024 101160 zero 20,33392 " "ApplyMonadicOperator" aa 000740 160154 171115 zero 57452,62029 aa 000741 157156 141144 zero 56942,49764 aa 000742 151143 117160 zero 53859,40560 aa 000743 145162 141164 zero 51826,49780 aa 000744 157162 000000 zero 56946 L76: aa 000745 000004 164162 zero 4,59506 " "true" aa 000746 165145 000000 zero 60005 " Begin text of ApplySymmetrical aa 000747 000020 101160 zero 16,33392 " ApplySymmetrical aa 000750 160154 171123 zero 57452,62035 aa 000751 171155 155145 zero 62061,55909 aa 000752 164162 151143 zero 59506,53859 aa 000753 141154 000000 zero 49772 L4: aa 000754 000000 213000 200 epaq 0 " set lp to linkage section aa 000755 700026 764161 lprplp sb|22,*au aa 000756 200000 021100 adlx1 bp|0 " BCPL save aa 000757 700000 542111 sprpbp sb|0,x1 aa 000760 700001 544111 sprplp sb|1,x1 aa 000761 700423 620111 eax0 sb|275,x1 aa 000762 777760 360003 anx0 -16,du aa 000763 700025 740100 stx0 sb|21 " end of save sequence aa 000764 600521 236100 ldq sp|337 " Rrand aa 000765 700014 756111 stq sb|12,x1 aa 000766 700003 236111 ldq sb|3,x1 " Reg aa 000767 700015 756111 stq sb|13,x1 4a 000770 400024 272120 tsbbp lp|L87,* " InRegister aa 000771 000012 000002 zero 10,2 aa 000772 000000 116007 cmpq 0,dl aa 000773 000010 600004 tze L85 aa 000774 700002 236111 ldq sb|2,x1 " Inst aa 000775 700014 756111 stq sb|12,x1 aa 000776 700003 236111 ldq sb|3,x1 " Reg aa 000777 700015 756111 stq sb|13,x1 aa 001000 001601 272004 tsbbp L5+2 " ApplyRL aa 001001 000012 000002 zero 10,2 aa 001002 000007 710004 tra L86 L85: aa 001003 700002 236111 ldq sb|2,x1 " Inst aa 001004 700014 756111 stq sb|12,x1 aa 001005 700003 236111 ldq sb|3,x1 " Reg aa 001006 700015 756111 stq sb|13,x1 aa 001007 000016 272004 tsbbp L6+2 " ApplyLR aa 001010 000012 000002 zero 10,2 L86: aa 001011 700011 756111 stq sb|9,x1 aa 001012 700011 236111 ldq sb|9,x1 aa 001013 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001014 200000 121100 sblx1 bp|0 aa 001015 700001 764111 lprplp sb|1,x1 aa 001016 200001 710100 tra bp|1 " end of return sequence " Begin text of ApplyLR aa 001017 000007 101160 zero 7,33392 " ApplyLR aa 001020 160154 171114 zero 57452,62028 aa 001021 122000 000000 zero 41984 aa 001022 700004 756111 208 stq sb|4,x1 " temporary L6: aa 001023 000000 213000 epaq 0 " set lp to linkage section aa 001024 700026 764161 lprplp sb|22,*au aa 001025 200000 021100 adlx1 bp|0 " BCPL save aa 001026 700000 542111 sprpbp sb|0,x1 aa 001027 700001 544111 sprplp sb|1,x1 aa 001030 700423 620111 eax0 sb|275,x1 aa 001031 777760 360003 anx0 -16,du aa 001032 700025 740100 stx0 sb|21 " end of save sequence aa 001033 600510 236100 209 ldq sp|328 " Lrand aa 001034 700012 756111 stq sb|10,x1 aa 001035 700003 236111 ldq sb|3,x1 " Reg aa 001036 700013 756111 stq sb|11,x1 4a 001037 400056 272120 tsbbp lp|L36,* " LoadRegister aa 001040 000010 000002 zero 8,2 aa 001041 700005 756111 stq sb|5,x1 " r aa 001042 600521 236100 210 ldq sp|337 " Rrand aa 001043 700012 756111 stq sb|10,x1 4a 001044 400026 272120 tsbbp lp|L77,* " Makeaddressable aa 001045 000010 000001 zero 8,1 aa 001046 700002 236111 211 ldq sb|2,x1 " Inst aa 001047 700012 756111 stq sb|10,x1 aa 001050 700005 236111 ldq sb|5,x1 " r aa 001051 700013 756111 stq sb|11,x1 4a 001052 400070 272120 tsbbp lp|L25,* " FormOpcode aa 001053 000010 000002 zero 8,2 aa 001054 700006 756111 stq sb|6,x1 aa 001055 700006 236111 ldq sb|6,x1 aa 001056 700012 756111 stq sb|10,x1 4a 001057 400066 272120 tsbbp lp|L26,* " Outop aa 001060 000010 000001 zero 8,1 aa 001061 700005 236111 212 ldq sb|5,x1 " r aa 001062 600473 756100 stq sp|315 " IndicatorsSetBy aa 001063 700005 236111 213 ldq sb|5,x1 " r L90: aa 001064 700005 756111 stq sb|5,x1 aa 001065 700005 236111 ldq sb|5,x1 aa 001066 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001067 200000 121100 sblx1 bp|0 aa 001070 700001 764111 lprplp sb|1,x1 aa 001071 200001 710100 tra bp|1 " end of return sequence " Begin text of ApplyNegate aa 001072 000013 101160 zero 11,33392 " ApplyNegate aa 001073 160154 171116 zero 57452,62030 aa 001074 145147 141164 zero 51815,49780 aa 001075 145000 000000 zero 51712 aa 001076 700004 756111 215 stq sb|4,x1 " temporary L7: aa 001077 000000 213000 epaq 0 " set lp to linkage section aa 001100 700026 764161 lprplp sb|22,*au aa 001101 200000 021100 adlx1 bp|0 " BCPL save aa 001102 700000 542111 sprpbp sb|0,x1 aa 001103 700001 544111 sprplp sb|1,x1 aa 001104 700424 620111 eax0 sb|276,x1 aa 001105 777760 360003 anx0 -16,du aa 001106 700025 740100 stx0 sb|21 " end of save sequence aa 001107 000060 710004 217 tra L95 L96: aa 001110 600522 765100 lprplb sp|338 " RegisterTemps aa 001111 500001 234100 szn lb|1 aa 001112 000013 601004 tnz L97 aa 001113 000533 236007 218 ldq 347,dl " Negl aa 001114 700010 756111 stq sb|8,x1 aa 001115 700011 450111 stz sb|9,x1 aa 001116 000007 236007 ldq 7,dl " Dl aa 001117 700012 756111 stq sb|10,x1 4a 001120 400044 272120 tsbbp lp|L47,* " Outop3 aa 001121 000006 000003 zero 6,3 aa 001122 600473 450100 219 stz sp|315 " IndicatorsSetBy aa 001123 000002 236007 220 ldq 2,dl " Qr aa 001124 000055 710004 tra L93 L97: 4a 001125 400022 272120 222 tsbbp lp|L98,* " SwapAandQ aa 001126 000006 000000 zero 6 L99: aa 001127 000531 235007 223 lda 345,dl " Neg aa 001130 700010 755111 sta sb|8,x1 aa 001131 700011 450111 stz sb|9,x1 aa 001132 000007 235007 lda 7,dl " Dl aa 001133 700012 755111 sta sb|10,x1 4a 001134 400044 272120 tsbbp lp|L47,* " Outop3 aa 001135 000006 000003 zero 6,3 aa 001136 000001 235007 224 lda 1,dl " Ar aa 001137 600473 755100 sta sp|315 " IndicatorsSetBy aa 001140 000001 236007 225 ldq 1,dl " Ar aa 001141 000040 710004 226 tra L93 L100: aa 001142 000513 235007 lda 331,dl " Fneg aa 001143 700010 755111 sta sb|8,x1 aa 001144 700011 450111 stz sb|9,x1 aa 001145 000007 235007 lda 7,dl " Dl aa 001146 700012 755111 sta sb|10,x1 4a 001147 400044 272120 tsbbp lp|L47,* " Outop3 aa 001150 000006 000003 zero 6,3 aa 001151 000023 235007 227 lda 19,dl " EAQr aa 001152 600473 755100 sta sp|315 " IndicatorsSetBy aa 001153 000023 236007 228 ldq 19,dl " EAQr aa 001154 000025 710004 229 tra L93 L101: aa 001155 000143 235007 lda 99,dl " UnexpectedCase aa 001156 700010 755111 sta sb|8,x1 aa 001157 700002 235111 lda sb|2,x1 " r aa 001160 700011 755111 sta sb|9,x1 aa 001161 000027 350004 eapap L102 " "ApplyNegate" aa 001162 700012 540111 sprpap sb|10,x1 4a 001163 400042 272120 tsbbp lp|L50,* " CGreport aa 001164 000006 000003 zero 6,3 aa 001165 700002 236111 230 ldq sb|2,x1 " r aa 001166 000013 710004 tra L93 L95: " Begin switchon aa 001167 700002 235111 lda sb|2,x1 " r aa 001170 000023 115007 cmpa 19,dl aa 001171 000003 604004 tmi L103 aa 001172 777750 600004 tze L100 aa 001173 777762 710004 tra L101 L103: aa 001174 000001 115007 cmpa 1,dl aa 001175 777732 600004 tze L99 aa 001176 000002 115007 cmpa 2,dl aa 001177 777711 600004 tze L96 aa 001200 777755 710004 tra L101 L94: L93: aa 001201 700004 756111 stq sb|4,x1 aa 001202 700004 236111 ldq sb|4,x1 aa 001203 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001204 200000 121100 sblx1 bp|0 aa 001205 700001 764111 lprplp sb|1,x1 aa 001206 200001 710100 tra bp|1 " end of return sequence aa 001207 700003 756111 stq sb|3,x1 " temporary " Literal pool L102: aa 001210 000013 101160 zero 11,33392 " "ApplyNegate" aa 001211 160154 171116 zero 57452,62030 aa 001212 145147 141164 zero 51815,49780 aa 001213 145000 000000 zero 51712 " Begin text of DiadicJumpcond aa 001214 000016 104151 zero 14,34921 " DiadicJumpcond aa 001215 141144 151143 zero 49764,53859 aa 001216 112165 155160 zero 38005,55920 aa 001217 143157 156144 zero 50799,56420 L13: aa 001220 000000 213000 304 epaq 0 " set lp to linkage section aa 001221 700026 764161 lprplp sb|22,*au aa 001222 200000 021100 adlx1 bp|0 " BCPL save aa 001223 700000 542111 sprpbp sb|0,x1 aa 001224 700001 544111 sprplp sb|1,x1 aa 001225 700424 620111 eax0 sb|276,x1 aa 001226 777760 360003 anx0 -16,du aa 001227 700025 740100 stx0 sb|21 " end of save sequence aa 001230 000126 710004 306 tra L109 L110: aa 001231 600521 236100 307 ldq sp|337 " Rrand aa 001232 700012 756111 stq sb|10,x1 4a 001233 400064 272120 tsbbp lp|L32,* " IsZero aa 001234 000010 000001 zero 8,1 aa 001235 000000 116007 cmpq 0,dl aa 001236 000007 600004 tze L111 aa 001237 600510 236100 308 ldq sp|328 " Lrand aa 001240 700012 756111 stq sb|10,x1 4a 001241 400020 272120 tsbbp lp|L112,* " CompareToZero aa 001242 000010 000001 zero 8,1 aa 001243 000000 236007 309 ldq 0,dl " false aa 001244 000160 710004 tra L107 L111: aa 001245 600510 235100 311 lda sp|328 " Lrand aa 001246 700012 755111 sta sb|10,x1 4a 001247 400064 272120 tsbbp lp|L32,* " IsZero aa 001250 000010 000001 zero 8,1 aa 001251 000000 116007 cmpq 0,dl aa 001252 000007 600004 tze L113 aa 001253 600521 236100 312 ldq sp|337 " Rrand aa 001254 700012 756111 stq sb|10,x1 4a 001255 400020 272120 tsbbp lp|L112,* " CompareToZero aa 001256 000010 000001 zero 8,1 aa 001257 000001 336007 313 lcq 1,dl " true aa 001260 000144 710004 tra L107 L113: aa 001261 600521 235100 315 lda sp|337 " Rrand aa 001262 700012 755111 sta sb|10,x1 aa 001263 000026 235007 lda 22,dl " AorQr aa 001264 700013 755111 sta sb|11,x1 4a 001265 400024 272120 tsbbp lp|L87,* " InRegister aa 001266 000010 000002 zero 8,2 aa 001267 000000 116007 cmpq 0,dl aa 001270 000012 600004 tze L114 aa 001271 000115 236007 316 ldq 77,dl " Cmpa aa 001272 700012 756111 stq sb|10,x1 aa 001273 000026 236007 ldq 22,dl " AorQr aa 001274 700013 756111 stq sb|11,x1 aa 001275 001304 272004 tsbbp L5+2 " ApplyRL aa 001276 000010 000002 zero 8,2 aa 001277 600473 450100 317 stz sp|315 " IndicatorsSetBy aa 001300 000001 336007 318 lcq 1,dl " true aa 001301 000123 710004 tra L107 L114: aa 001302 000115 235007 320 lda 77,dl " Cmpa aa 001303 700012 755111 sta sb|10,x1 aa 001304 000026 235007 lda 22,dl " AorQr aa 001305 700013 755111 sta sb|11,x1 aa 001306 777517 272004 tsbbp L6+2 " ApplyLR aa 001307 000010 000002 zero 8,2 aa 001310 600473 450100 321 stz sp|315 " IndicatorsSetBy aa 001311 000000 236007 322 ldq 0,dl " false aa 001312 000112 710004 324 tra L107 L115: aa 001313 600521 235100 325 lda sp|337 " Rrand aa 001314 700012 755111 sta sb|10,x1 aa 001315 000023 235007 lda 19,dl " EAQr aa 001316 700013 755111 sta sb|11,x1 4a 001317 400024 272120 tsbbp lp|L87,* " InRegister aa 001320 000010 000002 zero 8,2 aa 001321 000000 116007 cmpq 0,dl aa 001322 000012 600004 tze L116 aa 001323 000515 236007 326 ldq 333,dl " Fcmp aa 001324 700012 756111 stq sb|10,x1 aa 001325 000023 236007 ldq 19,dl " EAQr aa 001326 700013 756111 stq sb|11,x1 aa 001327 001252 272004 tsbbp L5+2 " ApplyRL aa 001330 000010 000002 zero 8,2 aa 001331 600473 450100 327 stz sp|315 " IndicatorsSetBy aa 001332 000001 336007 328 lcq 1,dl " true aa 001333 000071 710004 tra L107 L116: aa 001334 000515 235007 330 lda 333,dl " Fcmp aa 001335 700012 755111 sta sb|10,x1 aa 001336 000023 235007 lda 19,dl " EAQr aa 001337 700013 755111 sta sb|11,x1 aa 001340 777465 272004 tsbbp L6+2 " ApplyLR aa 001341 000010 000002 zero 8,2 aa 001342 600473 450100 331 stz sp|315 " IndicatorsSetBy aa 001343 000000 236007 332 ldq 0,dl " false aa 001344 000060 710004 334 tra L107 L117: aa 001345 000143 235007 lda 99,dl " UnexpectedCase aa 001346 700012 755111 sta sb|10,x1 aa 001347 700002 235111 lda sb|2,x1 " Op aa 001350 700013 755111 sta sb|11,x1 aa 001351 000246 350004 eapap L118 " "DiadicJumpcond" aa 001352 700014 540111 sprpap sb|12,x1 4a 001353 400042 272120 tsbbp lp|L50,* " CGreport aa 001354 000010 000003 zero 8,3 aa 001355 000236 710004 335 tra L106 L109: " Begin switchon aa 001356 700002 235111 lda sb|2,x1 " Op aa 001357 000126 115007 cmpa 86,dl aa 001360 000005 604004 tmi L119 aa 001361 777732 600004 tze L115 aa 001362 000127 115007 cmpa 87,dl aa 001363 777646 600004 tze L110 aa 001364 777761 710004 tra L117 L119: aa 001365 000046 115007 cmpa 38,dl aa 001366 000031 604004 tmi L120 aa 001367 777724 600004 tze L115 aa 001370 000077 115007 cmpa 63,dl aa 001371 000005 604004 tmi L121 aa 001372 777721 600004 tze L115 aa 001373 000100 115007 cmpa 64,dl aa 001374 777635 600004 tze L110 aa 001375 777750 710004 tra L117 L121: aa 001376 000043 773000 lrl 35 aa 001377 000006 507007 dvf 6,dl " hash table size 0a 001400 001411 115006 cmpa L122,ql aa 001401 777744 601004 tnz L117 0a 001402 001403 710006 tra L123,ql L123: aa 001403 777626 710004 tra L110 aa 001404 777741 710004 tra L117 aa 001405 777706 710004 tra L115 aa 001406 777623 710004 tra L110 aa 001407 777622 710004 tra L110 aa 001410 777703 710004 tra L115 L122: aa 001411 000000 000011 zero 0,9 aa 001412 000000 000000 zero 0 aa 001413 000000 000007 zero 0,7 aa 001414 000000 000007 zero 0,7 aa 001415 000000 000006 zero 0,6 aa 001416 000000 000010 zero 0,8 L120: aa 001417 000032 115007 cmpa 26,dl aa 001420 777673 600004 tze L115 aa 001421 000033 115007 cmpa 27,dl aa 001422 777607 600004 tze L110 aa 001423 777722 710004 tra L117 L108: L107: aa 001424 700005 756111 stq sb|5,x1 aa 001425 700005 236111 ldq sb|5,x1 aa 001426 700004 756111 stq sb|4,x1 " Reversed aa 001427 000046 710004 339 tra L126 L127: aa 001430 000600 236007 ldq 384,dl " Tze aa 001431 000105 710004 340 tra L124 L128: aa 001432 000601 236007 ldq 385,dl " Tnz aa 001433 000103 710004 341 tra L124 L129: aa 001434 700004 234111 szn sb|4,x1 " Reversed aa 001435 000003 600004 tze L130 aa 001436 001605 235007 lda 901,dl " Tpnz aa 001437 000002 710004 tra L131 L130: aa 001440 000604 235007 lda 388,dl " Tmi L131: aa 001441 700007 755111 sta sb|7,x1 aa 001442 700007 235111 lda sb|7,x1 aa 001443 000044 777000 llr 36 " exchange A and Q aa 001444 000072 710004 342 tra L124 L132: aa 001445 700004 234111 szn sb|4,x1 " Reversed aa 001446 000003 600004 tze L133 aa 001447 000604 236007 ldq 388,dl " Tmi aa 001450 000002 710004 tra L134 L133: aa 001451 001605 236007 ldq 901,dl " Tpnz L134: aa 001452 700007 756111 stq sb|7,x1 aa 001453 700007 236111 ldq sb|7,x1 aa 001454 000062 710004 343 tra L124 L135: aa 001455 700004 234111 szn sb|4,x1 " Reversed aa 001456 000003 600004 tze L136 aa 001457 000605 236007 ldq 389,dl " Tpl aa 001460 000002 710004 tra L137 L136: aa 001461 001604 236007 ldq 900,dl " Tmoz L137: aa 001462 700007 756111 stq sb|7,x1 aa 001463 700007 236111 ldq sb|7,x1 aa 001464 000052 710004 344 tra L124 L138: aa 001465 700004 234111 szn sb|4,x1 " Reversed aa 001466 000003 600004 tze L139 aa 001467 001604 236007 ldq 900,dl " Tmoz aa 001470 000002 710004 tra L140 L139: aa 001471 000605 236007 ldq 389,dl " Tpl L140: aa 001472 700007 756111 stq sb|7,x1 aa 001473 700007 236111 ldq sb|7,x1 aa 001474 000042 710004 tra L124 L126: " Begin switchon aa 001475 700002 235111 lda sb|2,x1 " Op aa 001476 000043 773000 lrl 35 aa 001477 000035 507007 dvf 29,dl " hash table size 0a 001500 001501 710006 tra L141,ql L141: aa 001501 777731 710004 tra L128 aa 001502 000034 710004 tra L125 aa 001503 000033 710004 tra L125 aa 001504 000032 710004 tra L125 aa 001505 000031 710004 tra L125 aa 001506 777726 710004 tra L129 aa 001507 777725 710004 tra L129 aa 001510 000026 710004 tra L125 aa 001511 000025 710004 tra L125 aa 001512 777753 710004 tra L138 aa 001513 000023 710004 tra L125 aa 001514 777751 710004 tra L138 aa 001515 000021 710004 tra L125 aa 001516 000020 710004 tra L125 aa 001517 000017 710004 tra L125 aa 001520 777725 710004 tra L132 aa 001521 777724 710004 tra L132 aa 001522 000014 710004 tra L125 aa 001523 000013 710004 tra L125 aa 001524 000012 710004 tra L125 aa 001525 000011 710004 tra L125 aa 001526 000010 710004 tra L125 aa 001527 000007 710004 tra L125 aa 001530 000006 710004 tra L125 aa 001531 777724 710004 tra L135 aa 001532 777723 710004 tra L135 aa 001533 777675 710004 tra L127 aa 001534 777674 710004 tra L127 aa 001535 777675 710004 tra L128 L125: L124: aa 001536 700006 756111 stq sb|6,x1 aa 001537 700006 236111 ldq sb|6,x1 aa 001540 700005 756111 stq sb|5,x1 " t aa 001541 600153 236100 347 ldq sp|107 " Machine aa 001542 001205 116007 cmpq 645,dl " 645 aa 001543 000032 601004 tnz L142 aa 001544 700005 235111 lda sb|5,x1 " t aa 001545 001604 115007 cmpa 900,dl " Tmoz aa 001546 000012 601004 tnz L143 aa 001547 000604 236007 348 ldq 388,dl " Tmi aa 001550 700012 756111 stq sb|10,x1 aa 001551 700003 236111 ldq sb|3,x1 " L aa 001552 700013 756111 stq sb|11,x1 4a 001553 400016 272120 tsbbp lp|L145,* " Outop2 aa 001554 000010 000002 zero 8,2 aa 001555 000600 236007 349 ldq 384,dl " Tze aa 001556 700005 756111 stq sb|5,x1 " t aa 001557 000016 710004 tra L144 L143: aa 001560 700005 236111 351 ldq sb|5,x1 " t aa 001561 001605 116007 cmpq 901,dl " Tpnz aa 001562 000013 601004 tnz L146 aa 001563 000600 235007 352 lda 384,dl " Tze aa 001564 700012 755111 sta sb|10,x1 aa 001565 000002 235007 lda 2,dl " 2 aa 001566 700013 755111 sta sb|11,x1 aa 001567 000004 235007 lda 4,dl " Ic aa 001570 700014 755111 sta sb|12,x1 4a 001571 400044 272120 tsbbp lp|L47,* " Outop3 aa 001572 000010 000003 zero 8,3 aa 001573 000605 235007 353 lda 389,dl " Tpl aa 001574 700005 755111 sta sb|5,x1 " t L146: L144: L142: aa 001575 700005 235111 355 lda sb|5,x1 " t aa 001576 700012 755111 sta sb|10,x1 aa 001577 700003 235111 lda sb|3,x1 " L aa 001600 700013 755111 sta sb|11,x1 4a 001601 400016 272120 tsbbp lp|L145,* " Outop2 aa 001602 000010 000002 zero 8,2 aa 001603 600510 235100 356 lda sp|328 " Lrand aa 001604 700012 755111 sta sb|10,x1 4a 001605 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 001606 000010 000001 zero 8,1 aa 001607 600521 235100 357 lda sp|337 " Rrand aa 001610 700012 755111 sta sb|10,x1 4a 001611 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 001612 000010 000001 zero 8,1 L106: aa 001613 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001614 200000 121100 sblx1 bp|0 aa 001615 700001 764111 lprplp sb|1,x1 aa 001616 200001 710100 tra bp|1 " end of return sequence " Literal pool L118: aa 001617 000016 104151 zero 14,34921 " "DiadicJumpcond" aa 001620 141144 151143 zero 49764,53859 aa 001621 112165 155160 zero 38005,55920 aa 001622 143157 156144 zero 50799,56420 " Begin text of MonadicJumpcond aa 001623 000017 115157 zero 15,39535 " MonadicJumpcond aa 001624 156141 144151 zero 56417,51305 aa 001625 143112 165155 zero 50762,60013 aa 001626 160143 157156 zero 57443,56942 aa 001627 144000 000000 zero 51200 L14: aa 001630 000000 213000 360 epaq 0 " set lp to linkage section aa 001631 700026 764161 lprplp sb|22,*au aa 001632 200000 021100 adlx1 bp|0 " BCPL save aa 001633 700000 542111 sprpbp sb|0,x1 aa 001634 700001 544111 sprplp sb|1,x1 aa 001635 700423 620111 eax0 sb|275,x1 aa 001636 777760 360003 anx0 -16,du aa 001637 700025 740100 stx0 sb|21 " end of save sequence aa 001640 600510 235100 361 lda sp|328 " Lrand aa 001641 700010 755111 sta sb|8,x1 4a 001642 400020 272120 tsbbp lp|L112,* " CompareToZero aa 001643 000006 000001 zero 6,1 aa 001644 700002 235111 362 lda sb|2,x1 " Op aa 001645 000206 115007 cmpa 134,dl " TRUE_S aa 001646 000003 601004 tnz L150 aa 001647 000601 236007 ldq 385,dl " Tnz aa 001650 000002 710004 tra L151 L150: aa 001651 000600 236007 ldq 384,dl " Tze L151: aa 001652 700005 756111 stq sb|5,x1 aa 001653 700005 236111 ldq sb|5,x1 aa 001654 700004 756111 stq sb|4,x1 aa 001655 700004 236111 ldq sb|4,x1 aa 001656 700010 756111 stq sb|8,x1 aa 001657 700003 236111 ldq sb|3,x1 " L aa 001660 700011 756111 stq sb|9,x1 4a 001661 400016 272120 tsbbp lp|L145,* " Outop2 aa 001662 000006 000002 zero 6,2 aa 001663 600510 236100 363 ldq sp|328 " Lrand aa 001664 700010 756111 stq sb|8,x1 4a 001665 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 001666 000006 000001 zero 6,1 L149: aa 001667 700000 762111 lprpbp sb|0,x1 " bcpl return aa 001670 200000 121100 sblx1 bp|0 aa 001671 700001 764111 lprplp sb|1,x1 aa 001672 200001 710100 tra bp|1 " end of return sequence " Begin text of IsSameLoc aa 001673 000011 111163 zero 9,37491 " IsSameLoc aa 001674 123141 155145 zero 42593,55909 aa 001675 114157 143000 zero 39023,50688 L12: aa 001676 000000 213000 287 epaq 0 " set lp to linkage section aa 001677 700026 764161 lprplp sb|22,*au aa 001700 200000 021100 adlx1 bp|0 " BCPL save aa 001701 700000 542111 sprpbp sb|0,x1 aa 001702 700001 544111 sprplp sb|1,x1 aa 001703 700422 620111 eax0 sb|274,x1 aa 001704 777760 360003 anx0 -16,du aa 001705 700025 740100 stx0 sb|21 " end of save sequence aa 001706 000161 710004 289 tra L156 L157: aa 001707 700003 760111 290 lprpap sb|3,x1 " u aa 001710 000000 236100 ldq ap|0 aa 001711 000052 116007 cmpq 42,dl " GLOBAL_S aa 001712 000010 601004 tnz L158 aa 001713 700002 762111 lprpbp sb|2,x1 " t aa 001714 200001 235100 lda bp|1 aa 001715 700003 761111 lprpab sb|3,x1 " u aa 001716 100001 115100 cmpa ab|1 aa 001717 000003 601004 tnz L158 aa 001720 000001 336007 lcq 1,dl " true aa 001721 000002 710004 tra L159 L158: aa 001722 000000 236007 ldq 0,dl " false L159: aa 001723 700006 756111 stq sb|6,x1 aa 001724 700006 236111 ldq sb|6,x1 aa 001725 000167 710004 291 tra L154 L160: aa 001726 700003 763111 292 lprpbb sb|3,x1 " u aa 001727 300000 236100 ldq bb|0 aa 001730 000072 116007 cmpq 58,dl " LOCAL_S aa 001731 000010 601004 tnz L161 aa 001732 700002 765111 lprplb sb|2,x1 " t aa 001733 500001 235100 lda lb|1 aa 001734 700003 760111 lprpap sb|3,x1 " u aa 001735 000001 115100 cmpa ap|1 aa 001736 000003 601004 tnz L161 aa 001737 000001 336007 lcq 1,dl " true aa 001740 000002 710004 tra L162 L161: aa 001741 000000 236007 ldq 0,dl " false L162: aa 001742 700006 756111 stq sb|6,x1 aa 001743 700006 236111 ldq sb|6,x1 aa 001744 000150 710004 293 tra L154 L163: aa 001745 700003 762111 294 lprpbp sb|3,x1 " u aa 001746 200000 236100 ldq bp|0 aa 001747 000174 116007 cmpq 124,dl " STATIC_S aa 001750 000010 601004 tnz L164 aa 001751 700002 761111 lprpab sb|2,x1 " t aa 001752 100001 235100 lda ab|1 aa 001753 700003 763111 lprpbb sb|3,x1 " u aa 001754 300001 115100 cmpa bb|1 aa 001755 000003 601004 tnz L164 aa 001756 000001 336007 lcq 1,dl " true aa 001757 000002 710004 tra L165 L164: aa 001760 000000 236007 ldq 0,dl " false L165: aa 001761 700006 756111 stq sb|6,x1 aa 001762 700006 236111 ldq sb|6,x1 aa 001763 000131 710004 295 tra L154 L166: aa 001764 700003 765111 296 lprplb sb|3,x1 " u aa 001765 500000 236100 ldq lb|0 aa 001766 000203 116007 cmpq 131,dl " TEMP_S aa 001767 000003 600004 tze L167 aa 001770 000000 236007 ldq 0,dl " false aa 001771 000123 710004 tra L154 L167: aa 001772 700003 760111 297 lprpap sb|3,x1 " u aa 001773 000001 235100 lda ap|1 aa 001774 700014 755111 sta sb|12,x1 4a 001775 400014 272120 tsbbp lp|L168,* " LookupTemp aa 001776 000012 000001 zero 10,1 aa 001777 700006 756111 stq sb|6,x1 " h aa 002000 700002 762111 lprpbp sb|2,x1 " t aa 002001 200001 236100 ldq bp|1 aa 002002 700014 756111 stq sb|12,x1 4a 002003 400014 272120 tsbbp lp|L168,* " LookupTemp aa 002004 000012 000001 zero 10,1 aa 002005 700005 756111 stq sb|5,x1 " g aa 002006 700005 234111 298 szn sb|5,x1 " g aa 002007 000003 600004 tze L170 aa 002010 700006 234111 szn sb|6,x1 " h aa 002011 000003 601004 tnz L169 L170: aa 002012 000000 236007 ldq 0,dl " false aa 002013 000101 710004 tra L154 L169: aa 002014 700005 761111 299 lprpab sb|5,x1 " g aa 002015 100001 235100 lda ab|1 aa 002016 000103 115007 cmpa 67,dl " LVECAP_S aa 002017 000005 601004 tnz L172 aa 002020 700006 763111 lprpbb sb|6,x1 " h aa 002021 300001 236100 ldq bb|1 aa 002022 000216 116007 cmpq 142,dl " VECAP_S aa 002023 000003 600004 tze L171 L172: aa 002024 000000 236007 ldq 0,dl " false aa 002025 000067 710004 tra L154 L171: aa 002026 700005 765111 300 lprplb sb|5,x1 " g aa 002027 500002 235100 lda lb|2 aa 002030 700006 760111 lprpap sb|6,x1 " h aa 002031 000002 115100 cmpa ap|2 aa 002032 000027 601004 tnz L173 aa 002033 700005 762111 lprpbp sb|5,x1 " g aa 002034 200003 236100 ldq bp|3 aa 002035 700006 761111 lprpab sb|6,x1 " h aa 002036 100003 116100 cmpq ab|3 aa 002037 000022 601004 tnz L173 aa 002040 700005 763111 lprpbb sb|5,x1 " g aa 002041 300005 235100 lda bb|5 aa 002042 700006 765111 lprplb sb|6,x1 " h aa 002043 500005 115100 cmpa lb|5 aa 002044 000015 601004 tnz L173 aa 002045 700005 760111 lprpap sb|5,x1 " g aa 002046 000006 236100 ldq ap|6 aa 002047 700006 762111 lprpbp sb|6,x1 " h aa 002050 200006 116100 cmpq bp|6 aa 002051 000010 601004 tnz L173 aa 002052 700005 761111 lprpab sb|5,x1 " g aa 002053 100010 235100 lda ab|8 aa 002054 700006 763111 lprpbb sb|6,x1 " h aa 002055 300010 115100 cmpa bb|8 aa 002056 000003 601004 tnz L173 aa 002057 000001 336007 lcq 1,dl " true aa 002060 000002 710004 tra L174 L173: aa 002061 000000 236007 ldq 0,dl " false L174: aa 002062 700010 756111 stq sb|8,x1 aa 002063 700010 236111 ldq sb|8,x1 aa 002064 000030 710004 301 tra L154 L175: aa 002065 000000 236007 ldq 0,dl " false aa 002066 000026 710004 tra L154 L156: " Begin switchon aa 002067 700002 765111 lprplb sb|2,x1 " t aa 002070 500000 235100 lda lb|0 aa 002071 000043 773000 lrl 35 aa 002072 000007 507007 dvf 7,dl " hash table size 0a 002073 002105 115006 cmpa L176,ql aa 002074 777771 601004 tnz L175 0a 002075 002076 710006 tra L177,ql L177: aa 002076 777767 710004 tra L175 aa 002077 777610 710004 tra L157 aa 002100 777626 710004 tra L160 aa 002101 777644 710004 tra L163 aa 002102 777763 710004 tra L175 aa 002103 777661 710004 tra L166 aa 002104 777761 710004 tra L175 L176: aa 002105 000000 000000 zero 0 aa 002106 000000 000012 zero 0,10 aa 002107 000000 000012 zero 0,10 aa 002110 000000 000012 zero 0,10 aa 002111 000000 000000 zero 0 aa 002112 000000 000022 zero 0,18 aa 002113 000000 000000 zero 0 L155: L154: aa 002114 700005 756111 stq sb|5,x1 aa 002115 700005 236111 ldq sb|5,x1 aa 002116 700000 762111 lprpbp sb|0,x1 " bcpl return aa 002117 200000 121100 sblx1 bp|0 aa 002120 700001 764111 lprplp sb|1,x1 aa 002121 200001 710100 tra bp|1 " end of return sequence " Begin text of TryDiadicRAR aa 002122 000014 124162 zero 12,43122 " TryDiadicRAR aa 002123 171104 151141 zero 62020,53857 aa 002124 144151 143122 zero 51305,50770 aa 002125 101122 000000 zero 33362 aa 002126 700004 756111 264 stq sb|4,x1 " temporary L11: aa 002127 000000 213000 epaq 0 " set lp to linkage section aa 002130 700026 764161 lprplp sb|22,*au aa 002131 200000 021100 adlx1 bp|0 " BCPL save aa 002132 700000 542111 sprpbp sb|0,x1 aa 002133 700001 544111 sprplp sb|1,x1 aa 002134 700423 620111 eax0 sb|275,x1 aa 002135 777760 360003 anx0 -16,du aa 002136 700025 740100 stx0 sb|21 " end of save sequence aa 002137 600521 236100 265 ldq sp|337 " Rrand aa 002140 700005 756111 stq sb|5,x1 " X aa 002141 700002 236111 266 ldq sb|2,x1 " Result aa 002142 700014 756111 stq sb|12,x1 aa 002143 600510 236100 ldq sp|328 " Lrand aa 002144 700015 756111 stq sb|13,x1 aa 002145 777533 272004 tsbbp L12+2 " IsSameLoc aa 002146 000012 000002 zero 10,2 aa 002147 000000 116007 cmpq 0,dl aa 002150 000015 601004 tnz L181 aa 002151 600510 236100 267 ldq sp|328 " Lrand aa 002152 700005 756111 stq sb|5,x1 " X aa 002153 700002 236111 268 ldq sb|2,x1 " Result aa 002154 700014 756111 stq sb|12,x1 aa 002155 600521 236100 ldq sp|337 " Rrand aa 002156 700015 756111 stq sb|13,x1 aa 002157 777521 272004 tsbbp L12+2 " IsSameLoc aa 002160 000012 000002 zero 10,2 aa 002161 000000 116007 cmpq 0,dl aa 002162 000003 601004 tnz L182 aa 002163 000000 236007 ldq 0,dl " false aa 002164 000110 710004 tra L180 L182: L181: aa 002165 700003 235111 270 lda sb|3,x1 " Op aa 002166 000055 115007 cmpa 45,dl " Asa aa 002167 000034 601004 tnz L183 aa 002170 700005 236111 ldq sb|5,x1 " X aa 002171 700014 756111 stq sb|12,x1 4a 002172 400012 272120 tsbbp lp|L184,* " IsNumber aa 002173 000012 000001 zero 10,1 aa 002174 000000 116007 cmpq 0,dl aa 002175 000026 600004 tze L183 aa 002176 700005 760111 lprpap sb|5,x1 " X aa 002177 000000 236100 ldq ap|0 aa 002200 700014 756111 stq sb|12,x1 aa 002201 700005 762111 lprpbp sb|5,x1 " X aa 002202 200001 236100 ldq bp|1 aa 002203 700015 756111 stq sb|13,x1 4a 002204 400010 272120 tsbbp lp|L186,* " EvalNumber aa 002205 000012 000002 zero 10,2 aa 002206 000001 116007 cmpq 1,dl " 1 aa 002207 000014 601004 tnz L185 aa 002210 700002 236111 271 ldq sb|2,x1 " Result aa 002211 700014 756111 stq sb|12,x1 4a 002212 400062 272120 tsbbp lp|L34,* " SetupAddr aa 002213 000012 000001 zero 10,1 aa 002214 000054 236007 272 ldq 44,dl " Aos aa 002215 700014 756111 stq sb|12,x1 4a 002216 400066 272120 tsbbp lp|L26,* " Outop aa 002217 000012 000001 zero 10,1 aa 002220 600473 450100 273 stz sp|315 " IndicatorsSetBy aa 002221 000001 336007 274 lcq 1,dl " true aa 002222 000052 710004 tra L180 L185: L183: aa 002223 700003 235111 277 lda sb|3,x1 " Op aa 002224 000155 115007 cmpa 109,dl " Ssa aa 002225 000014 601004 tnz L187 aa 002226 700005 236111 ldq sb|5,x1 " X aa 002227 600521 116100 cmpq sp|337 " Rrand aa 002230 000011 601004 tnz L187 aa 002231 700005 235111 278 lda sb|5,x1 " X aa 002232 700014 755111 sta sb|12,x1 aa 002233 000257 272004 tsbbp L8+2 " LoadNegative aa 002234 000012 000001 zero 10,1 aa 002235 700006 756111 stq sb|6,x1 " r aa 002236 000055 236007 ldq 45,dl " Asa aa 002237 700003 756111 stq sb|3,x1 " Op aa 002240 000010 710004 tra L188 L187: aa 002241 700005 236111 279 ldq sb|5,x1 " X aa 002242 700014 756111 stq sb|12,x1 aa 002243 000026 236007 ldq 22,dl " AorQr aa 002244 700015 756111 stq sb|13,x1 4a 002245 400056 272120 tsbbp lp|L36,* " LoadRegister aa 002246 000012 000002 zero 10,2 aa 002247 700006 756111 stq sb|6,x1 " r L188: aa 002250 700002 236111 280 ldq sb|2,x1 " Result aa 002251 700014 756111 stq sb|12,x1 4a 002252 400062 272120 tsbbp lp|L34,* " SetupAddr aa 002253 000012 000001 zero 10,1 aa 002254 700003 236111 281 ldq sb|3,x1 " Op aa 002255 700014 756111 stq sb|12,x1 aa 002256 700006 236111 ldq sb|6,x1 " r aa 002257 700015 756111 stq sb|13,x1 4a 002260 400070 272120 tsbbp lp|L25,* " FormOpcode aa 002261 000012 000002 zero 10,2 aa 002262 700007 756111 stq sb|7,x1 aa 002263 700007 236111 ldq sb|7,x1 aa 002264 700014 756111 stq sb|12,x1 4a 002265 400066 272120 tsbbp lp|L26,* " Outop aa 002266 000012 000001 zero 10,1 aa 002267 600473 450100 282 stz sp|315 " IndicatorsSetBy aa 002270 700006 723111 283 lxl3 sb|6,x1 " r aa 002271 600524 761100 lprpab sp|340 " RegisterUsage aa 002272 100000 450113 stz ab|0,x3 aa 002273 000001 336007 284 lcq 1,dl " true L180: aa 002274 700005 756111 stq sb|5,x1 aa 002275 700005 236111 ldq sb|5,x1 aa 002276 700000 762111 lprpbp sb|0,x1 " bcpl return aa 002277 200000 121100 sblx1 bp|0 aa 002300 700001 764111 lprplp sb|1,x1 aa 002301 200001 710100 tra bp|1 " end of return sequence " Begin text of TryMonadicRAR aa 002302 000015 124162 zero 13,43122 " TryMonadicRAR aa 002303 171115 157156 zero 62029,56942 aa 002304 141144 151143 zero 49764,53859 aa 002305 122101 122000 zero 42049,41984 aa 002306 700004 756111 255 stq sb|4,x1 " temporary L10: aa 002307 000000 213000 epaq 0 " set lp to linkage section aa 002310 700026 764161 lprplp sb|22,*au aa 002311 200000 021100 adlx1 bp|0 " BCPL save aa 002312 700000 542111 sprpbp sb|0,x1 aa 002313 700001 544111 sprplp sb|1,x1 aa 002314 700424 620111 eax0 sb|276,x1 aa 002315 777760 360003 anx0 -16,du aa 002316 700025 740100 stx0 sb|21 " end of save sequence aa 002317 700002 236111 256 ldq sb|2,x1 " Result aa 002320 700014 756111 stq sb|12,x1 aa 002321 600510 236100 ldq sp|328 " Lrand aa 002322 700015 756111 stq sb|13,x1 aa 002323 777355 272004 tsbbp L12+2 " IsSameLoc aa 002324 000012 000002 zero 10,2 aa 002325 000000 116007 cmpq 0,dl aa 002326 000003 601004 tnz L192 aa 002327 000000 236007 ldq 0,dl " false aa 002330 000035 710004 tra L191 L192: aa 002331 700004 235111 257 lda sb|4,x1 " Const aa 002332 700014 755111 sta sb|12,x1 aa 002333 000026 235007 lda 22,dl " AorQr aa 002334 700015 755111 sta sb|13,x1 aa 002335 700016 450111 stz sb|14,x1 4a 002336 400060 272120 tsbbp lp|L35,* " LoadNumber aa 002337 000012 000003 zero 10,3 aa 002340 700006 756111 stq sb|6,x1 " r aa 002341 700002 236111 258 ldq sb|2,x1 " Result aa 002342 700014 756111 stq sb|12,x1 4a 002343 400062 272120 tsbbp lp|L34,* " SetupAddr aa 002344 000012 000001 zero 10,1 aa 002345 700003 236111 259 ldq sb|3,x1 " Op aa 002346 700014 756111 stq sb|12,x1 aa 002347 700006 236111 ldq sb|6,x1 " r aa 002350 700015 756111 stq sb|13,x1 4a 002351 400070 272120 tsbbp lp|L25,* " FormOpcode aa 002352 000012 000002 zero 10,2 aa 002353 700007 756111 stq sb|7,x1 aa 002354 700007 236111 ldq sb|7,x1 aa 002355 700014 756111 stq sb|12,x1 4a 002356 400066 272120 tsbbp lp|L26,* " Outop aa 002357 000012 000001 zero 10,1 aa 002360 600473 450100 260 stz sp|315 " IndicatorsSetBy aa 002361 700006 724111 261 lxl4 sb|6,x1 " r aa 002362 600524 763100 lprpbb sp|340 " RegisterUsage aa 002363 300000 450114 stz bb|0,x4 aa 002364 000001 336007 262 lcq 1,dl " true L191: aa 002365 700006 756111 stq sb|6,x1 aa 002366 700006 236111 ldq sb|6,x1 aa 002367 700000 762111 lprpbp sb|0,x1 " bcpl return aa 002370 200000 121100 sblx1 bp|0 aa 002371 700001 764111 lprplp sb|1,x1 aa 002372 200001 710100 tra bp|1 " end of return sequence " Begin text of TryShift aa 002373 000010 124162 zero 8,43122 " TryShift aa 002374 171123 150151 zero 62035,53353 aa 002375 146164 000000 zero 52340 aa 002376 700005 756111 242 stq sb|5,x1 " temporary L9: aa 002377 000000 213000 epaq 0 " set lp to linkage section aa 002400 700026 764161 lprplp sb|22,*au aa 002401 200000 021100 adlx1 bp|0 " BCPL save aa 002402 700000 542111 sprpbp sb|0,x1 aa 002403 700001 544111 sprplp sb|1,x1 aa 002404 700424 620111 eax0 sb|276,x1 aa 002405 777760 360003 anx0 -16,du aa 002406 700025 740100 stx0 sb|21 " end of save sequence aa 002407 700003 236111 243 ldq sb|3,x1 " Const aa 002410 700014 756111 stq sb|12,x1 4a 002411 400012 272120 tsbbp lp|L184,* " IsNumber aa 002412 000012 000001 zero 10,1 aa 002413 000000 116007 cmpq 0,dl aa 002414 000003 601004 tnz L196 aa 002415 000000 236007 ldq 0,dl " 0 aa 002416 000057 710004 tra L195 L196: aa 002417 700003 765111 244 lprplb sb|3,x1 " Const aa 002420 500000 235100 lda lb|0 aa 002421 700014 755111 sta sb|12,x1 aa 002422 700003 760111 lprpap sb|3,x1 " Const aa 002423 000001 235100 lda ap|1 aa 002424 700015 755111 sta sb|13,x1 4a 002425 400010 272120 tsbbp lp|L186,* " EvalNumber aa 002426 000012 000002 zero 10,2 aa 002427 700005 756111 stq sb|5,x1 " n aa 002430 700006 450111 stz sb|6,x1 " i aa 002431 000007 710004 245 tra L197 L198: aa 002432 700006 236111 246 ldq sb|6,x1 " i aa 002433 000044 116007 cmpq 36,dl " 36 aa 002434 000003 604404 tmoz L199 aa 002435 000000 236007 ldq 0,dl " 0 aa 002436 000037 710004 tra L195 L199: aa 002437 700006 054111 247 aos sb|6,x1 " i L197: aa 002440 000001 235007 lda 1,dl " 1 aa 002441 700006 725111 lxl5 sb|6,x1 " i aa 002442 000000 735015 als 0,x5 aa 002443 700005 115111 cmpa sb|5,x1 " n aa 002444 777766 601004 tnz L198 aa 002445 700002 235111 249 lda sb|2,x1 " Rand aa 002446 700014 755111 sta sb|12,x1 aa 002447 000026 235007 lda 22,dl " AorQr aa 002450 700015 755111 sta sb|13,x1 4a 002451 400056 272120 tsbbp lp|L36,* " LoadRegister aa 002452 000012 000002 zero 10,2 aa 002453 700007 756111 stq sb|7,x1 " r aa 002454 000735 236007 250 ldq 477,dl " Als aa 002455 700014 756111 stq sb|12,x1 aa 002456 700007 236111 ldq sb|7,x1 " r aa 002457 700015 756111 stq sb|13,x1 4a 002460 400070 272120 tsbbp lp|L25,* " FormOpcode aa 002461 000012 000002 zero 10,2 aa 002462 700010 756111 stq sb|8,x1 aa 002463 700010 236111 ldq sb|8,x1 aa 002464 700014 756111 stq sb|12,x1 aa 002465 700006 236111 ldq sb|6,x1 " i aa 002466 700015 756111 stq sb|13,x1 aa 002467 700016 450111 stz sb|14,x1 4a 002470 400044 272120 tsbbp lp|L47,* " Outop3 aa 002471 000012 000003 zero 10,3 aa 002472 700007 236111 251 ldq sb|7,x1 " r aa 002473 600473 756100 stq sp|315 " IndicatorsSetBy aa 002474 700007 236111 252 ldq sb|7,x1 " r L195: aa 002475 700005 756111 stq sb|5,x1 aa 002476 700005 236111 ldq sb|5,x1 aa 002477 700000 762111 lprpbp sb|0,x1 " bcpl return aa 002500 200000 121100 sblx1 bp|0 aa 002501 700001 764111 lprplp sb|1,x1 aa 002502 200001 710100 tra bp|1 " end of return sequence " Begin text of LoadNegative aa 002503 000014 114157 zero 12,39023 " LoadNegative aa 002504 141144 116145 zero 49764,40037 aa 002505 147141 164151 zero 52833,59497 aa 002506 166145 000000 zero 60517 aa 002507 700004 756111 232 stq sb|4,x1 " temporary L8: aa 002510 000000 213000 epaq 0 " set lp to linkage section aa 002511 700026 764161 lprplp sb|22,*au aa 002512 200000 021100 adlx1 bp|0 " BCPL save aa 002513 700000 542111 sprpbp sb|0,x1 aa 002514 700001 544111 sprplp sb|1,x1 aa 002515 700423 620111 eax0 sb|275,x1 aa 002516 777760 360003 anx0 -16,du aa 002517 700025 740100 stx0 sb|21 " end of save sequence aa 002520 700002 236111 233 ldq sb|2,x1 " t aa 002521 700012 756111 stq sb|10,x1 aa 002522 000026 236007 ldq 22,dl " AorQr aa 002523 700013 756111 stq sb|11,x1 4a 002524 400030 272120 tsbbp lp|L73,* " FindInRegister aa 002525 000010 000002 zero 8,2 aa 002526 700004 756111 stq sb|4,x1 " r aa 002527 700004 234111 234 szn sb|4,x1 " r aa 002530 000006 600004 tze L203 aa 002531 700004 236111 ldq sb|4,x1 " r aa 002532 700012 756111 stq sb|10,x1 aa 002533 776346 272004 tsbbp L7+2 " ApplyNegate aa 002534 000010 000001 zero 8,1 aa 002535 000030 710004 tra L202 L203: aa 002536 000026 236007 235 ldq 22,dl " AorQr aa 002537 700012 756111 stq sb|10,x1 4a 002540 400074 272120 tsbbp lp|L23,* " GetRegister aa 002541 000010 000001 zero 8,1 aa 002542 700004 756111 stq sb|4,x1 " r aa 002543 700002 236111 236 ldq sb|2,x1 " t aa 002544 700012 756111 stq sb|10,x1 4a 002545 400026 272120 tsbbp lp|L77,* " Makeaddressable aa 002546 000010 000001 zero 8,1 aa 002547 000335 236007 237 ldq 221,dl " Lca aa 002550 700012 756111 stq sb|10,x1 aa 002551 700004 236111 ldq sb|4,x1 " r aa 002552 700013 756111 stq sb|11,x1 4a 002553 400070 272120 tsbbp lp|L25,* " FormOpcode aa 002554 000010 000002 zero 8,2 aa 002555 700005 756111 stq sb|5,x1 aa 002556 700005 236111 ldq sb|5,x1 aa 002557 700012 756111 stq sb|10,x1 4a 002560 400066 272120 tsbbp lp|L26,* " Outop aa 002561 000010 000001 zero 8,1 aa 002562 700004 236111 238 ldq sb|4,x1 " r aa 002563 600473 756100 stq sp|315 " IndicatorsSetBy aa 002564 700004 236111 239 ldq sb|4,x1 " r L202: aa 002565 700004 756111 stq sb|4,x1 aa 002566 700004 236111 ldq sb|4,x1 aa 002567 700000 762111 lprpbp sb|0,x1 " bcpl return aa 002570 200000 121100 sblx1 bp|0 aa 002571 700001 764111 lprplp sb|1,x1 aa 002572 200001 710100 tra bp|1 " end of return sequence " Begin text of ApplyRL aa 002573 000007 101160 zero 7,33392 " ApplyRL aa 002574 160154 171122 zero 57452,62034 aa 002575 114000 000000 zero 38912 aa 002576 700003 756111 201 stq sb|3,x1 " temporary L5: aa 002577 000000 213000 epaq 0 " set lp to linkage section aa 002600 700026 764161 lprplp sb|22,*au aa 002601 200000 021100 adlx1 bp|0 " BCPL save aa 002602 700000 542111 sprpbp sb|0,x1 aa 002603 700001 544111 sprplp sb|1,x1 aa 002604 700423 620111 eax0 sb|275,x1 aa 002605 777760 360003 anx0 -16,du aa 002606 700025 740100 stx0 sb|21 " end of save sequence aa 002607 600510 236100 202 ldq sp|328 " Lrand aa 002610 700006 756111 stq sb|6,x1 " t aa 002611 600521 236100 ldq sp|337 " Rrand aa 002612 700005 756111 stq sb|5,x1 " u aa 002613 700006 236111 203 ldq sb|6,x1 " t aa 002614 600521 756100 stq sp|337 " Rrand aa 002615 700005 236111 ldq sb|5,x1 " u aa 002616 600510 756100 stq sp|328 " Lrand aa 002617 700002 236111 204 ldq sb|2,x1 " Inst aa 002620 700012 756111 stq sb|10,x1 aa 002621 700003 236111 ldq sb|3,x1 " Reg aa 002622 700013 756111 stq sb|11,x1 aa 002623 776202 272004 tsbbp L6+2 " ApplyLR aa 002624 000010 000002 zero 8,2 aa 002625 700007 756111 stq sb|7,x1 " r aa 002626 700005 236111 205 ldq sb|5,x1 " u aa 002627 600521 756100 stq sp|337 " Rrand aa 002630 700006 236111 ldq sb|6,x1 " t aa 002631 600510 756100 stq sp|328 " Lrand aa 002632 700007 236111 206 ldq sb|7,x1 " r L206: aa 002633 700005 756111 stq sb|5,x1 aa 002634 700005 236111 ldq sb|5,x1 aa 002635 700000 762111 lprpbp sb|0,x1 " bcpl return aa 002636 200000 121100 sblx1 bp|0 aa 002637 700001 764111 lprplp sb|1,x1 aa 002640 200001 710100 tra bp|1 " end of return sequence " Begin text of ApplyDiadicOperator aa 002641 000023 101160 zero 19,33392 " ApplyDiadicOperator aa 002642 160154 171104 zero 57452,62020 aa 002643 151141 144151 zero 53857,51305 aa 002644 143117 160145 zero 50767,57445 aa 002645 162141 164157 zero 58465,59503 aa 002646 162000 000000 zero 58368 aa 002647 700004 756111 15 stq sb|4,x1 " temporary L1: aa 002650 000000 213000 epaq 0 " set lp to linkage section aa 002651 700026 764161 lprplp sb|22,*au aa 002652 200000 021100 adlx1 bp|0 " BCPL save aa 002653 700000 542111 sprpbp sb|0,x1 aa 002654 700001 544111 sprplp sb|1,x1 aa 002655 700424 620111 eax0 sb|276,x1 aa 002656 777760 360003 anx0 -16,du aa 002657 700025 740100 stx0 sb|21 " end of save sequence aa 002660 000526 710004 17 tra L212 L213: aa 002661 600152 234100 18 szn sp|106 " Optimize aa 002662 000013 600004 tze L214 aa 002663 700003 236111 ldq sb|3,x1 " Result aa 002664 700012 756111 stq sb|10,x1 aa 002665 000055 236007 ldq 45,dl " Asa aa 002666 700013 756111 stq sb|11,x1 aa 002667 777242 272004 tsbbp L11+2 " TryDiadicRAR aa 002670 000010 000002 zero 8,2 aa 002671 000000 116007 cmpq 0,dl aa 002672 000003 600004 tze L215 aa 002673 000000 236007 ldq 0,dl " 0 aa 002674 000572 710004 tra L210 L215: L214: aa 002675 000075 235007 19 lda 61,dl " Ada aa 002676 700012 755111 sta sb|10,x1 aa 002677 000026 235007 lda 22,dl " AorQr aa 002700 700013 755111 sta sb|11,x1 aa 002701 776055 272004 tsbbp L4+2 " ApplySymmetrical aa 002702 000010 000002 zero 8,2 aa 002703 000563 710004 21 tra L210 L216: aa 002704 000475 236007 22 ldq 317,dl " Fad aa 002705 700012 756111 stq sb|10,x1 aa 002706 000023 236007 ldq 19,dl " EAQr aa 002707 700013 756111 stq sb|11,x1 aa 002710 776046 272004 tsbbp L4+2 " ApplySymmetrical aa 002711 000010 000002 zero 8,2 aa 002712 000554 710004 24 tra L210 L217: aa 002713 600152 234100 25 szn sp|106 " Optimize aa 002714 000047 600004 tze L218 aa 002715 700003 236111 26 ldq sb|3,x1 " Result aa 002716 700012 756111 stq sb|10,x1 aa 002717 000155 236007 ldq 109,dl " Ssa aa 002720 700013 756111 stq sb|11,x1 aa 002721 777210 272004 tsbbp L11+2 " TryDiadicRAR aa 002722 000010 000002 zero 8,2 aa 002723 000000 116007 cmpq 0,dl aa 002724 000003 600004 tze L219 aa 002725 000000 236007 ldq 0,dl " 0 aa 002726 000540 710004 tra L210 L219: aa 002727 600521 235100 27 lda sp|337 " Rrand aa 002730 700012 755111 sta sb|10,x1 aa 002731 000026 235007 lda 22,dl " AorQr aa 002732 700013 755111 sta sb|11,x1 4a 002733 400024 272120 tsbbp lp|L87,* " InRegister aa 002734 000010 000002 zero 8,2 aa 002735 000000 116007 cmpq 0,dl aa 002736 000025 600004 tze L220 aa 002737 600510 236100 ldq sp|328 " Lrand aa 002740 700012 756111 stq sb|10,x1 aa 002741 000026 236007 ldq 22,dl " AorQr aa 002742 700013 756111 stq sb|11,x1 4a 002743 400024 272120 tsbbp lp|L87,* " InRegister aa 002744 000010 000002 zero 8,2 aa 002745 000000 116007 cmpq 0,dl aa 002746 000015 601004 tnz L220 aa 002747 000175 236007 28 ldq 125,dl " Sba aa 002750 700012 756111 stq sb|10,x1 aa 002751 000026 236007 ldq 22,dl " AorQr aa 002752 700013 756111 stq sb|11,x1 aa 002753 777626 272004 tsbbp L5+2 " ApplyRL aa 002754 000010 000002 zero 8,2 aa 002755 700005 756111 stq sb|5,x1 " r aa 002756 700005 236111 29 ldq sb|5,x1 " r aa 002757 700012 756111 stq sb|10,x1 aa 002760 776121 272004 tsbbp L7+2 " ApplyNegate aa 002761 000010 000001 zero 8,1 aa 002762 000504 710004 tra L210 L220: L218: aa 002763 000175 236007 32 ldq 125,dl " Sba aa 002764 700012 756111 stq sb|10,x1 aa 002765 000026 236007 ldq 22,dl " AorQr aa 002766 700013 756111 stq sb|11,x1 aa 002767 776036 272004 tsbbp L6+2 " ApplyLR aa 002770 000010 000002 zero 8,2 aa 002771 000475 710004 34 tra L210 L221: aa 002772 600152 234100 35 szn sp|106 " Optimize aa 002773 000024 600004 tze L222 aa 002774 600521 236100 ldq sp|337 " Rrand aa 002775 700012 756111 stq sb|10,x1 aa 002776 000023 236007 ldq 19,dl " EAQr aa 002777 700013 756111 stq sb|11,x1 4a 003000 400024 272120 tsbbp lp|L87,* " InRegister aa 003001 000010 000002 zero 8,2 aa 003002 000000 116007 cmpq 0,dl aa 003003 000014 600004 tze L223 aa 003004 000575 236007 36 ldq 381,dl " Fsb aa 003005 700012 756111 stq sb|10,x1 aa 003006 000023 236007 ldq 19,dl " EAQr aa 003007 700013 756111 stq sb|11,x1 aa 003010 777571 272004 tsbbp L5+2 " ApplyRL aa 003011 000010 000002 zero 8,2 aa 003012 000023 236007 37 ldq 19,dl " EAQr aa 003013 700012 756111 stq sb|10,x1 aa 003014 776065 272004 tsbbp L7+2 " ApplyNegate aa 003015 000010 000001 zero 8,1 aa 003016 000450 710004 tra L210 L223: L222: aa 003017 000575 236007 39 ldq 381,dl " Fsb aa 003020 700012 756111 stq sb|10,x1 aa 003021 000023 236007 ldq 19,dl " EAQr aa 003022 700013 756111 stq sb|11,x1 aa 003023 776002 272004 tsbbp L6+2 " ApplyLR aa 003024 000010 000002 zero 8,2 aa 003025 000441 710004 41 tra L210 L224: aa 003026 600152 234100 42 szn sp|106 " Optimize aa 003027 000071 600004 tze L225 aa 003030 600510 236100 43 ldq sp|328 " Lrand aa 003031 700012 756111 stq sb|10,x1 aa 003032 600521 236100 ldq sp|337 " Rrand aa 003033 700013 756111 stq sb|11,x1 aa 003034 777345 272004 tsbbp L9+2 " TryShift aa 003035 000010 000002 zero 8,2 aa 003036 700005 756111 stq sb|5,x1 " r aa 003037 700005 234111 44 szn sb|5,x1 " r aa 003040 000003 600004 tze L226 aa 003041 700005 236111 ldq sb|5,x1 " r aa 003042 000424 710004 tra L210 L226: aa 003043 600521 235100 45 lda sp|337 " Rrand aa 003044 700012 755111 sta sb|10,x1 aa 003045 600510 235100 lda sp|328 " Lrand aa 003046 700013 755111 sta sb|11,x1 aa 003047 777332 272004 tsbbp L9+2 " TryShift aa 003050 000010 000002 zero 8,2 aa 003051 700005 756111 stq sb|5,x1 " r aa 003052 700005 234111 46 szn sb|5,x1 " r aa 003053 000003 600004 tze L227 aa 003054 700005 236111 ldq sb|5,x1 " r aa 003055 000411 710004 tra L210 L227: aa 003056 600510 235100 47 lda sp|328 " Lrand aa 003057 700012 755111 sta sb|10,x1 aa 003060 000001 235007 lda 1,dl " Ar aa 003061 700013 755111 sta sb|11,x1 4a 003062 400024 272120 tsbbp lp|L87,* " InRegister aa 003063 000010 000002 zero 8,2 aa 003064 000000 116007 cmpq 0,dl aa 003065 000011 600004 tze L230 aa 003066 600521 236100 ldq sp|337 " Rrand aa 003067 700012 756111 stq sb|10,x1 aa 003070 000002 236007 ldq 2,dl " Qr aa 003071 700013 756111 stq sb|11,x1 4a 003072 400024 272120 tsbbp lp|L87,* " InRegister aa 003073 000010 000002 zero 8,2 aa 003074 000000 116007 cmpq 0,dl aa 003075 000021 600004 tze L229 L230: aa 003076 600521 236100 ldq sp|337 " Rrand aa 003077 700012 756111 stq sb|10,x1 aa 003100 000001 236007 ldq 1,dl " Ar aa 003101 700013 756111 stq sb|11,x1 4a 003102 400024 272120 tsbbp lp|L87,* " InRegister aa 003103 000010 000002 zero 8,2 aa 003104 000000 116007 cmpq 0,dl aa 003105 000013 600004 tze L228 aa 003106 600510 236100 ldq sp|328 " Lrand aa 003107 700012 756111 stq sb|10,x1 aa 003110 000002 236007 ldq 2,dl " Qr aa 003111 700013 756111 stq sb|11,x1 4a 003112 400024 272120 tsbbp lp|L87,* " InRegister aa 003113 000010 000002 zero 8,2 aa 003114 000000 116007 cmpq 0,dl aa 003115 000003 601004 tnz L228 L229: 4a 003116 400022 272120 48 tsbbp lp|L98,* " SwapAandQ aa 003117 000010 000000 zero 8 L228: L225: aa 003120 000001 236007 50 ldq 1,dl " Ar aa 003121 700012 756111 stq sb|10,x1 4a 003122 400074 272120 tsbbp lp|L23,* " GetRegister aa 003123 000010 000001 zero 8,1 aa 003124 000402 236007 51 ldq 258,dl " Mpy aa 003125 700012 756111 stq sb|10,x1 aa 003126 000002 236007 ldq 2,dl " Qr aa 003127 700013 756111 stq sb|11,x1 aa 003130 775626 272004 tsbbp L4+2 " ApplySymmetrical aa 003131 000010 000002 zero 8,2 aa 003132 000334 710004 53 tra L210 L231: aa 003133 000461 236007 54 ldq 305,dl " Fmp aa 003134 700012 756111 stq sb|10,x1 aa 003135 000023 236007 ldq 19,dl " EAQr aa 003136 700013 756111 stq sb|11,x1 aa 003137 775617 272004 tsbbp L4+2 " ApplySymmetrical aa 003140 000010 000002 zero 8,2 aa 003141 000325 710004 56 tra L210 L232: aa 003142 600152 234100 57 szn sp|106 " Optimize aa 003143 000013 600004 tze L233 aa 003144 600510 236100 ldq sp|328 " Lrand aa 003145 700012 756111 stq sb|10,x1 aa 003146 000001 236007 ldq 1,dl " Ar aa 003147 700013 756111 stq sb|11,x1 4a 003150 400024 272120 tsbbp lp|L87,* " InRegister aa 003151 000010 000002 zero 8,2 aa 003152 000000 116007 cmpq 0,dl aa 003153 000003 600004 tze L234 4a 003154 400022 272120 tsbbp lp|L98,* " SwapAandQ aa 003155 000010 000000 zero 8 L234: L233: aa 003156 000001 236007 58 ldq 1,dl " Ar aa 003157 700012 756111 stq sb|10,x1 4a 003160 400074 272120 tsbbp lp|L23,* " GetRegister aa 003161 000010 000001 zero 8,1 aa 003162 000506 236007 59 ldq 326,dl " Div aa 003163 700012 756111 stq sb|10,x1 aa 003164 000002 236007 ldq 2,dl " Qr aa 003165 700013 756111 stq sb|11,x1 aa 003166 775637 272004 tsbbp L6+2 " ApplyLR aa 003167 000010 000002 zero 8,2 aa 003170 000276 710004 61 tra L210 L235: aa 003171 600152 234100 62 szn sp|106 " Optimize aa 003172 000020 600004 tze L236 aa 003173 600521 236100 ldq sp|337 " Rrand aa 003174 700012 756111 stq sb|10,x1 aa 003175 000023 236007 ldq 19,dl " EAQr aa 003176 700013 756111 stq sb|11,x1 4a 003177 400024 272120 tsbbp lp|L87,* " InRegister aa 003200 000010 000002 zero 8,2 aa 003201 000000 116007 cmpq 0,dl aa 003202 000010 600004 tze L237 aa 003203 000525 236007 63 ldq 341,dl " Fdi aa 003204 700012 756111 stq sb|10,x1 aa 003205 000023 236007 ldq 19,dl " EAQr aa 003206 700013 756111 stq sb|11,x1 aa 003207 777372 272004 tsbbp L5+2 " ApplyRL aa 003210 000010 000002 zero 8,2 aa 003211 000255 710004 tra L210 L237: L236: aa 003212 000565 236007 64 ldq 373,dl " Fdv aa 003213 700012 756111 stq sb|10,x1 aa 003214 000023 236007 ldq 19,dl " EAQr aa 003215 700013 756111 stq sb|11,x1 aa 003216 775607 272004 tsbbp L6+2 " ApplyLR aa 003217 000010 000002 zero 8,2 aa 003220 000246 710004 66 tra L210 L238: aa 003221 600152 234100 67 szn sp|106 " Optimize aa 003222 000013 600004 tze L239 aa 003223 600510 236100 ldq sp|328 " Lrand aa 003224 700012 756111 stq sb|10,x1 aa 003225 000001 236007 ldq 1,dl " Ar aa 003226 700013 756111 stq sb|11,x1 4a 003227 400024 272120 tsbbp lp|L87,* " InRegister aa 003230 000010 000002 zero 8,2 aa 003231 000000 116007 cmpq 0,dl aa 003232 000003 600004 tze L240 4a 003233 400022 272120 tsbbp lp|L98,* " SwapAandQ aa 003234 000010 000000 zero 8 L240: L239: aa 003235 000001 236007 68 ldq 1,dl " Ar aa 003236 700012 756111 stq sb|10,x1 4a 003237 400074 272120 tsbbp lp|L23,* " GetRegister aa 003240 000010 000001 zero 8,1 aa 003241 000506 236007 69 ldq 326,dl " Div aa 003242 700012 756111 stq sb|10,x1 aa 003243 000002 236007 ldq 2,dl " Qr aa 003244 700013 756111 stq sb|11,x1 aa 003245 775560 272004 tsbbp L6+2 " ApplyLR aa 003246 000010 000002 zero 8,2 aa 003247 000001 236007 70 ldq 1,dl " Ar aa 003250 000216 710004 72 tra L210 L241: aa 003251 600152 234100 73 szn sp|106 " Optimize aa 003252 000013 600004 tze L242 aa 003253 700003 235111 lda sb|3,x1 " Result aa 003254 700012 755111 sta sb|10,x1 aa 003255 000255 235007 lda 173,dl " Orsa aa 003256 700013 755111 sta sb|11,x1 aa 003257 776652 272004 tsbbp L11+2 " TryDiadicRAR aa 003260 000010 000002 zero 8,2 aa 003261 000000 116007 cmpq 0,dl aa 003262 000003 600004 tze L243 aa 003263 000000 236007 ldq 0,dl " 0 aa 003264 000202 710004 tra L210 L243: L242: aa 003265 000275 235007 74 lda 189,dl " Ora aa 003266 700012 755111 sta sb|10,x1 aa 003267 000026 235007 lda 22,dl " AorQr aa 003270 700013 755111 sta sb|11,x1 aa 003271 775465 272004 tsbbp L4+2 " ApplySymmetrical aa 003272 000010 000002 zero 8,2 aa 003273 000173 710004 76 tra L210 L244: aa 003274 600152 234100 77 szn sp|106 " Optimize aa 003275 000013 600004 tze L245 aa 003276 700003 236111 ldq sb|3,x1 " Result aa 003277 700012 756111 stq sb|10,x1 aa 003300 000355 236007 ldq 237,dl " Ansa aa 003301 700013 756111 stq sb|11,x1 aa 003302 776627 272004 tsbbp L11+2 " TryDiadicRAR aa 003303 000010 000002 zero 8,2 aa 003304 000000 116007 cmpq 0,dl aa 003305 000003 600004 tze L246 aa 003306 000000 236007 ldq 0,dl " 0 aa 003307 000157 710004 tra L210 L246: L245: aa 003310 000375 235007 78 lda 253,dl " Ana aa 003311 700012 755111 sta sb|10,x1 aa 003312 000026 235007 lda 22,dl " AorQr aa 003313 700013 755111 sta sb|11,x1 aa 003314 775442 272004 tsbbp L4+2 " ApplySymmetrical aa 003315 000010 000002 zero 8,2 aa 003316 000150 710004 80 tra L210 L247: aa 003317 600152 234100 81 szn sp|106 " Optimize aa 003320 000013 600004 tze L248 aa 003321 700003 236111 ldq sb|3,x1 " Result aa 003322 700012 756111 stq sb|10,x1 aa 003323 000655 236007 ldq 429,dl " Ersa aa 003324 700013 756111 stq sb|11,x1 aa 003325 776604 272004 tsbbp L11+2 " TryDiadicRAR aa 003326 000010 000002 zero 8,2 aa 003327 000000 116007 cmpq 0,dl aa 003330 000003 600004 tze L249 aa 003331 000000 236007 ldq 0,dl " 0 aa 003332 000134 710004 tra L210 L249: L248: aa 003333 000675 235007 82 lda 445,dl " Era aa 003334 700012 755111 sta sb|10,x1 aa 003335 000026 235007 lda 22,dl " AorQr aa 003336 700013 755111 sta sb|11,x1 aa 003337 775417 272004 tsbbp L4+2 " ApplySymmetrical aa 003340 000010 000002 zero 8,2 aa 003341 000125 710004 84 tra L210 L250: aa 003342 000675 236007 ldq 445,dl " Era aa 003343 700012 756111 stq sb|10,x1 aa 003344 000026 236007 ldq 22,dl " AorQr aa 003345 700013 756111 stq sb|11,x1 aa 003346 775410 272004 tsbbp L4+2 " ApplySymmetrical aa 003347 000010 000002 zero 8,2 aa 003350 700005 756111 stq sb|5,x1 " r aa 003351 000001 336007 85 lcq 1,dl " true aa 003352 700012 756111 stq sb|10,x1 aa 003353 775372 352004 eapbp L76 " "true" aa 003354 700013 542111 sprpbp sb|11,x1 4a 003355 400054 272120 tsbbp lp|L38,* " Literal aa 003356 000010 000002 zero 8,2 aa 003357 000675 236007 86 ldq 445,dl " Era aa 003360 700012 756111 stq sb|10,x1 aa 003361 700005 236111 ldq sb|5,x1 " r aa 003362 700013 756111 stq sb|11,x1 4a 003363 400070 272120 tsbbp lp|L25,* " FormOpcode aa 003364 000010 000002 zero 8,2 aa 003365 700006 756111 stq sb|6,x1 aa 003366 700006 236111 ldq sb|6,x1 aa 003367 700012 756111 stq sb|10,x1 4a 003370 400066 272120 tsbbp lp|L26,* " Outop aa 003371 000010 000001 zero 8,1 aa 003372 700005 236111 87 ldq sb|5,x1 " r aa 003373 000073 710004 90 tra L210 L251: aa 003374 000143 235007 lda 99,dl " UnexpectedCase aa 003375 700012 755111 sta sb|10,x1 aa 003376 700002 235111 lda sb|2,x1 " Op aa 003377 700013 755111 sta sb|11,x1 aa 003400 000113 352004 eapbp L252 " "ApplyDiadicOperator" aa 003401 700014 542111 sprpbp sb|12,x1 4a 003402 400042 272120 tsbbp lp|L50,* " CGreport aa 003403 000010 000003 zero 8,3 aa 003404 000000 236007 91 ldq 0,dl " 0 aa 003405 000061 710004 tra L210 L212: " Begin switchon aa 003406 700002 235111 lda sb|2,x1 " Op aa 003407 000074 115007 cmpa 60,dl aa 003410 000045 604004 tmi L253 aa 003411 777663 600004 tze L244 aa 003412 000115 115007 cmpa 77,dl aa 003413 000037 604004 tmi L254 aa 003414 777356 600004 tze L221 aa 003415 000043 773000 lrl 35 aa 003416 000014 507007 dvf 12,dl " hash table size 0a 003417 003436 115006 cmpa L255,ql aa 003420 777754 601004 tnz L251 0a 003421 003422 710006 tra L256,ql L256: aa 003422 777752 710004 tra L251 aa 003423 777674 710004 tra L247 aa 003424 777750 710004 tra L251 aa 003425 777747 710004 tra L251 aa 003426 777746 710004 tra L251 aa 003427 777745 710004 tra L251 aa 003430 777263 710004 tra L217 aa 003431 777570 710004 tra L238 aa 003432 777501 710004 tra L231 aa 003433 777373 710004 tra L224 aa 003434 777250 710004 tra L216 aa 003435 777224 710004 tra L213 L255: aa 003436 000000 000000 zero 0 aa 003437 000000 000007 zero 0,7 aa 003440 000000 000000 zero 0 aa 003441 000000 000000 zero 0 aa 003442 000000 000000 zero 0 aa 003443 000000 000000 zero 0 aa 003444 000000 000006 zero 0,6 aa 003445 000000 000010 zero 0,8 aa 003446 000000 000006 zero 0,6 aa 003447 000000 000006 zero 0,6 aa 003450 000000 000007 zero 0,7 aa 003451 000000 000007 zero 0,7 L254: aa 003452 000075 115007 cmpa 61,dl aa 003453 777576 600004 tze L241 aa 003454 777720 710004 tra L251 L253: aa 003455 000034 115007 cmpa 28,dl aa 003456 000003 604004 tmi L257 aa 003457 777663 600004 tze L250 aa 003460 777714 710004 tra L251 L257: aa 003461 000022 115007 cmpa 18,dl aa 003462 777507 600004 tze L235 aa 003463 000024 115007 cmpa 20,dl aa 003464 777456 600004 tze L232 aa 003465 777707 710004 tra L251 L211: L210: aa 003466 700005 756111 stq sb|5,x1 aa 003467 700005 236111 ldq sb|5,x1 aa 003470 700004 756111 stq sb|4,x1 " Reg aa 003471 600510 236100 93 ldq sp|328 " Lrand aa 003472 700012 756111 stq sb|10,x1 4a 003473 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 003474 000010 000001 zero 8,1 aa 003475 600521 236100 94 ldq sp|337 " Rrand aa 003476 700012 756111 stq sb|10,x1 4a 003477 400040 272120 tsbbp lp|L53,* " DisclaimRegister aa 003500 000010 000001 zero 8,1 aa 003501 700004 236111 95 ldq sb|4,x1 " Reg aa 003502 700012 756111 stq sb|10,x1 aa 003503 700003 236111 ldq sb|3,x1 " Result aa 003504 700013 756111 stq sb|11,x1 4a 003505 400036 272120 tsbbp lp|L54,* " ClaimRegister aa 003506 000010 000002 zero 8,2 L209: aa 003507 700000 762111 lprpbp sb|0,x1 " bcpl return aa 003510 200000 121100 sblx1 bp|0 aa 003511 700001 764111 lprplp sb|1,x1 aa 003512 200001 710100 tra bp|1 " end of return sequence " Literal pool L252: aa 003513 000023 101160 zero 19,33392 " "ApplyDiadicOperator" aa 003514 160154 171104 zero 57452,62020 aa 003515 151141 144151 zero 53857,51305 aa 003516 143117 160145 zero 50767,57445 aa 003517 162141 164157 zero 58465,59503 aa 003520 162000 000000 zero 58368 aa 003521 000000 000000 " padding " Definition section part one - external entry points 5a 000000 000042 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_cg1" aa 000004 154137 143147 aa 000005 061000 000000 aa 000006 017115 157156 " "MonadicJumpcond" aa 000007 141144 151143 aa 000010 112165 155160 aa 000011 143157 156144 aa 000012 016104 151141 " "DiadicJumpcond" aa 000013 144151 143112 aa 000014 165155 160143 aa 000015 157156 144000 aa 000016 024101 160160 " "ApplyMonadicOperator" aa 000017 154171 115157 aa 000020 156141 144151 aa 000021 143117 160145 aa 000022 162141 164157 aa 000023 162000 000000 aa 000024 023101 160160 " "ApplyOffsetOperator" aa 000025 154171 117146 aa 000026 146163 145164 aa 000027 117160 145162 aa 000030 141164 157162 aa 000031 023101 160160 " "ApplyDiadicOperator" aa 000032 154171 104151 aa 000033 141144 151143 aa 000034 117160 145162 aa 000035 141164 157162 aa 000036 014163 171155 " "symbol_table" aa 000037 142157 154137 aa 000040 164141 142154 aa 000041 145000 000000 " Segname definition for bcpl_cg1 55 000042 000045 000002 " forward, backward threads 5a 000043 000002 400003 " value defined, class flags 55 000044 000003 000045 " name pointer, first entry def " Definition for MonadicJumpcond 55 000045 000050 000042 " forward, backward threads 0a 000046 001630 500000 " value defined, class flags 55 000047 000006 000042 " name pointer, segname def pointer " Definition for DiadicJumpcond 55 000050 000053 000045 " forward, backward threads 0a 000051 001220 500000 " value defined, class flags 55 000052 000012 000042 " name pointer, segname def pointer " Definition for ApplyMonadicOperator 55 000053 000056 000050 " forward, backward threads 0a 000054 000467 500000 " value defined, class flags 55 000055 000016 000042 " name pointer, segname def pointer " Definition for ApplyOffsetOperator 55 000056 000061 000053 " forward, backward threads 0a 000057 000006 500000 " value defined, class flags 55 000060 000024 000042 " name pointer, segname def pointer " Definition for ApplyDiadicOperator 55 000061 000064 000056 " forward, backward threads 0a 000062 002650 500000 " value defined, class flags 55 000063 000031 000042 " name pointer, segname def pointer " Definition for symbol_table 55 000064 000002 000061 " forward, backward threads 6a 000065 000000 400002 " value defined, class flags 55 000066 000036 000042 " name pointer, segname def pointer " Definition section part two - symbolic info for external references aa 000067 010142 143160 " "bcpl_cg2" aa 000070 154137 143147 aa 000071 062000 000000 aa 000072 012105 166141 " "EvalNumber" aa 000073 154116 165155 aa 000074 142145 162000 5a 000075 000076 000000 aa 000076 000004 000000 55 000077 000067 000072 aa 000100 010111 163116 " "IsNumber" aa 000101 165155 142145 aa 000102 162000 000000 5a 000103 000104 000000 aa 000104 000004 000000 55 000105 000067 000100 aa 000106 012114 157157 " "LookupTemp" aa 000107 153165 160124 aa 000110 145155 160000 5a 000111 000112 000000 aa 000112 000004 000000 55 000113 000067 000106 aa 000114 010142 143160 " "bcpl_cg5" aa 000115 154137 143147 aa 000116 065000 000000 aa 000117 006117 165164 " "Outop2" aa 000120 157160 062000 5a 000121 000122 000000 aa 000122 000004 000000 55 000123 000114 000117 aa 000124 010142 143160 " "bcpl_cg3" aa 000125 154137 143147 aa 000126 063000 000000 aa 000127 015103 157155 " "CompareToZero" aa 000130 160141 162145 aa 000131 124157 132145 aa 000132 162157 000000 5a 000133 000134 000000 aa 000134 000004 000000 55 000135 000124 000127 aa 000136 011123 167141 " "SwapAandQ" aa 000137 160101 141156 aa 000140 144121 000000 5a 000141 000142 000000 aa 000142 000004 000000 55 000143 000124 000136 aa 000144 012111 156122 " "InRegister" aa 000145 145147 151163 aa 000146 164145 162000 5a 000147 000150 000000 aa 000150 000004 000000 55 000151 000067 000144 aa 000152 017115 141153 " "Makeaddressable" aa 000153 145141 144144 aa 000154 162145 163163 aa 000155 141142 154145 5a 000156 000157 000000 aa 000157 000004 000000 55 000160 000124 000152 aa 000161 016106 151156 " "FindInRegister" aa 000162 144111 156122 aa 000163 145147 151163 aa 000164 164145 162000 5a 000165 000166 000000 aa 000166 000004 000000 55 000167 000067 000161 aa 000170 027114 157141 " "LoadAppropriateRegister" aa 000171 144101 160160 aa 000172 162157 160162 aa 000173 151141 164145 aa 000174 122145 147151 aa 000175 163164 145162 5a 000176 000177 000000 aa 000177 000004 000000 55 000200 000124 000170 aa 000201 005123 164157 " "Store" aa 000202 162145 000000 5a 000203 000204 000000 aa 000204 000004 000000 55 000205 000124 000201 aa 000206 015103 154141 " "ClaimRegister" aa 000207 151155 122145 aa 000210 147151 163164 aa 000211 145162 000000 5a 000212 000213 000000 aa 000213 000004 000000 55 000214 000067 000206 aa 000215 020104 151163 " "DisclaimRegister" aa 000216 143154 141151 aa 000217 155122 145147 aa 000220 151163 164145 aa 000221 162000 000000 5a 000222 000223 000000 aa 000223 000004 000000 55 000224 000067 000215 aa 000225 013142 143160 " "bcpl_report" aa 000226 154137 162145 aa 000227 160157 162164 aa 000230 010103 107162 " "CGreport" aa 000231 145160 157162 aa 000232 164000 000000 5a 000233 000234 000000 aa 000234 000004 000000 55 000235 000225 000230 aa 000236 006117 165164 " "Outop3" aa 000237 157160 063000 5a 000240 000241 000000 aa 000241 000004 000000 55 000242 000114 000236 aa 000243 007106 157162 " "FormTag" aa 000244 155124 141147 5a 000245 000246 000000 aa 000246 000004 000000 55 000247 000114 000243 aa 000250 011114 157141 " "LoadIndex" aa 000251 144111 156144 aa 000252 145170 000000 5a 000253 000254 000000 aa 000254 000004 000000 55 000255 000124 000250 aa 000256 012115 141153 " "MakeCgTemp" aa 000257 145103 147124 aa 000260 145155 160000 5a 000261 000262 000000 aa 000262 000004 000000 55 000263 000067 000256 aa 000264 007114 151164 " "Literal" aa 000265 145162 141154 5a 000266 000267 000000 aa 000267 000004 000000 55 000270 000124 000264 aa 000271 014114 157141 " "LoadRegister" aa 000272 144122 145147 aa 000273 151163 164145 aa 000274 162000 000000 5a 000275 000276 000000 aa 000276 000004 000000 55 000277 000124 000271 aa 000300 012114 157141 " "LoadNumber" aa 000301 144116 165155 aa 000302 142145 162000 5a 000303 000304 000000 aa 000304 000004 000000 55 000305 000124 000300 aa 000306 011123 145164 " "SetupAddr" aa 000307 165160 101144 aa 000310 144162 000000 5a 000311 000312 000000 aa 000312 000004 000000 55 000313 000124 000306 aa 000314 006111 163132 " "IsZero" aa 000315 145162 157000 5a 000316 000317 000000 aa 000317 000004 000000 55 000320 000067 000314 aa 000321 005117 165164 " "Outop" aa 000322 157160 000000 5a 000323 000324 000000 aa 000324 000004 000000 55 000325 000114 000321 aa 000326 012106 157162 " "FormOpcode" aa 000327 155117 160143 aa 000330 157144 145000 5a 000331 000332 000000 aa 000332 000004 000000 55 000333 000114 000326 aa 000334 016103 157155 " "CombineAddress" aa 000335 142151 156145 aa 000336 101144 144162 aa 000337 145163 163000 5a 000340 000341 000000 aa 000341 000004 000000 55 000342 000067 000334 aa 000343 013107 145164 " "GetRegister" aa 000344 122145 147151 aa 000345 163164 145162 5a 000346 000347 000000 aa 000347 000004 000000 55 000350 000124 000343 aa 000351 000000 000000 " padding " Linkage section - static variables and external links aa 000000 000000 000000 " linkage header 0a 000001 003522 000000 " address of defs aa 000002 000000 000000 aa 000003 000000 000000 aa 000004 000000 000000 aa 000005 000000 000000 2a 000006 000010 000076 " offset to links, total length aa 000007 000000 000076 " obsolete length " External link pairs L186: 3a 000010 777770 000046 " "bcpl_cg2$EvalNumber" 5a 000011 000075 000000 L184: 3a 000012 777766 000046 " "bcpl_cg2$IsNumber" 5a 000013 000103 000000 L168: 3a 000014 777764 000046 " "bcpl_cg2$LookupTemp" 5a 000015 000111 000000 L145: 3a 000016 777762 000046 " "bcpl_cg5$Outop2" 5a 000017 000121 000000 L112: 3a 000020 777760 000046 " "bcpl_cg3$CompareToZero" 5a 000021 000133 000000 L98: 3a 000022 777756 000046 " "bcpl_cg3$SwapAandQ" 5a 000023 000141 000000 L87: 3a 000024 777754 000046 " "bcpl_cg2$InRegister" 5a 000025 000147 000000 L77: 3a 000026 777752 000046 " "bcpl_cg3$Makeaddressable" 5a 000027 000156 000000 L73: 3a 000030 777750 000046 " "bcpl_cg2$FindInRegister" 5a 000031 000165 000000 L65: 3a 000032 777746 000046 " "bcpl_cg3$LoadAppropriateRegister" 5a 000033 000176 000000 L64: 3a 000034 777744 000046 " "bcpl_cg3$Store" 5a 000035 000203 000000 L54: 3a 000036 777742 000046 " "bcpl_cg2$ClaimRegister" 5a 000037 000212 000000 L53: 3a 000040 777740 000046 " "bcpl_cg2$DisclaimRegister" 5a 000041 000222 000000 L50: 3a 000042 777736 000046 " "bcpl_report$CGreport" 5a 000043 000233 000000 L47: 3a 000044 777734 000046 " "bcpl_cg5$Outop3" 5a 000045 000240 000000 L46: 3a 000046 777732 000046 " "bcpl_cg5$FormTag" 5a 000047 000245 000000 L43: 3a 000050 777730 000046 " "bcpl_cg3$LoadIndex" 5a 000051 000253 000000 L39: 3a 000052 777726 000046 " "bcpl_cg2$MakeCgTemp" 5a 000053 000261 000000 L38: 3a 000054 777724 000046 " "bcpl_cg3$Literal" 5a 000055 000266 000000 L36: 3a 000056 777722 000046 " "bcpl_cg3$LoadRegister" 5a 000057 000275 000000 L35: 3a 000060 777720 000046 " "bcpl_cg3$LoadNumber" 5a 000061 000303 000000 L34: 3a 000062 777716 000046 " "bcpl_cg3$SetupAddr" 5a 000063 000311 000000 L32: 3a 000064 777714 000046 " "bcpl_cg2$IsZero" 5a 000065 000316 000000 L26: 3a 000066 777712 000046 " "bcpl_cg5$Outop" 5a 000067 000323 000000 L25: 3a 000070 777710 000046 " "bcpl_cg5$FormOpcode" 5a 000071 000331 000000 L24: 3a 000072 777706 000046 " "bcpl_cg2$CombineAddress" 5a 000073 000340 000000 L23: 3a 000074 777704 000046 " "bcpl_cg3$GetRegister" 5a 000075 000346 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 101170 " date/time compiler modified aa 000005 533311 032072 " 09/25/73 0959.1 mst Tue aa 000006 000000 102333 " time of this compilation aa 000007 433451 762420 " 01/24/75 0649.7 mst Fri aa 000010 142143 160154 " "bcpl " aa 000011 040040 040040 aa 000012 000056 000035 " compiler version name - pointer, length aa 000013 000066 000024 " user id - pointer, length aa 000014 000073 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 000175 " section header pointer, block size aa 000020 000000 000175 " next block pointer, rel_text aa 000021 000000 000273 " rel_def, rel_link aa 000022 000307 000175 " 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 000104 000047 " bcpl_cg1 aa 000027 023333 611403 " last modified on aa 000030 000000 102333 " 01/24/75 0647.2 mst Fri aa 000031 432366 400000 aa 000032 000116 000043 " bcpl_cg_head aa 000033 021607 540213 " last modified on aa 000034 000000 101621 " 05/06/74 1740.6 mst Mon aa 000035 351403 200000 aa 000036 000127 000051 " bcpl_compiler_head aa 000037 021607 540214 " last modified on aa 000040 000000 101621 " 05/06/74 1740.6 mst Mon aa 000041 351403 200000 aa 000042 000142 000043 " bcpl_symbols aa 000043 021607 540223 " last modified on aa 000044 000000 101621 " 05/06/74 1740.8 mst Mon aa 000045 351474 000000 aa 000046 000153 000044 " bcpl_cg_codes aa 000047 021607 540212 " last modified on aa 000050 000000 101621 " 05/06/74 1740.6 mst Mon aa 000051 351402 400000 aa 000052 000164 000043 " bcpl_opcodes aa 000053 021607 540221 " last modified on aa 000054 000000 101621 " 05/06/74 1740.8 mst Mon aa 000055 351474 000000 aa 000056 102103 120114 " "BCPL version 3.4, August 1973" aa 000057 040166 145162 aa 000060 163151 157156 aa 000061 040063 056064 aa 000062 054040 101165 aa 000063 147165 163164 aa 000064 040061 071067 aa 000065 063040 040040 aa 000066 115141 162164 " "Martinson.SysMaint.a" aa 000067 151156 163157 aa 000070 156056 123171 aa 000071 163115 141151 aa 000072 156164 056141 aa 000073 163157 165162 " "source xref alist optimize 6180" aa 000074 143145 040040 aa 000075 170162 145146 aa 000076 040040 141154 aa 000077 151163 164040 aa 000100 040157 160164 aa 000101 151155 151172 aa 000102 145040 040066 aa 000103 061070 060040 aa 000104 076062 056061 " ">2.1spec>online>mib083074>bcpl_cg1.bcpl" aa 000105 163160 145143 aa 000106 076157 156154 aa 000107 151156 145076 aa 000110 155151 142060 aa 000111 070063 060067 aa 000112 064076 142143 aa 000113 160154 137143 aa 000114 147061 056142 aa 000115 143160 154040 aa 000116 076154 144144 " ">ldd>include>bcpl_cg_head.incl.bcpl" aa 000117 076151 156143 aa 000120 154165 144145 aa 000121 076142 143160 aa 000122 154137 143147 aa 000123 137150 145141 aa 000124 144056 151156 aa 000125 143154 056142 aa 000126 143160 154040 aa 000127 076154 144144 " ">ldd>include>bcpl_compiler_head.incl.bcpl" aa 000130 076151 156143 aa 000131 154165 144145 aa 000132 076142 143160 aa 000133 154137 143157 aa 000134 155160 151154 aa 000135 145162 137150 aa 000136 145141 144056 aa 000137 151156 143154 aa 000140 056142 143160 aa 000141 154040 040040 aa 000142 076154 144144 " ">ldd>include>bcpl_symbols.incl.bcpl" aa 000143 076151 156143 aa 000144 154165 144145 aa 000145 076142 143160 aa 000146 154137 163171 aa 000147 155142 157154 aa 000150 163056 151156 aa 000151 143154 056142 aa 000152 143160 154040 aa 000153 076154 144144 " ">ldd>include>bcpl_cg_codes.incl.bcpl" aa 000154 076151 156143 aa 000155 154165 144145 aa 000156 076142 143160 aa 000157 154137 143147 aa 000160 137143 157144 aa 000161 145163 056151 aa 000162 156143 154056 aa 000163 142143 160154 aa 000164 076154 144144 " ">ldd>include>bcpl_opcodes.incl.bcpl" aa 000165 076151 156143 aa 000166 154165 144145 aa 000167 076142 143160 aa 000170 154137 157160 aa 000171 143157 144145 aa 000172 163056 151156 aa 000173 143154 056142 aa 000174 143160 154040 " Relocation information " text section relocation bits aa 000175 000000 000002 " version number of rel-bits structure aa 000176 000000 004145 " length in bits aa 000177 740525 170043 aa 000200 200005 000123 aa 000201 602564 740215 aa 000202 000517 004320 aa 000203 000024 000024 aa 000204 000120 002400 aa 000205 240001 200024 aa 000206 740235 170043 aa 000207 200005 000120 aa 000210 000123 604564 aa 000211 000517 004723 aa 000212 602164 000517 aa 000213 004323 601364 aa 000214 000020 041700 aa 000215 672001 200005 aa 000216 170223 200001 aa 000217 236032 647406 aa 000220 551700 532000 aa 000221 240000 240001 aa 000222 200024 740275 aa 000223 170057 002074 aa 000224 037500 002474 aa 000225 075517 023320 aa 000226 002400 012000 aa 000227 247410 150001 aa 000230 200001 236012 aa 000231 647402 751702 aa 000232 372000 050000 aa 000233 240001 200000 aa 000234 247406 351701 aa 000235 572360 246004 aa 000236 170367 036052 aa 000237 647403 350000 aa 000240 012001 200123 aa 000241 603064 740355 aa 000242 000517 043720 aa 000243 000517 033700 aa 000244 207417 151700 aa 000245 472000 050005 aa 000246 170133 200024 aa 000247 000120 002474 aa 000250 121500 012000 aa 000251 050001 236032 aa 000252 647402 751701 aa 000253 172000 012000 aa 000254 002474 067517 aa 000255 005720 002400 aa 000256 012000 247432 aa 000257 550000 012360 aa 000260 346474 143500 aa 000261 000120 000024 aa 000262 000005 000500 aa 000263 051701 272001 aa 000264 200123 601664 aa 000265 740575 000500 aa 000266 051704 672000 aa 000267 050001 236011 aa 000270 647403 140103 aa 000271 605164 002400 aa 000272 012360 144000 l " inkage relocation bits aa 000273 000000 000002 " version number of rel-bits structure aa 000274 000000 000534 " length in bits aa 000275 100002 204652 aa 000276 465246 524652 aa 000277 465246 524652 aa 000300 465246 524652 aa 000301 465246 524652 aa 000302 465246 524652 aa 000303 465246 524652 aa 000304 465246 524652 aa 000305 465246 524652 aa 000306 465246 520000 s " ymbol relocation bits aa 000307 000000 000002 " version number of rel-bits structure aa 000310 000000 000043 " length in bits aa 000311 740365 770666 " Object map aa 004504 000000 000001 " version number of object_map structure aa 004505 157142 152137 " "obj_map " aa 004506 155141 160040 aa 004507 000000 003521 " text offset, length aa 004510 003522 000351 " def offset, length aa 004511 004074 000076 " link offset, length aa 004512 004172 000312 " symbol offset, length aa 004513 000000 000000 " break map offset, length aa 004514 340000 000000 " flags: ^bound, relocatable, procedure, standard aa 004515 004504 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