| 1 | /* |
| 2 | * operations |
| 3 | * those operations which are set to the right |
| 4 | * are not actually generated by pi, |
| 5 | * but are included so they can be checked for (e.g. in pcc.c). |
| 6 | * those operation which are not assigned are set in comments. |
| 7 | */ |
| 8 | #define O_ABORT 00 |
| 9 | #define O_HALT 01 |
| 10 | #define O_TRA4 02 |
| 11 | #define O_NODUMP 03 |
| 12 | #define O_BEG 04 |
| 13 | #define O_END 05 |
| 14 | #define O_CALL 06 |
| 15 | #define O_TRACNT 07 |
| 16 | #define O_PUSH 010 |
| 17 | #define O_POP 011 |
| 18 | #define O_INX4 012 |
| 19 | #define O_SDUP 013 |
| 20 | #define O_IF 014 |
| 21 | #define O_TRA 015 |
| 22 | #define O_LINO 016 |
| 23 | #define O_GOTO 017 |
| 24 | #define O_REL2 020 |
| 25 | #define O_REL4 021 |
| 26 | #define O_REL24 022 |
| 27 | #define O_REL42 023 |
| 28 | #define O_REL8 024 |
| 29 | #define O_RELG 025 |
| 30 | #define O_RELT 026 |
| 31 | #define O_NULL 027 |
| 32 | #define O_REL28 030 |
| 33 | #define O_REL48 031 |
| 34 | #define O_REL82 032 |
| 35 | #define O_REL84 033 |
| 36 | #define O_AND 034 |
| 37 | #define O_OR 035 |
| 38 | #define O_NOT 036 |
| 39 | /* 037 */ |
| 40 | #define O_AS2 040 |
| 41 | #define O_AS4 041 |
| 42 | #define O_AS24 042 |
| 43 | #define O_AS42 043 |
| 44 | #define O_AS8 044 |
| 45 | #define O_INX2P2 045 |
| 46 | #define O_INX4P2 046 |
| 47 | #define O_AS 047 |
| 48 | #define O_AS21 050 |
| 49 | #define O_AS41 051 |
| 50 | #define O_AS28 052 |
| 51 | #define O_AS48 053 |
| 52 | #define O_OFF 054 |
| 53 | #define O_INX2 055 |
| 54 | #define O_NIL 056 |
| 55 | #define O_LV 057 |
| 56 | #define O_ADD2 060 |
| 57 | #define O_ADD4 061 |
| 58 | #define O_ADD24 062 |
| 59 | #define O_ADD42 063 |
| 60 | #define O_ADD28 064 |
| 61 | #define O_ADD48 065 |
| 62 | #define O_ADD82 066 |
| 63 | #define O_ADD84 067 |
| 64 | #define O_SUB2 070 |
| 65 | #define O_SUB4 071 |
| 66 | #define O_SUB24 072 |
| 67 | #define O_SUB42 073 |
| 68 | #define O_SUB28 074 |
| 69 | #define O_SUB48 075 |
| 70 | #define O_SUB82 076 |
| 71 | #define O_SUB84 077 |
| 72 | #define O_MUL2 0100 |
| 73 | #define O_MUL4 0101 |
| 74 | #define O_MUL24 0102 |
| 75 | #define O_MUL42 0103 |
| 76 | #define O_MUL28 0104 |
| 77 | #define O_MUL48 0105 |
| 78 | #define O_MUL82 0106 |
| 79 | #define O_MUL84 0107 |
| 80 | #define O_ABS2 0110 |
| 81 | #define O_ABS4 0111 |
| 82 | #define O_ABS8 0112 |
| 83 | /* 0113 */ |
| 84 | #define O_ADD8 0114 |
| 85 | #define O_SUB8 0115 |
| 86 | #define O_MUL8 0116 |
| 87 | #define O_DVD8 0117 |
| 88 | #define O_DIV2 0120 |
| 89 | #define O_DIV4 0121 |
| 90 | #define O_DIV24 0122 |
| 91 | #define O_DIV42 0123 |
| 92 | /* 0124 */ |
| 93 | /* 0125 */ |
| 94 | /* 0126 */ |
| 95 | /* 0127 */ |
| 96 | #define O_MOD2 0130 |
| 97 | #define O_MOD4 0131 |
| 98 | #define O_MOD24 0132 |
| 99 | #define O_MOD42 0133 |
| 100 | /* 0134 */ |
| 101 | /* 0135 */ |
| 102 | /* 0136 */ |
| 103 | /* 0137 */ |
| 104 | #define O_NEG2 0140 |
| 105 | #define O_NEG4 0141 |
| 106 | #define O_NEG8 0142 |
| 107 | /* 0143 */ |
| 108 | /* 0144 */ |
| 109 | /* 0145 */ |
| 110 | /* 0146 */ |
| 111 | /* 0147 */ |
| 112 | /* 0150 */ |
| 113 | /* 0151 */ |
| 114 | /* 0152 */ |
| 115 | /* 0153 */ |
| 116 | /* 0154 */ |
| 117 | /* 0155 */ |
| 118 | /* 0156 */ |
| 119 | /* 0157 */ |
| 120 | #define O_DVD2 0160 |
| 121 | #define O_DVD4 0161 |
| 122 | #define O_DVD24 0162 |
| 123 | #define O_DVD42 0163 |
| 124 | #define O_DVD28 0164 |
| 125 | #define O_DVD48 0165 |
| 126 | #define O_DVD82 0166 |
| 127 | #define O_DVD84 0167 |
| 128 | #define O_RV1 0170 |
| 129 | #define O_RV2 0171 |
| 130 | #define O_RV4 0172 |
| 131 | #define O_RV8 0173 |
| 132 | #define O_IND1 0174 |
| 133 | #define O_IND2 0175 |
| 134 | #define O_IND4 0176 /* pbk */ |
| 135 | #define O_IND8 0177 |
| 136 | #define O_CON1 0200 |
| 137 | #define O_CON2 0201 |
| 138 | #define O_CON4 0202 |
| 139 | #define O_CON8 0203 |
| 140 | #define O_RV 0204 |
| 141 | #define O_IND 0205 |
| 142 | #define O_CON 0206 |
| 143 | /* 0207 */ |
| 144 | #define O_RANG2 0210 |
| 145 | #define O_RANG42 0211 |
| 146 | #define O_RSNG2 0212 |
| 147 | #define O_RSNG42 0213 |
| 148 | #define O_RANG4 0214 |
| 149 | #define O_RANG24 0215 |
| 150 | #define O_RSNG4 0216 |
| 151 | #define O_RSNG24 0217 |
| 152 | /* 0220 */ |
| 153 | /* 0221 */ |
| 154 | /* 0222 */ |
| 155 | /* 0223 */ |
| 156 | /* 0224 */ |
| 157 | /* 0225 */ |
| 158 | /* 0226 */ |
| 159 | /* 0227 */ |
| 160 | #define O_CONC 0230 |
| 161 | #define O_CASEBEG 0231 |
| 162 | #define O_CASE1 0232 |
| 163 | #define O_CASE2 0233 |
| 164 | #define O_CASE4 0234 |
| 165 | #define O_CASEEND 0235 |
| 166 | #define O_CONG 0236 |
| 167 | #define O_ORD2 0237 |
| 168 | #define O_CASE1OP 0240 |
| 169 | #define O_CASE2OP 0241 |
| 170 | #define O_CASE4OP 0242 |
| 171 | #define O_PXPBUF 0243 |
| 172 | #define O_COUNT 0244 |
| 173 | /* 0245 */ |
| 174 | /* 0246 */ |
| 175 | /* 0247 */ |
| 176 | #define O_ADDT 0250 |
| 177 | #define O_SUBT 0251 |
| 178 | #define O_MULT 0252 |
| 179 | #define O_INCT 0253 |
| 180 | #define O_CTTOT 0254 |
| 181 | #define O_CARD 0255 |
| 182 | #define O_IN 0256 |
| 183 | #define O_ASRT 0257 |
| 184 | #define O_FOR1U 0260 |
| 185 | #define O_FOR2U 0261 |
| 186 | #define O_FOR4U 0262 |
| 187 | #define O_FOR1D 0263 |
| 188 | #define O_FOR2D 0264 |
| 189 | #define O_FOR4D 0265 |
| 190 | #define O_STLIM 0266 |
| 191 | #define O_SCLCK 0267 |
| 192 | #define O_STOI 0270 |
| 193 | #define O_STOD 0271 |
| 194 | #define O_ITOD 0272 |
| 195 | #define O_ITOS 0273 |
| 196 | #define O_BUFF 0274 |
| 197 | #define O_WCLCK 0275 |
| 198 | #define O_WRHEX2 0276 |
| 199 | #define O_WRHEX4 0277 |
| 200 | #define O_GET 0300 |
| 201 | #define O_PUT 0301 |
| 202 | #define O_MESSAGE 0302 |
| 203 | #define O_FNIL 0303 |
| 204 | #define O_EOF 0304 |
| 205 | #define O_EOLN 0305 |
| 206 | #define O_RESET 0306 |
| 207 | #define O_REWRITE 0307 |
| 208 | #define O_REMOVE 0310 |
| 209 | #define O_READ4 0311 |
| 210 | #define O_UNIT 0312 |
| 211 | #define O_READC 0313 |
| 212 | #define O_READ8 0314 |
| 213 | #define O_UNITINP 0315 |
| 214 | #define O_UNITOUT 0316 |
| 215 | #define O_READLN 0317 |
| 216 | #define O_WRIT2 0320 |
| 217 | #define O_WRIT4 0321 |
| 218 | #define O_WRITB 0322 |
| 219 | #define O_WRITC 0323 |
| 220 | #define O_WRIT8 0324 |
| 221 | #define O_WRITG 0325 |
| 222 | #define O_WRIT82 0326 |
| 223 | #define O_WRITLN 0327 |
| 224 | #define O_WROCT2 0330 |
| 225 | #define O_WROCT4 0331 |
| 226 | #define O_FLUSH 0332 |
| 227 | #define O_PACK 0333 |
| 228 | #define O_UNPACK 0334 |
| 229 | #define O_LLIMIT 0335 |
| 230 | #define O_ARGC 0336 |
| 231 | #define O_ARGV 0337 |
| 232 | #define O_CLCK 0340 |
| 233 | #define O_SEED 0341 |
| 234 | #define O_RANDOM 0342 |
| 235 | #define O_DISPOSE 0343 |
| 236 | #define O_NEW 0344 |
| 237 | #define O_EXPO 0345 |
| 238 | #define O_DATE 0346 |
| 239 | #define O_TIME 0347 |
| 240 | #define O_ATAN 0350 |
| 241 | #define O_COS 0351 |
| 242 | #define O_EXP 0352 |
| 243 | #define O_LN 0353 |
| 244 | #define O_SIN 0354 |
| 245 | #define O_SQRT 0355 |
| 246 | #define O_CHR2 0356 |
| 247 | #define O_CHR4 0357 |
| 248 | #define O_ODD2 0360 |
| 249 | #define O_ODD4 0361 |
| 250 | #define O_PRED2 0362 |
| 251 | #define O_PRED4 0363 |
| 252 | #define O_PRED24 0364 |
| 253 | #define O_SUCC2 0365 |
| 254 | #define O_SUCC4 0366 |
| 255 | #define O_SUCC24 0367 |
| 256 | #define O_DEFNAME 0370 |
| 257 | #define O_PAGE 0371 |
| 258 | #define O_UNDEF 0372 |
| 259 | #define O_SQR2 0373 |
| 260 | #define O_SQR4 0374 |
| 261 | #define O_SQR8 0375 |
| 262 | #define O_ROUND 0376 |
| 263 | #define O_TRUNC 0377 |