1 <DEFINITIONS "EXPOSE-DATA">
3 <INCLUDE-WHEN <COMPILING? "EXPOSE-DATA"> "EXPOSE-DEFS">
5 <NEWTYPE OPCODE-TABLE VECTOR>
8 '["r0" "r1" "r2" "r3" "r4" "r5" "r6" "r7" "r8" "r9" "ra"
9 "ms" "fr" "tp" "sp" "pc"]>
11 <DEFINE MAKE-OPCODE-TABLE ("TUPLE" SPECS "AUX" (TBL <IVECTOR 256 %<>>))
12 #DECL ((SPECS) <TUPLE [REST <VECTOR STRING ANY>]> (TBL) VECTOR)
14 <FUNCTION (SPEC "AUX" (SLOT <+ <HEX <1 .SPEC>>:FIX 1>))
15 <PUT .TBL .SLOT <2 .SPEC>>>
17 <CHTYPE .TBL OPCODE-TABLE>>
19 <DEFINE MAKE-KERNEL-TABLE ("TUPLE" PAIRS "AUX"
20 (RES <IVECTOR ,KERNEL-TABLE-LENGTH ()>))
21 #DECL ((PAIRS) <TUPLE [REST <VECTOR FIX STRING>]>)
23 <FUNCTION (PAIR "AUX" BKTNUM)
24 <SET BKTNUM <+ <MOD <1 .PAIR> ,KERNEL-TABLE-LENGTH> 1>>
25 <PUT .RES .BKTNUM (<1 .PAIR> <2 .PAIR> !<NTH .RES .BKTNUM>)>>
30 (<NOT <FEATURE? "COMPILER">>
33 ["00" ["halt" [] "Halt"]]
34 ["01" ["nop" [] "No operation"]]
35 ["02" ["rei" [] "Return from exception or interrupt"]]
36 ["03" ["bpt" [] "Break point fault"]]
37 ["04" ["ret" [] "Return from called procedure"]]
38 ["05" ["rsb" [] "Return from subroutine"]]
39 ["06" ["ldpctx" [] "Load process context"]]
40 ["07" ["svpctx" [] "Save process context"]]
41 ["08" ["cvtps" [2 1 2 1] "Convert packed to leading separate numeric"]]
42 ["09" ["cvtsp" [2 1 2 1] "Convert leading separate numeric to packed"]]
43 ["0a" ["index" [4 4 4 4 4 4] "Compute index"]]
44 ["0b" ["crc" [1 4 2 1] "Calculate cyclic redundancy check"]]
45 ["0c" ["prober" [1 2 1] "Probe read access"]]
46 ["0d" ["probew" [1 2 1] "Probe write access"]]
47 ["0e" ["insque" [1 1] "Insert into queue"]]
48 ["0f" ["remque" [1 4] "Remove from queue"]]
50 [%<ORB 1 ,BRANCH-BIT>]
51 "Branch to subroutine with byte displacement"]]
53 [%<ORB 1 ,BRANCH-BIT>]
54 "Branch with byte displacement"]]
56 [%<ORB 1 ,BRANCH-BIT>]
57 "Branch on not equal"]]
59 [%<ORB 1 ,BRANCH-BIT>]
60 "Branch on not equal unsigned"]]
62 [%<ORB 1 ,BRANCH-BIT>]
65 [%<ORB 1 ,BRANCH-BIT>]
66 "Branch on equal unsigned"]]
68 [%<ORB 1 ,BRANCH-BIT>]
71 [%<ORB 1 ,BRANCH-BIT>]
72 "Branch on less or equal"]]
73 ["16" ["jsb" [1] "Jump to subroutine"]]
74 ["17" ["jmp" [1] "Jump"]]
76 [%<ORB 1 ,BRANCH-BIT>]
77 "Branch on greater or equal"]]
79 [%<ORB 1 ,BRANCH-BIT>]
82 [%<ORB 1 ,BRANCH-BIT>]
83 "Branch on greater unsigned"]]
85 [%<ORB 1 ,BRANCH-BIT>]
86 "Branch on less or equal unsigned"]]
88 [%<ORB 1 ,BRANCH-BIT>]
89 "Branch on overflow clear"]]
91 [%<ORB 1 ,BRANCH-BIT>]
92 "Branch on overflow set"]]
94 [%<ORB 1 ,BRANCH-BIT>]
95 "Branch on greater or equal unsigned"]]
97 [%<ORB 1 ,BRANCH-BIT>]
98 "Branch on carry clear"]]
100 [%<ORB 1 ,BRANCH-BIT>]
101 "Branch on less unsigned"]]
103 [%<ORB 1 ,BRANCH-BIT>]
104 "Branch on carry set"]]
105 ["20" ["addp4" [2 1 2 1] "Add packed 4 operand"]]
106 ["21" ["addp6" [2 1 2 1 2 1] "Add packed 6 operand"]]
107 ["22" ["subp4" [2 1 2 1] "Subtract packed 4 operand"]]
108 ["23" ["subp6" [2 1 2 1 2 1] "Subtract packed 6 operand"]]
109 ["24" ["cvtpt" [2 1 1 2 1] "Convert packed to trailing numeric"]]
110 ["25" ["mulp" [2 1 2 1 2 1] "Multiply packed"]]
111 ["26" ["cvttp" [2 1 1 2 1] "Convert trailing numeric to packed"]]
112 ["27" ["divp" [2 1 2 1 2 1] "Divide packed"]]
113 ["28" ["movc3" [2 1 1] "Move character 3 operand"]]
114 ["29" ["cmpc3" [2 1 1] "Compare character 3 operand"]]
115 ["2a" ["scanc" [2 1 1 1] "Scan characters"]]
116 ["2b" ["spanc" [2 1 1 1] "Span characters"]]
117 ["2c" ["movc5" [2 1 1 2 1] "Move character 5 operand"]]
118 ["2d" ["cmpc5" [2 1 1 2 1] "Compare character 5 operand"]]
119 ["2e" ["movtc" [2 1 1 1 2 1] "Move translated characters"]]
120 ["2f" ["movtuc" [2 1 1 1 2 1] "Move translated until character"]]
122 [%<ORB 2 ,BRANCH-BIT>]
123 "Branch to subroutine with word displacement"]]
125 [%<ORB 2 ,BRANCH-BIT>]
126 "Branch with word displacement"]]
127 ["32" ["cvtwl" [2 4] "Convert word to longword"]]
128 ["33" ["cvtwb" [2 1] "Convert word to byte"]]
129 ["34" ["movp" [2 1 1] "Move packed"]]
130 ["35" ["cmpp3" [2 1 1] "Compare packed 3 operand"]]
131 ["36" ["cvtpl" [2 1 4] "Convert packed to long"]]
132 ["37" ["cmpp4" [2 1 2 1] "Compare packed 4 operand"]]
133 ["38" ["editpc" [2 1 1 1] "Edit packed to character"]]
134 ["39" ["matchc" [2 1 2 1] "Match characters"]]
135 ["3a" ["locc" [1 2 1] "Locate character"]]
136 ["3b" ["skpc" [1 2 1] "Skip character"]]
137 ["3c" ["movzwl" [2 4] "Move zero-extended word to longword"]]
139 [2 2 2 %<ANDB 2 ,BRANCH-BIT>]
140 "Add compare and branch word"]]
141 ["3e" ["movaw" [2 4] "Move address of word"]]
142 ["3f" ["pushaw" [2] "Push address of word"]]
143 ["40" ["addf2" [4 4] "Add F_floating 2 operand"]]
144 ["41" ["addf3" [4 4 4] "Add F_floating 3 operand"]]
145 ["42" ["subf2" [4 4] "Subtract F_floating 2 operand"]]
146 ["43" ["subf3" [4 4 4] "Subtract F_floating 3 operand"]]
147 ["44" ["mulf2" [4 4] "Multiply F_floating 2 operand"]]
148 ["45" ["mulf3" [4 4 4] "Multiply F_floating 3 operand"]]
149 ["46" ["divf2" [4 4] "Divide F_floating 2 operand"]]
150 ["47" ["divf3" [4 4 4] "Divide F_floating 3 operand"]]
151 ["48" ["cvtfb" [4 1] "Convert F_floating to byte"]]
152 ["49" ["cvtfw" [4 2] "Convert F_floating to word"]]
153 ["4a" ["cvtfl" [4 4] "Convert F_floating to longword"]]
154 ["4b" ["cvtrfl" [4 4] "Convert rounded F_floating to longword"]]
155 ["4c" ["cvtbf" [1 4] "Convert byte to F_floating"]]
156 ["4d" ["cvtwf" [2 4] "Convert word to F_floating"]]
157 ["4e" ["cvtlf" [4 4] "Convert longword to F_floating"]]
159 [4 4 4 %<ORB 2 ,BRANCH-BIT>]
160 "Add compare and branch F_floating"]]
161 ["50" ["movf" [4 4] "Move F_floating"]]
162 ["51" ["cmpf" [4 4] "Compare F_floating"]]
163 ["52" ["mnegf" [4 4] "Move negated F_floating"]]
164 ["53" ["tstf" [4] "Test F_floating"]]
165 ["54" ["emodf" [4 1 4 4 4] "Extended modulus F_floating"]]
166 ["55" ["polyf" [4 2 1] "Evaluate polynomial F_floating"]]
167 ["56" ["cvtfd" [4 8] "Convert F_floating to D_floating"]]
168 ["58" ["adawi" [2 2] "Add aligned word, interlocked"]]
169 ["5c" ["insqhi" [1 8] "Insert into queue head, interlocked"]]
170 ["5d" ["insqti" [1 8] "Insert into queue tail, interlocked"]]
171 ["5e" ["remqhi" [8 4] "Remove from queue head, interlocked"]]
172 ["5f" ["remqti" [8 4] "Remove from queue tail, interlocked"]]
173 ["60" ["addd2" [8 8] "Add D_floating 2 operand"]]
174 ["61" ["addd3" [8 8 8] "Add D_floating 3 operand"]]
175 ["62" ["subd2" [8 8] "Subtract D_floating 2 operand"]]
176 ["63" ["subd3" [8 8 8] "Subtract D_floating 3 operand"]]
177 ["64" ["muld2" [8 8] "Multiply D_floating 2 operand"]]
178 ["65" ["muld3" [8 8 8] "Multiply D_floating 3 operand"]]
179 ["66" ["divd2" [8 8] "Divide D_floating 2 operand"]]
180 ["67" ["divd3" [8 8 8] "Divide D_floating 3 operand"]]
181 ["68" ["cvtdb" [8 1] "Convert D_floating to byte"]]
182 ["69" ["cvtdw" [8 2] "Convert D_floating to word"]]
183 ["6a" ["cvtdl" [8 4] "Convert D_floating to longword"]]
184 ["6b" ["cvtrdl" [8 4] "Convert rounded D_floating to longword"]]
185 ["6c" ["cvtbd" [1 8] "Convert byte to D_floating"]]
186 ["6d" ["cvtwd" [2 8] "Convert word to D_floating"]]
187 ["6e" ["cvtld" [4 8] "Convert longword to D_floating"]]
189 [8 8 8 %<ORB 2 ,BRANCH-BIT>]
190 "Add compare and branch D_floating"]]
191 ["70" ["movd" [8 8] "Move D_floating"]]
192 ["71" ["cmpd" [8 8] "Compare D_floating"]]
193 ["72" ["mnegd" [8 8] "Move negated D_floating"]]
194 ["73" ["tstd" [8] "Test D_floating"]]
195 ["74" ["emodd" [8 1 8 4 8] "Extended modulus D_floating"]]
196 ["75" ["polyd" [8 2 1] "Evaluate polynomial D_floating"]]
197 ["76" ["cvtdf" [8 4] "Convert D_floating to F_floating"]]
198 ["78" ["ashl" [1 4 4] "Arithmetic shift longword"]]
199 ["79" ["ashq" [1 8 8] "Arithmetic shift quadword"]]
200 ["7a" ["emul" [4 4 4 8] "Extended multiply"]]
201 ["7b" ["ediv" [4 8 4 4] "Extended divide"]]
202 ["7c" ["clrq" [8] "Clear quadword"]]
203 ["7d" ["movq" [8 8] "Move quadword"]]
204 ["7e" ["movaq" [8 4] "Move address of quadword"]]
205 ["7f" ["pushaq" [8] "Push address of quadword"]]
206 ["80" ["addb2" [1 1] "Add byte 2 operand"]]
207 ["81" ["addb3" [1 1 1] "Add byte 3 operand"]]
208 ["82" ["subb2" [1 1] "Subtract byte 2 operand"]]
209 ["83" ["subb3" [1 1 1] "Subtract byte 3 operand"]]
210 ["84" ["mulb2" [1 1] "Multiply byte 2 operand"]]
211 ["85" ["mulb3" [1 1 1] "Multiply byte 3 operand"]]
212 ["86" ["divb2" [1 1] "Divide byte 2 operand"]]
213 ["87" ["divb3" [1 1 1] "Divide byte 3 operand"]]
214 ["88" ["bisb2" [1 1] "Bit set byte 2 operand"]]
215 ["89" ["bisb3" [1 1 1] "Bit set byte 3 operand"]]
216 ["8a" ["bicb2" [1 1] "Bit clear byte 2 operand"]]
217 ["8b" ["bicb3" [1 1 1] "Bit clear byte 3 operand"]]
218 ["8c" ["xorb2" [1 1] "Exclusive OR byte 2 operand"]]
219 ["8d" ["xorb3" [1 1 1] "Exclusive OR byte 3 operand"]]
220 ["8e" ["mnegb" [1 1] "Move negated byte"]]
222 [1 1 %<ORB 1 ,CASE-BIT>]
224 ["90" ["movb" [1 1] "Move byte"]]
225 ["91" ["cmpb" [1 1] "Compare byte"]]
226 ["92" ["mcomb" [1 1] "Move complemented byte"]]
227 ["93" ["bitb" [1 1] "Bit test byte"]]
228 ["94" ["clrb" [1] "Clear byte"]]
229 ["95" ["tstb" [1] "Test byte"]]
230 ["96" ["incb" [1] "Increment byte"]]
231 ["97" ["decb" [1] "Decrement byte"]]
232 ["98" ["cvtbl" [1 4] "Convert byte to longword"]]
233 ["99" ["cvtbw" [1 2] "Convert byte to word"]]
234 ["9a" ["movzbl" [1 4] "Move zero-extended byte to longword"]]
235 ["9b" ["movzbw" [1 2] "Move zero-extended byte to word"]]
236 ["9c" ["rotl" [1 4 4] "Rotate longword"]]
238 [1 1 1 %<ORB 2 ,BRANCH-BIT>]
239 "Add compare and branch byte"]]
240 ["9e" ["movab" [1 4] "Move address of byte"]]
241 ["9f" ["pushab" [1] "Push address of byte"]]
242 ["a0" ["addw2" [2 2] "Add word 2 operand"]]
243 ["a1" ["addw3" [2 2 2] "Add word 3 operand"]]
244 ["a2" ["subw2" [2 2] "Subtract word 2 operand"]]
245 ["a3" ["subw3" [2 2 2] "Subtract word 3 operand"]]
246 ["a4" ["mulw2" [2 2] "Multiply word 2 operand"]]
247 ["a5" ["mulw3" [2 2 2] "Multiply word 3 operand"]]
248 ["a6" ["divw2" [2 2] "Divide word 2 operand"]]
249 ["a7" ["divw3" [2 2 2] "Divide word 3 operand"]]
250 ["a8" ["bisw2" [2 2] "Bit set word 2 operand"]]
251 ["a9" ["bisw3" [2 2 2] "Bit set word 3 operand"]]
252 ["aa" ["bicw2" [2 2] "Bit clear word 2 operand"]]
253 ["ab" ["bicw3" [2 2 2] "Bit clear word 3 operand"]]
254 ["ac" ["xorw2" [2 2] "Exclusive OR word 2 operand"]]
255 ["ad" ["xorw3" [2 2 2] "Exclusive OR word 3 operand"]]
256 ["ae" ["mnegw" [2 2] "Move negated word"]]
258 [2 2 %<ORB 2 ,CASE-BIT>]
260 ["b0" ["movw" [2 2] "Move word"]]
261 ["b1" ["cmpw" [2 2] "Compare word"]]
262 ["b2" ["mcomw" [2 2] "Move complemented word"]]
263 ["b3" ["bitw" [2 2] "Bit test word"]]
264 ["b4" ["clrw" [2] "Clear word"]]
265 ["b5" ["tstw" [2] "Test word"]]
266 ["b6" ["incw" [2] "Increment word"]]
267 ["b7" ["decw" [2] "Decrement word"]]
268 ["b8" ["bispsw" [2] "Bit set processor status word"]]
269 ["b9" ["bicpsw" [2] "Bit clear processor status word"]]
270 ["ba" ["popr" [2] "Pop registers"]]
271 ["bb" ["pushr" [2] "Push registers"]]
272 ["bc" ["chmk" [2] "Change mode to kernel"]]
273 ["bd" ["chme" [2] "Change mode to executive"]]
274 ["be" ["chms" [2] "Change mode to supervisor"]]
275 ["bf" ["chmu" [2] "Change mode to user"]]
276 ["c0" ["addl2" [4 4] "Add longword 2 operand"]]
277 ["c1" ["addl3" [4 4 4] "Add longword 3 operand"]]
278 ["c2" ["subl2" [4 4] "Subtract longword 2 operand"]]
279 ["c3" ["subl3" [4 4 4] "Subtract longword 3 operand"]]
280 ["c4" ["mull2" [4 4] "Multiply longword 2 operand"]]
281 ["c5" ["mull3" [4 4 4] "Multiply longword 3 operand"]]
282 ["c6" ["divl2" [4 4] "Divide longword 2 operand"]]
283 ["c7" ["divl3" [4 4 4] "Divide longword 3 operand"]]
284 ["c8" ["bisl2" [4 4] "Bit set longword 2 operand"]]
285 ["c9" ["bisl3" [4 4 4] "Bit set longword 3 operand"]]
286 ["ca" ["bicl2" [4 4] "Bit clear longword 2 operand"]]
287 ["cb" ["bicl3" [4 4 4] "Bit clear longword 3 operand"]]
288 ["cc" ["xorl2" [4 4] "Exclusive OR longword 2 operand"]]
289 ["cd" ["xorl3" [4 4 4] "Exclusive OR longword 3 operand"]]
290 ["ce" ["mnegl" [4 4] "Move negated longword"]]
292 [4 4 %<ORB 4 ,CASE-BIT>]
294 ["d0" ["movl" [4 4] "Move longword"]]
295 ["d1" ["cmpl" [4 4] "Compare longword"]]
296 ["d2" ["mcoml" [4 4] "Move complemented longword"]]
297 ["d3" ["bitl" [4 4] "Bit test longword"]]
298 ["d4" ["clrl" [4] "Clear longword"]]
299 ["d5" ["tstl" [4] "Test longword"]]
300 ["d6" ["incl" [4] "Increment longword"]]
301 ["d7" ["decl" [4] "Decrement longword"]]
302 ["d8" ["adwc" [4 4] "Add with carry"]]
303 ["d9" ["sbwc" [4 4] "Subtract with carry"]]
304 ["da" ["mtpr" [4 4] "Move to processor register"]]
305 ["db" ["mfpr" [4 4] "Move from processor register"]]
306 ["dc" ["movpsl" [4] "Move processor status longword"]]
307 ["dd" ["pushl" [4 4] "Push longword"]]
308 ["de" ["moval" [4 4] "Move address of longword"]]
309 ["df" ["pushal" [4] "Push address of longword"]]
311 [4 1 %<ORB 1 ,BRANCH-BIT>]
312 "Branch on bit set"]]
314 [4 1 %<ORB 1 ,BRANCH-BIT>]
315 "Branch on bit clear"]]
317 [4 1 %<ORB 1 ,BRANCH-BIT>]
318 "Branch on bit set and set"]]
320 [4 1 %<ORB 1 ,BRANCH-BIT>]
321 "Branch on bit clear and set"]]
323 [4 1 %<ORB 1 ,BRANCH-BIT>]
324 "Branch on bit set and clear"]]
326 [4 1 %<ORB 1 ,BRANCH-BIT>]
327 "Branch on bit clear and clear"]]
329 [4 1 %<ORB 1 ,BRANCH-BIT>]
330 "Branch on bit set and set, interlocked"]]
332 [4 1 %<ORB 1 ,BRANCH-BIT>]
333 "Branch on bit clear and clear, interlocked"]]
335 [4 %<ORB 1 ,BRANCH-BIT>]
336 "Branch on low bit set"]]
338 [4 %<ORB 1 ,BRANCH-BIT>]
339 "Branch on low bit clear"]]
340 ["ea" ["ffs" [4 1 1 4] "Find first set bit"]]
341 ["eb" ["ffc" [4 1 1 4] "Find first clear bit"]]
342 ["ec" ["cmpv" [4 1 1 4] "Compare field"]]
343 ["ed" ["cmpzv" [4 1 1 4] "Compare zero-extended field"]]
344 ["ee" ["extv" [4 1 1 4] "Extract field"]]
345 ["ef" ["extzv" [4 1 1 4] "Extract zero-extended field"]]
346 ["f0" ["insv" [4 4 1 1] "Insert field"]]
348 [4 4 4 %<ORB 2 ,BRANCH-BIT>]
349 "Add compare and branch longword"]]
351 [4 4 %<ORB 1 ,BRANCH-BIT>]
352 "Add one and branch on less"]]
354 [4 4 %<ORB 1 ,BRANCH-BIT>]
355 "Add one and branch on less or equal"]]
357 [4 %<ORB 1 ,BRANCH-BIT>]
358 "Subtract one and branch on greater or equal"]]
360 [4 %<ORB 1 ,BRANCH-BIT>]
361 "Subtract one and branch on greater"]]
362 ["f6" ["cvtlb" [4 1] "Convert longword to byte"]]
363 ["f7" ["cvtlw" [4 2] "Convert longword to word"]]
364 ["f8" ["ashp" [1 2 1 1 2 1] "Arithmetic shift and round packed"]]
365 ["f9" ["cvtlp" [4 2 1] "Convert longword to packed"]]
366 ["fa" ["callg" [1 1] "Call procedure with general argument list"]]
367 ["fb" ["calls" [4 1] "Call procedure with stack argument list"]]
368 ["fc" ["xfc" [] "Extended function call"]]
371 ["32" ["cvtdh" [8 16] "Convert D_floating to H_floating"]]
372 ["33" ["cvtgf" [8 4] "Convert G_floating to F_floating"]]
373 ["40" ["addg2" [8 8] "Add G_floating 2 operand"]]
374 ["41" ["addg3" [8 8 8] "Add G_floating 3 operand"]]
375 ["42" ["subg2" [8 8] "Subtract G_floating 2 operand"]]
376 ["43" ["subg3" [8 8 8] "Subtract G_floating 3 operand"]]
377 ["44" ["mulg2" [8 8] "Multiply G_floating 2 operand"]]
378 ["45" ["mulg3" [8 8 8] "Multiply G_floating 3 operand"]]
379 ["46" ["divg2" [8 8] "Divide G_floating 2 operand"]]
380 ["47" ["divg3" [8 8 8] "Divide G_floating 3 operand"]]
381 ["48" ["cvtgb" [8 1] "Convert G_floating to byte"]]
382 ["49" ["cvtgw" [8 2] "Convert G_floating to word"]]
383 ["4a" ["cvtgl" [8 4] "Convert G_floating to longword"]]
384 ["4b" ["cvtrgl" [8 8] "Convert rounded G_floating to longword"]]
385 ["4c" ["cvtbg" [1 8] "Convert byte to G_floating"]]
386 ["4d" ["cvtwg" [2 8] "Convert word to G_floating"]]
387 ["4e" ["cvtlg" [4 8] "Convert longword to G_floating"]]
388 ["4f" ["acbg" [8 8 8 2] "Add, compare and branch G_floating"]]
389 ["50" ["movg" [8 8] "Move G_floating"]]
390 ["51" ["cmpg" [8 8] "Compare G_floating"]]
391 ["52" ["mnegg" [8 8] "Move negated G_floating"]]
392 ["53" ["tstg" [8] "Test G_floating"]]
393 ["54" ["emodg" [8 2 8 4 8] "Extended modulus G_floating"]]
394 ["55" ["polyg" [8 2 1] "Polynomial evaluation G_floating"]]
395 ["56" ["cvtgh" [8 16] "Convert G_floating to H_floating"]]
396 ["60" ["addh2" [16 16] "Add H_floating 2 operand"]]
397 ["61" ["addh3" [16 16 16] "Add H_floating 3 operand"]]
398 ["62" ["subh2" [16 16] "Subtract H_floating 2 operand"]]
399 ["63" ["subh3" [16 16 16] "Subtract H_floating 3 operand"]]
400 ["64" ["mulh2" [16 16] "Multiply H_floating 2 operand"]]
401 ["65" ["mulh3" [16 16 16] "Multiply H_floating 3 operand"]]
402 ["66" ["divh2" [16 16] "Divide H_floating 2 operand"]]
403 ["67" ["divh3" [16 16 16] "Divide H_floating 3 operand"]]
404 ["68" ["cvthb" [16 1] "Convert H_floating to byte"]]
405 ["69" ["cvthw" [16 2] "Convert H_floating to word"]]
406 ["6a" ["cvthl" [16 4] "Convert H_floating to longword"]]
407 ["6b" ["cvtrhl" [16 8] "Convert rounded H_floating to longword"]]
408 ["6c" ["cvtbh" [1 16] "Convert byte to H_floating"]]
409 ["6d" ["cvtwh" [2 16] "Convert word to H_floating"]]
410 ["6e" ["cvtlh" [4 16] "Convert longword to H_floating"]]
411 ["6f" ["acbh" [16 16 16 2] "Add, compare and branch H_floating"]]
412 ["70" ["movg" [16 16] "Move H_floating"]]
413 ["71" ["cmpg" [16 16] "Compare H_floating"]]
414 ["72" ["mnegg" [16 16] "Move negated H_floating"]]
415 ["73" ["tstg" [16] "Test H_floating"]]
416 ["74" ["emodg" [16 2 16 4 16] "Extended modulus H_floating"]]
417 ["75" ["polyg" [16 2 1] "Polynomial evaluation H_floating"]]
418 ["76" ["cvthg" [16 8] "Convert H_floating to G_floating"]]
419 ["7c" ["clro" [16] "Clear octaword"]]
420 ["7d" ["movo" [16 16] "Move octaword"]]
421 ["7e" ["movao" [16 4] "Move address of octaword"]]
422 ["7f" ["pushao" [16] "Push address of octaword"]]
423 ["98" ["cvtfh" [4 16] "Convert F_floating to H_floating"]]
424 ["99" ["cvtfg" [4 8] "Convert F_floating to G_floating"]]
425 ["f6" ["cvthf" [16 4] "Convert H_floating to F_floating"]]
426 ["f7" ["cvthd" [16 8] "Convert H_floating to D_floating"]]>]
429 ["fd" ["bugl" [4] "BUGCHECK longword"]]
430 ["fe" ["bugw" [2] "BUGCHECK word"]]>]>>)>
433 (<NOT <FEATURE?"COMPILER">>
518 [%<- *17777777777* <* 12 512> 19> "spsto"]
519 [%<- *17777777777* <* 12 512> 15> "bindid"]
520 [%<- *17777777777* <* 12 512> 11> "stktop"]
521 [%<- *17777777777* <* 12 512> 7> "stkbot"]
522 [%<- *17777777777* <* 12 512> 3> "intflg"]>>)>