CLEAR STORAGE 1 ,008015,022026,030037,044,049,053053N000000N00001026 1 CLEAR STORAGE 2 L068116,105106,110117B101/I9I#071029C029056B026/B001/0991,001/001117I0? 2 BOOTSTRAP ,008015,022029,036040,047054,061068,072/061039 ,0010011040 3 FORTRAN COMPILER -- STMT NUMBERS THREE -- PHASE 29 PAGE 1 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 101 JOB FORTRAN COMPILER -- STMT NUMBERS THREE -- PHASE 29 102 CTL 6611 103 * 104 * THE THREE-CHARACTER EQUIVALENTS OF STATEMENT NUMBERS 105 * APPEARING WITHIN STATEMENTS (GENERATED BY STATEMENT 106 * NUMBERS PHASE ONE) ARE PLACED IN A TABLE. 107 * 108 * ON ENTRY, 83 IS ONE BELOW THE BOTTOM OF THE NUMBERS, FORMATS 109 * AND I/O LISTS IN HIGH CORE, AND X1 AND X2 ARE THE TOP OF 110 * CODE IN LOW CORE. 111 * 112 X1 EQU 89 0089 113 X2 EQU 94 0094 114 X3 EQU 99 0099 115 * 116 * STUFF IN THE RESIDENT AREA 117 * 118 PHASID EQU 110 PHASE ID, FOR SNAPSHOT DUMPS 0110 119 TBLBOT EQU 145 ONE BELOW NUMBERS, FORMATS, I/O LISTS 0145 120 SNAPSH EQU 333 CORE DUMP SNAPSHOT 0333 121 LOADNX EQU 700 LOAD NEXT OVERLAY 0700 122 CLEARL EQU 707 CS AT START OF OVERLAY LOADER 0707 123 CDOVLY EQU 769 1 IF RUNNING FROM CARDS, N IF FROM TAPE 0769 124 TPREAD EQU 780 TAPE READ INSTRUCTION IN OVERLAY LOADER 0780 125 LOADXX EQU 793 EXIT FROM OVERLAY LOADER 0793 126 CLRBOT EQU 833 BOTTOM OF CORE TO CLEAR IN OVERLAY LOADER 0833 127 * 128 TOPCD9 EQU 840 TOP OF CODE & X00 - 1 0840 129 DIFF16 EQU 846 16 * (BOTTAB - 1 - TOPCD9) 0846 130 BNDRY EQU 849 TOPCD9 + 0.48 * (BOTTAB - 1 - TOPCD9) 0849 131 BOTTAB EQU 852 INPUT BOTTOM OF TABLES, OUTPUT TOP OF CODE & 2 0852 132 MOVEDN EQU 853 MOVE STATEMENTS DOWN 0853 133 * 134 ORG 937 0937 135 LOADDD EQU *&1 LOAD ADDRESS 0937 136 * 137 * MOVE EITHER PREFIX OR STATEMENT UP 138 * 139 937 MOVE SBR MOVEX&3 4 0937 H 963 4 140 941 LCA 0&X1,0&X2 7 0941 L 0|0 0!0 4 141 948 SAR X1 4 0948 Q 089 4 142 952 C 0&X2 4 0952 C 0!0 4 143 956 SAR X2 4 0956 Q 094 4 144 960 MOVEX B 0 4 0960 B 000 4 145 * 146 * COMPUTE HASH PROBE FOR SOUGHT AND LEAVE IT IN X1. SAVE 147 * -3&X1 IN SX1A. FORTRAN COMPILER -- STMT NUMBERS THREE -- PHASE 29 PAGE 2 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 148 * 149 964 HASH SBR HASHX&3 4 0964 H |47 4 150 968 MCW 0&X1,SOUGHT 7 0968 M 0|0 |51 5 151 975 SAR SX1A 4 0975 Q |54 5 152 979 MN SOUGHT,W4 7 0979 D |51 |58 5 153 986 MN 1 0986 D 5 154 987 MN 1 0987 D 5 155 988 MN 1 0988 D 5 156 989 S DIFF16-2,W4 7 0989 S 844 |58 5 157 996 BWZ *-14,W4,B 8 0996 V 989 |58 B 6 158 1 004 A DIFF16-2,W4 7 1004 A 844 |58 6 159 1 011 MZ *-4,W4 7 1011 Y |13 |58 6 160 1 018 MCW W4,X1 7 1018 M |58 089 6 161 1 025 A X1 4 1025 A 089 6 162 1 029 A W4,X1 7 1029 A |58 089 7 163 1 036 SAVTOP NOP 0-0 WHY NOT JUST 4 1036 N 000 7 164 1 040 SAR X1 SBR X1,0-0 ? 4 1040 Q 089 7 165 1 044 HASHX B 0 4 1044 B 000 7 166 * 167 1 048 DCW #1 1 1048 7 168 1 051 SOUGHT DCW #3 3 1051 7 169 1 054 SX1A DCW #3 3 1054 7 170 1 058 W4 DCW #4 4 1058 8 171 1 062 SEQCOD DCW #4 4 1062 8 172 1 065 SAVBOT DCW #3 BOTTOM OF I/O STRINGS, FORMAT, NUMBERS - 1 3 1065 8 173 * 174 1 066 TOOBIG CS 332 4 1066 / 332 8 175 1 070 CS 1 1070 / 8 176 1 071 CC 1 2 1071 F 1 8 177 1 073 MCW ERR2,270 7 1073 M /79 270 8 178 1 080 W 1 1080 2 9 179 1 081 CC 1 2 1081 F 1 9 180 1 083 BCE HALT,CDOVLY,1 8 1083 B |96 769 1 9 181 1 091 RWD 1 5 1091 U %U1 R 9 182 1 096 HALT H HALT 4 1096 . |96 9 183 * 184 1 100 DONE MCW SX1,X1 7 1100 M /43 089 9 185 1 107 BSS SNAPSH,C 5 1107 B 333 C 9 186 1 112 SBR TPREAD&6,BEGINN 7 1112 H 786 /87 10 187 1 119 SBR CLRBOT 4 1119 H 833 10 188 1 123 SBR CLEARL&3,GMWM 7 1123 H 710 W89 10 189 1 130 LCA STNUM4,PHASID 7 1130 L /86 110 10 190 1 137 B LOADNX 4 1137 B 700 10 191 1 143 SX1 DCW #3 3 1143 10 192 1 179 ERR2 DCW @MESSAGE 2 - OBJECT PROGRAM TOO LARGE@ 36 1179 11 193 1 186 STNUM4 DCW @STNUM 4@ 7 1186 12 194 * 195 1 187 BEGINN MCW 83,SAVBOT 7 1187 M 083 |65 12 196 1 194 MCW 83,TBLBOT 7 1194 M 083 145 12 197 1 201 MCW TOPCD9,SAVTOP&3 7 1201 M 840 |39 12 FORTRAN COMPILER -- STMT NUMBERS THREE -- PHASE 29 PAGE 3 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 198 1 208 MZ X1ZONE,SAVTOP&2 X1 ZONE 7 1208 Y W67 |38 12 199 1 215 SBR BOTTAB,2&X2 BOTTAB IS NOT TOP OF CODE & 2 7 1215 H 852 0!2 13 200 1 222 MCW X1,SX1 7 1222 M 089 /43 13 201 1 229 NXSTMT MCW 0&X1,SEQCOD 7 1229 M 0|0 |62 13 202 1 236 BCE COMPGO,SEQCOD-3,T COMPUTED GOTO? 8 1236 B T67 |59 T 13 203 1 244 MCW BRANCH,SWICH2 7 1244 M W68 V83 13 204 1 251 MCW SAVBOT,83 7 1251 M |65 083 14 205 1 258 C X1,X2 7 1258 C 089 094 14 206 1 265 BE TSTEND 5 1265 B S74 S 14 207 1 270 B MOVEDN 4 1270 B 853 14 208 1 274 TSTEND BCE DONE,0&X1, 8 1274 B /00 0|0 14 209 1 282 MCW 0&X1,SEQCOD 7 1282 M 0|0 |62 14 210 1 289 B MOVE MOVE UP PREFIX 4 1289 B 937 15 211 1 293 MCW SEQCOD-3,*&8 7 1293 M |59 T07 15 212 1 300 BCE LABELS,STMTS,0 8 1300 B T21 W74 0 15 213 1 308 B 1 1308 B 15 214 1 309 B 1 1309 B 15 215 1 310 B 1 1310 B 15 216 1 311 B 1 1311 B 15 217 1 312 B 1 1312 B 16 218 1 313 CONT B MOVE MOVE UP BODY 4 1313 B 937 16 219 1 317 B TSTEND 4 1317 B S74 16 220 * 221 * AN INTERESTING STATEMENT -- ONE CONTAINING LABELS OF OTHER 222 * EXECUTABLE STATEMENTS. NOT AN I/O STATEMENT CONTAINING A 223 * FORMAT LABEL. 224 * 225 * ??? THIS DOESN'T WORK FOR COMPUTED GOTO, BECAUSE IT DOESN'T 226 * HAVE A COMMA. IT ENDS UP PUTTING THE VARIABLE IN THE LABEL 227 * TABLE. ??? 228 * 229 1 321 LABELS B HASH 4 1321 B 964 16 230 1 325 B LOOKUP 4 1325 B V33 16 231 1 329 MCW X3,0&X2 MOVE TABLE ADDRESS TO CODE 7 1329 M 099 0!0 16 232 1 336 SBR X2 4 1336 H 094 16 233 1 340 MCW SX1A,X1 7 1340 M |54 089 17 234 1 347 BCE CONT,0&X1,} 8 1347 B T13 0|0 } GMARK 17 235 1 355 BCE CONT,0&X1,, 8 1355 B T13 0|0 , 17 236 1 363 B LABELS 4 1363 B T21 17 237 * 238 * COMPUTED GOTO 239 * ??? THIS LOOKS BUGGY. COMPUTED GOTO DOESN'T HAVE 240 * A COMMA IN IT, AND X3 IS OFF BY ONE. ??? 241 * 242 1 367 COMPGO C 0&X1 GET TO TOP OF BODY 4 1367 C 0|0 17 243 1 371 MN 1 1371 D 17 244 1 372 SAR X3 4 1372 Q 099 17 245 1 376 S W3B 4 1376 S W77 18 246 1 380 COMPL1 MN 0&X3 4 1380 D 0?0 18 247 1 384 MN 1 1384 D 18 FORTRAN COMPILER -- STMT NUMBERS THREE -- PHASE 29 PAGE 4 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 248 1 385 MN 1 1385 D 18 249 1 386 SAR X3 4 1386 Q 099 18 250 1 390 A K1,W3B 7 1390 A W78 W77 18 251 1 397 BCE *&5,1&X3,, 8 1397 B U09 0?1 , 18 252 1 405 B COMPL1 4 1405 B T80 19 253 1 409 S KP11,W3B 7 1409 S W80 W77 19 254 1 416 BWZ COMPG2,W3B,B 8 1416 V U36 W77 B 19 255 1 424 B MOVE 4 1424 B 937 19 256 1 428 COMPFN B MOVE 4 1428 B 937 19 257 1 432 B NXSTMT 4 1432 B S29 19 258 1 436 COMPG2 MN 0&X1 4 1436 D 0|0 19 259 1 440 MN 1 1440 D 20 260 1 441 MN 1 1441 D 20 261 1 442 MCW KH 4 1442 M W81 20 262 1 446 B MOVE 4 1446 B 937 20 263 1 450 MCW X3,SX3 7 1450 M 099 W84 20 264 1 457 MN 0&X3 4 1457 D 0?0 20 265 1 461 MN 1 1461 D 20 266 1 462 SAR X1 4 1462 Q 089 21 267 1 466 A KP9,W3B 7 1466 A W85 W77 21 268 1 473 COMPL2 SBR X1,6&X1 7 1473 H 089 0|6 21 269 1 480 B HASH 4 1480 B 964 21 270 1 484 B LOOKUP 4 1484 B V33 21 271 1 488 MCW SX1A,X1 7 1488 M |54 089 21 272 1 495 BCE *&5,4&X1,} END OF STATEMENT? 8 1495 B V07 0|4 } GMARK 22 273 1 503 B COMPL2 4 1503 B U73 22 274 1 507 MCW SAVBOT,0&X2 7 1507 M |65 0!0 22 275 1 514 MCW W3B 4 1514 M W77 22 276 1 518 SBR X2 4 1518 H 094 22 277 1 522 MCW SX3,X1 7 1522 M W84 089 22 278 1 529 B COMPFN 4 1529 B U28 22 279 * 280 * LOOKUP SOUGHT IN THE HASH TABLE. INSERT BOTTOM OF TABLES 281 * ADDRESS IN HASH TABLE IF NOT FOUND, COPY SOUGHT TO 282 * BOTTOM OF TABLES, AND DECREMENT BOTTOM OF TABLES ADDRESS. 283 * 284 1 533 LOOKUP SBR LOOKX&3 4 1533 H W44 23 285 1 537 MCW NOP,SWITCH INDICATE FIRST TIME 7 1537 M W86 W45 23 286 1 544 LOOKL MCW 0&X1,X3 7 1544 M 0|0 099 23 287 1 551 SAR X1 4 1551 Q 089 23 288 1 555 BCE EMPTY,3&X1, 8 1555 B W06 0|3 23 289 1 563 BCE SWITCH,3&X1,< 8 1563 B W45 0|3 < 23 290 1 571 C 0&X3,SOUGHT 7 1571 C 0?0 |51 24 291 1 578 BU LOOKL 5 1578 B V44 / 24 292 1 583 SWICH2 NOP LOOKX 4 1583 N W41 24 293 1 587 MCW SAVBOT,0&X3 7 1587 M |65 0?0 24 294 1 594 SBR X3 4 1594 H 099 24 295 1 598 MZ KBA,2&X3 7 1598 Y W88 0?2 24 296 1 605 CW 1 1605 ) 24 297 1 606 EMPTY LCA SAVBOT,3&X1 7 1606 L |65 0|3 25 FORTRAN COMPILER -- STMT NUMBERS THREE -- PHASE 29 PAGE 5 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 298 1 613 MCW SAVBOT,X3 7 1613 M |65 099 25 299 1 620 BCE TOOBIG,0&X3,< 8 1620 B |66 0?0 < 25 300 1 628 B 1 1628 B 25 301 1 629 B 1 1629 B 25 302 1 630 LCA SOUGHT,0&X3 7 1630 L |51 0?0 25 303 1 637 SBR SAVBOT 4 1637 H |65 25 304 1 641 LOOKX B 0 4 1641 B 000 26 305 * 306 1 645 SWITCH NOP TOOBIG 4 1645 N |66 26 307 1 649 MCW BRANCH,SWITCH 7 1649 M W68 W45 26 308 1 656 MCW BNDRY,X1 7 1656 M 849 089 26 309 1 663 B LOOKL 4 1663 B V44 26 310 * 311 1 667 X1ZONE DCW @S@ 1 1667 26 312 1 668 BRANCH B 1 1668 B 26 313 1 674 STMTS DCW @WTDEGK@ CODES FOR STATEMENTS WITH LABELS 6 1674 27 314 1 677 W3B DCW #3 3 1677 27 315 1 678 K1 DCW 1 1 1678 27 316 1 680 KP11 DCW &11 2 1680 27 317 1 681 KH DCW @H@ 1 1681 27 318 1 684 SX3 DCW #3 3 1684 27 319 1 685 KP9 DCW &9 1 1685 27 320 1 686 NOP NOP 1 1686 N 28 321 1 688 KBA DCW @ A@ 2 1688 28 322 1 689 GMWM DCW @}@ 1 1689 GMARK 28 323 ORG 201 0201 324 203 DSA LOADDD LOAD ADDRESS FOR CARD-TO-TAPE PROGRAM 3 0203 937 29 325 EX BEGINN B /87 30 326 END / 000 080 FORTRAN COMPILER -- STMT NUMBERS THREE -- PHASE 29 PAGE 6 SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS BEGINN 1187 BNDRY 849 BOTTAB 852 BRANCH 1668 CDOVLY 769 CLEARL 707 CLRBOT 833 COMPFN 1428 COMPG2 1436 COMPGO 1367 COMPL1 1380 COMPL2 1473 CONT 1313 DIFF16 846 DONE 1100 EMPTY 1606 ERR2 1179 GMWM 1689 HALT 1096 HASH 964 HASHX 1044 K1 1678 KBA 1688 KH 1681 KP11 1680 KP9 1685 LABELS 1321 LOADDD 937 LOADNX 700 LOADXX 793 LOOKL 1544 LOOKUP 1533 LOOKX 1641 MOVE 937 MOVEDN 853 MOVEX 960 NOP 1686 NXSTMT 1229 PHASID 110 SAVBOT 1065 SAVTOP 1036 SEQCOD 1062 SNAPSH 333 SOUGHT 1051 STMTS 1674 STNUM4 1186 SWICH2 1583 SWITCH 1645 SX1 1143 SX1A 1054 SX3 1684 TBLBOT 145 TOOBIG 1066 TOPCD9 840 TPREAD 780 TSTEND 1274 W3B 1677 W4 1058 X1 89 X1ZONE 1667 X2 94 X3 99