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 -- SUBSCRIPTS PHASE -- 21 PAGE 1 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 101 JOB FORTRAN COMPILER -- SUBSCRIPTS PHASE -- 21 102 CTL 6611 103 * 104 * SUBSCRIPTS WHICH MUST BE COMPUTED AT OBJECT TIME ARE REDUCED 105 * TO THE REQUIRED PARAMETERS. 106 * 107 * ON ENTRY, X1 IS THE TOP OF THE PREFIX OF THE TOP STATEMENT 108 * AND X2 IS ONE BELOW THE BOTTOM STATEMENT. 109 * 110 X1 EQU 89 0089 111 X2 EQU 94 0094 112 X3 EQU 99 0099 113 * 114 * STUFF IN THE RESIDENT AREA 115 * 116 PHASID EQU 110 PHASE ID, FOR SNAPSHOT DUMPS 0110 117 SNAPSH EQU 333 CORE DUMP SNAPSHOT 0333 118 LOADNX EQU 700 LOAD NEXT OVERLAY 0700 119 CLEARL EQU 707 CS AT START OF OVERLAY LOADER 0707 120 * 121 ORG 838 0838 122 LOADDD EQU *&1 LOAD ADDRESS 0838 123 838 BEGINN CS 0&X2 CLEAR BELOW BOTTOM STATEMENT 4 0838 / 0!0 4 124 842 CS 1 0842 / 4 125 843 SBR X2,1&X1 7 0843 H 094 0|1 4 126 850 SBR SX1 4 0850 H /94 4 127 854 LOOP BCE DONE,0&X1, BELOW BOTTOM STATEMENT 8 0854 B /39 0|0 4 128 862 MCW 0&X1,SEQCOD 7 0862 M 0|0 /98 4 129 869 B MOVEUP 4 0869 B |64 4 130 873 BCE ENDST1,SEQCOD-3,/ END STATEMENT? 8 0873 B /31 /95 / 5 131 881 BCE ENDST1,SEQCOD-3,F FORMAT STATEMENT? 8 0881 B /31 /95 F 5 132 889 SCHSUB BCE SUB6,0&X1,$ 8 0889 B 923 0|0 $ 5 133 897 CHAIN 5 MACRO 134 BCE 1 0897 B GEN 5 135 BCE 1 0898 B GEN 5 136 BCE 1 0899 B GEN 5 137 BCE 1 0900 B GEN 5 138 BCE 1 0901 B GEN 6 139 902 BW ENDSTM,0&X1 8 0902 V /24 0|0 1 6 140 910 CHAIN 5 MACRO 141 BW 1 0910 V GEN 6 142 BW 1 0911 V GEN 6 143 BW 1 0912 V GEN 6 144 BW 1 0913 V GEN 6 145 BW 1 0914 V GEN 6 146 915 SBR X1 4 0915 H 089 7 147 919 B SCHSUB 4 0919 B 889 7 FORTRAN COMPILER -- SUBSCRIPTS PHASE -- 21 PAGE 2 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 148 * 149 * GOT X1 TO WITHIN SIX OF A $, WHICH INDICATES SUBSCRIPTING. 150 * GET TO IT EXACTLY. 151 * 152 923 SUB6 BCE GOTSUB,0&X1,$ 8 0923 B 939 0|0 $ 7 153 931 SBR X1 4 0931 H 089 7 154 935 B SUB6 4 0935 B 923 7 155 939 GOTSUB SW 0&X1 4 0939 , 0|0 7 156 943 B MOVE2 4 0943 B /69 7 157 947 MN 0&X1 4 0947 D 0|0 8 158 951 SAR X1 4 0951 Q 089 8 159 955 B X1DEC4 4 0955 B |98 8 160 959 MORSUB SW 2&X1 4 0959 , 0|2 8 161 963 B MOVE2 4 0963 B /69 8 162 967 B X1DEC4 4 0967 B |98 8 163 971 BWZ INTSUB,3&X1,S A ZONE? 8 0971 V |21 0|3 S 8 164 979 BM INTSUB,3&X1 B ZONE? 8 0979 V |21 0|3 K 9 165 * 166 * NO ZONE OR AB ZONE MEANS FLOATING POINT SUBSCRIPT 167 * 168 987 CS 332 4 0987 / 332 9 169 991 CS 1 0991 / 9 170 992 SW 184 GLOBAL (?) ERROR FLAG 4 0992 , 184 9 171 996 MN SEQCOD,250 7 0996 D /98 250 9 172 1 003 MN 1 1003 D 9 173 1 004 MN 1 1004 D 9 174 1 005 MCW ERR12 4 1005 M S45 10 175 1 009 W 1 1009 2 10 176 1 010 BCV *&5 5 1010 B |19 @ 10 177 1 015 B INTSUB 4 1015 B |21 10 178 1 019 CC 1 2 1019 F 1 10 179 1 021 INTSUB SW 2&X1 4 1021 , 0|2 10 180 1 025 B MOVE2 4 1025 B /69 10 181 1 029 B X1DEC4 4 1029 B |98 11 182 1 033 C 1&X1,KDOL 7 1033 C 0|1 S46 11 183 1 040 BU MORSUB 5 1040 B 959 / 11 184 1 045 SW 1&X1 4 1045 , 0|1 11 185 1 049 B MOVE2 4 1049 B /69 11 186 1 053 MCW X1,X3 7 1053 M 089 099 11 187 1 060 B SCHSUB 4 1060 B 889 11 188 * 189 * MOVE UP PREFIX OR TAIL OF STATEMENT 190 * 191 1 064 MOVEUP SBR MOVEX&3 4 1064 H |97 12 192 1 068 LCA 0&X1,0&X2 7 1068 L 0|0 0!0 12 193 1 075 SAR X1 4 1075 Q 089 12 194 1 079 C 0&X2 4 1079 C 0!0 12 195 1 083 SAR X2 4 1083 Q 094 12 196 1 087 MCW X1,X3 7 1087 M 089 099 12 197 1 094 MOVEX B 0-0 4 1094 B 000 12 FORTRAN COMPILER -- SUBSCRIPTS PHASE -- 21 PAGE 3 SEQ PG LIN LABEL OP OPERANDS SFX CT LOCN INSTRUCTION TYPE CARD 198 * 199 * COPY X1 TO X3, THEN DECREMENT X1 BY 4 200 * 201 1 098 X1DEC4 SBR X1DECX&3 4 1098 H /23 13 202 1 102 MCW X1,X3 7 1102 M 089 099 13 203 1 109 MN 0&X1 4 1109 D 0|0 13 204 1 113 MN 1 1113 D 13 205 1 114 MN 1 1114 D 13 206 1 115 MN 1 1115 D 13 207 1 116 SBR X1 4 1116 H 089 13 208 1 120 X1DECX B 0-0 4 1120 B 000 14 209 * 210 * END OF A STATEMENT 211 * 212 1 124 ENDSTM MCW X3,X1 7 1124 M 099 089 14 213 1 131 ENDST1 B MOVEUP MOVE UP TAIL OF STATEMENT 4 1131 B |64 14 214 1 135 B LOOP 4 1135 B 854 14 215 * 216 * DONE 217 * 218 1 139 DONE MCW SX1,X1 7 1139 M /94 089 14 219 1 146 BSS SNAPSH,C 5 1146 B 333 C 14 220 1 151 SBR CLEARL&3,GMWM 7 1151 H 710 S56 14 221 1 158 LCA STNUM1,PHASID 7 1158 L S55 110 15 222 1 165 B LOADNX 4 1165 B 700 15 223 * 224 * MOVE UP A CHUNK OF THE STATEMENT 225 * 226 1 169 MOVE2 SBR MOVE2X&3 4 1169 H /91 15 227 1 173 LCA 0&X3,0&X2 7 1173 L 0?0 0!0 15 228 1 180 SBR X2 4 1180 H 094 15 229 1 184 CW 1&X2 4 1184 ) 0!1 15 230 1 188 MOVE2X B 0-0 4 1188 B 000 15 231 * 232 * DATA 233 * 234 1 194 SX1 DCW #3 3 1194 16 235 1 198 SEQCOD DCW #4 4 1198 16 236 1 245 ERR12 DCW @ERROR 12 - FLOATING POINT SUBSCRIPT, STATEMENT @ 47 1245 18 237 1 246 KDOL DCW @$@ 1 1246 18 238 1 255 STNUM1 DCW @STNUM ONE@ 9 1255 18 239 1 256 GMWM DCW @}@ 1 1256 GMARK 18 240 ORG 201 0201 241 203 DSA LOADDD LOAD ADDRESS FOR CARD-TO-TAPE PROGRAM 3 0203 838 19 242 EX BEGINN B 838 20 243 END / 000 080 FORTRAN COMPILER -- SUBSCRIPTS PHASE -- 21 PAGE 4 SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS SYMBOL ADDRESS BEGINN 838 CLEARL 707 DONE 1139 ENDST1 1131 ENDSTM 1124 ERR12 1245 GMWM 1256 GOTSUB 939 INTSUB 1021 KDOL 1246 LOADDD 838 LOADNX 700 LOOP 854 MORSUB 959 MOVE2 1169 MOVE2X 1188 MOVEUP 1064 MOVEX 1094 PHASID 110 SCHSUB 889 SEQCOD 1198 SNAPSH 333 STNUM1 1255 SUB6 923 SX1 1194 X1 89 X1DEC4 1098 X1DECX 1120 X2 94 X3 99