BSD 4_3_Tahoe release
[unix-history] / usr / src / bin / as / as.vax / instrs
##
## Copyright (c) 1982 Regents of the University of California.
## All rights reserved. The Berkeley software License Agreement
## specifies the terms and conditions for redistribution.
##
## @(#)instrs 5.1 (Berkeley) 4/30/85
##
## Robert R. Henry
## University of California, Berkeley
## Berkeley, CA
## February 6, 1982
##
## Updated 19 May 83 to include the page number in the
## architecture reference manual (1981 edition) the instruction
## is documented on, and to enumerate the instructions in the same
## order as the reference manual does.
##
## THIS FILE IS BOTH AN AWK SCRIPT AND THE DATA
##
## Instruction definitions for the VAX
##
## This file is processed by an awk script, viz:
## (echo "FLAVOR AS"; cat instrs) | awk -f instrs > as.instrs
## (echo "FLAVOR ADB"; cat instrs) | awk -f instrs > as.instrs
## (echo "FLAVOR SDB"; cat instrs) | awk -f instrs > as.instrs
## (echo "FLAVOR C2"; cat instrs) | awk -f instrs > c2.instrs
##
## The data in this file is shared between:
## as assembler
## c2 optimizer
## adb debugger
## sdb symbolic debugger
##
## The awk script reads itself, and produces macros understood
## by the appropriate consumer. The awk script determines how
## to interpret the file by looking for a line of the form:
## FLAVOR AS
## FLAVOR ADB (same as AS, but without pseudo instructions)
## FLAVOR SDB (same as ADB)
## FLAVOR C2 (radically different format for instructions)
## and proceeding accordingly. This line should be prepended to
## the front of this file.
##
## Lines starting with # are always comments to awk
## Lines starting with ## are always comments
## Lines starting with a single # are data lines, to be output.
##
## Empty lines are passed through
##
## field user(s) what
##
## $2 awk #: comment to awk
##
## $3 as, c2, adb instruction name
##
## $4 c2 instruction class
## $5 c2 instruction sub class
## HARD, TN1, TN2, TN3, TNX2, OP
##
## $6 as, adb escape opcode byte (NONE, NEW, ESCD, ESCF)
## $7 as, adb primary opcode byte
##
## $8 as, adb number of arguments
## $9 as, adb 1st operand: access A,V,R,W,M,I,B
## $10 as, adb 1st operand: type, BWLQOFDGH
##
## $11 as, adb 2nd operand: access
## ...
##
##
## These are the definitions used in this file:
## instruction class (c2)
## understood only by c2. If it is HARD, the second field
## is ignored.
## instruction subclass: (c2)
## HARD paired with the class
## S single valued attribute to C2
## TN1 class + type of 1st operand
## TN2 class + type of 2nd operand
## TN3 class + type of 3rd operand
## TNX2 class + type of 1st and 2nd operand
## OP class + type of 1st operand and # of args
## default class + subclass
##
## escape byte:
## CORE 1 byte opcodes in all VAXen
## NEW 1 byte opcodes only in newer VAXen
## ESCD 2 byte opcodes, escape byte of 0xFD, newer VAXen
## ESCF 2 byte opcodes, escape byte of 0xFF, newer VAXen
## code byte
## number of arguments
## Access type
## A for address, only in memory
## V for address [sic], either in memory or register
## W for writing
## R for reading
## M for modifying
## B for branch displacement
## I for xfc code
## Data types
## B byte
## W word
## L long
## Q quad
## O octa
## F f_float
## D d_float
## G g_float
## H h_float
##
## The order of instructions in this table is not critical;
## the clients take care of their own table construction and ordering.
## The instructions are grouped (more or less) into functional groups.
##
## The following is the awk program to interpret this table.
BEGIN{
flavor = AS;
##
## magic padding before the string for AS
## 4 bytes of 0's: seek position of the string
## 2 bytes, value 2, indicating core resident
## 2 bytes, value 0, length
##
ASpad = "\\0\\0\\0\\0" "\\2\\0";
}
{
if (NF == 0){
printf("\n");
next;
}
if ($1 == "FLAVOR"){
flavor = $2;
if (flavor == "SDB"){
flavor = "ADB";
}
next;
}
if ($1 != "#"){
next;
}
if ($6 == "MACR"){
if (flavor == "ADB"){
next;
}
if (flavor == "AS"){
if ($4 == "CBR")
$4 = "IJXXX";
printf("PSEUDO(\"%s\\0%o\\0%s\",", ASpad,length($3),$3);
printf("%s, %s),\n", $7, $4);
next;
}
if (flavor == "C2"){
if ($5 == "C2X")
next;
printf("\"%s\",", $3);
if ($4 == "CBR" && $5 != "JBR"){
printf("T(CBR,%s),\n", $5);
} else {
printf("%s,\n", $5);
}
next;
}
}
if (flavor == "C2"){
printf("\"%s\",", $3);
if ($4 == "HARD"){ # 0 value
printf("0,\n");
next;
}
if ($5 == "S"){ # single value
printf("%s,\n", $4);
next;
}
if ($5 == "TN1"){ # use type of 1st operand
printf("T(%s,TYP%s),\n", $4, $10);
next;
}
if ($5 == "TN3"){ # use type of 3rd operand
printf("T(%s,TYP%s),\n", $4, $14);
next;
}
if ($5 == "TNX2"){ # cross product of 1st and 2nd operand
printf("T(%s,U(TYP%s,TYP%s)),\n", $4, $10, $12);
next;
}
if ($5 == "OP"){ # arithmetic operator
printf("T(%s,U(TYP%s,OP%d)),\n", $4, $10, $8);
next;
}
printf("T(%s,%s),\n", $4, $5); # special value
next;
}
if (flavor == "AS"){
printf("OP(\"%s\\0%o\\0%s\", ", ASpad, length($3), $3);
printf("%s, %s, %d", $6, $7, $8);
} else {
printf("OP(\"%s\", %s, %s, %d", $3, $6, $7, $8);
}
if (flavor == "AS" || flavor == "ADB"){
for (i = 9; i+1 <= NF; i = i + 2){
printf(", A_%s%s", $i, $(i+1));
}
for (i = $8; i < 6; i++){
printf(",0");
}
printf("),\n");
}
}
##
##-------------------------------------------------------
##1 2 3 4 5 6 7 8 9
##
##
## PSEUDO (MACR) operators come first
## Data initializers
# 000a .byte IBYTE C2X MACR 0 VAR
# 000b .word IWORD WGEN MACR 0 VAR
# 000c .int IINT LGEN MACR 0 VAR
# 000d .long ILONG LGEN MACR 0 VAR
# 000a .quad IQUAD C2X MACR 0 VAR
# 000a .octa IOCTA C2X MACR 0 VAR
# 000a .float IFFLOAT C2X MACR 0 VAR
# 000a .double IDFLOAT C2X MACR 0 VAR
# 000a .ffloat IFFLOAT C2X MACR 0 VAR
# 000a .dfloat IDFLOAT C2X MACR 0 VAR
# 000a .gfloat IGFLOAT C2X MACR 0 VAR
# 000a .hfloat IHFLOAT C2X MACR 0 VAR
# 000a .space ISPACE C2X MACR 0 1
# 000a .fill IFILL C2X MACR 0 2
# 000a .ascii IASCII C2X MACR 0 VAR
# 000a .asciz IASCIZ C2X MACR 0 VAR
# 000a .data IDATA DATA MACR 0 1
# 000a .text ITEXT TEXT MACR 0 1
# 000a .align IALIGN ALIGN MACR 0 1
# 000a .line ILINENO C2X MACR 0 1
# 000a .file IFILE C2X MACR 0 1
# 000a .globl IGLOBAL EROU MACR 0 1
# 000a .comm ICOMM COMM MACR 0 2
# 000a .lcomm ILCOMM LCOMM MACR 0 2
# 000a .set ISET SET MACR 0 2
# 000a .lsym ILSYM C2X MACR 0 2
# 000a .org IORG C2X MACR 0 1
# 000a .stab ISTAB C2X MACR 0 6
# 000a .stabd ISTABDOT C2X MACR 0 3
# 000a .stabn ISTABNONE C2X MACR 0 3
# 000a .stabs ISTABSTR C2X MACR 0 3
# 000a .ABORT IABORT C2X MACR 0 0
## Pseudo jumps
# 000a jbc CBR JBC MACR 0xe1 1 B B
# 000a jlbc CBR JLBC MACR 0xe9 1 B B
# 000a jbs CBR JBS MACR 0xe0 1 B B
# 000a jlbs CBR JLBS MACR 0xe8 1 B B
# 000a jbcc CBR JBCC MACR 0xe5 1 B B
# 000a jbsc CBR JBSC MACR 0xe4 1 B B
# 000a jbcs CBR JBCS MACR 0xe3 1 B B
# 000a jbss CBR JBSS MACR 0xe2 1 B B
# 000a jbr CBR JBR MACR 0x11 1 B B
# 000a jcc CBR C2X MACR 0x1e 1 B B
# 000a jcs CBR C2X MACR 0x1f 1 B B
# 000a jvc CBR C2X MACR 0x1c 1 B B
# 000a jvs CBR C2X MACR 0x1d 1 B B
# 000a jlss CBR JLT MACR 0x19 1 B B
# 000a jlssu CBR JLO MACR 0x1f 1 B B
# 000a jleq CBR JLE MACR 0x15 1 B B
# 000a jlequ CBR JLOS MACR 0x1b 1 B B
# 000a jeql CBR JEQ MACR 0x13 1 B B
# 000a jeqlu CBR JEQ MACR 0x13 1 B B
# 000a jneq CBR JNE MACR 0x12 1 B B
# 000a jnequ CBR JNE MACR 0x12 1 B B
# 000a jgeq CBR JGE MACR 0x18 1 B B
# 000a jgequ CBR JHIS MACR 0x1e 1 B B
# 000a jgtr CBR JGT MACR 0x14 1 B B
# 000a jgtru CBR JHI MACR 0x1a 1 B B
##
## Registers
##
# 000a r0 REG C2X MACR 0 0
# 000a r1 REG C2X MACR 1 0
# 000a r2 REG C2X MACR 2 0
# 000a r3 REG C2X MACR 3 0
# 000a r4 REG C2X MACR 4 0
# 000a r5 REG C2X MACR 5 0
# 000a r6 REG C2X MACR 6 0
# 000a r7 REG C2X MACR 7 0
# 000a r8 REG C2X MACR 8 0
# 000a r9 REG C2X MACR 9 0
# 000a r10 REG C2X MACR 10 0
# 000a r11 REG C2X MACR 11 0
# 000a r12 REG C2X MACR 12 0
# 000a r13 REG C2X MACR 13 0
# 000a r14 REG C2X MACR 14 0
# 000a r15 REG C2X MACR 15 0
# 000a ap REG C2X MACR 12 0
# 000a fp REG C2X MACR 13 0
# 000a sp REG C2X MACR 14 0
# 000a pc REG C2X MACR 15 0
## Normal instructions
# 158a chmk HARD HARD CORE 0xbc 1 R W
# 158b chme HARD HARD CORE 0xbd 1 R W
# 158c chms HARD HARD CORE 0xbe 1 R W
# 158d chmu HARD HARD CORE 0xbf 1 R W
# 160a prober PROBER TN1 CORE 0x0c 3 R B R W A B
# 160a probew PROBEW TN1 CORE 0x0d 3 R B R W A B
# 161a rei HARD HARD CORE 0x02 0
# 163a ldpctx HARD HARD CORE 0x06 0
# 163b svpctx HARD HARD CORE 0x07 0
# 165a mtpr MTPR TN1 CORE 0xda 2 R L R L
# 165b mfpr MFPR TN1 CORE 0xdb 2 R L W L
# 168a xfc HARD HARD CORE 0xfc 0
# 169a bpt HARD HARD CORE 0x03 0
# 170a bugw HARD HARD ESCF 0xfe 1 R W
# 170b bugl HARD HARD ESCF 0xfd 1 R L
# 171a halt HARD HARD CORE 0x00 0
# 179a movb MOV TN1 CORE 0x90 2 R B W B
# 179b movw MOV TN1 CORE 0xb0 2 R W W W
# 179c movl MOV TN1 CORE 0xd0 2 R L W L
# 179d movq MOV TN1 CORE 0x7d 2 R Q W Q
# 179e movo MOV TN1 ESCD 0x7d 2 R O W O
# 179f movf MOV TN1 CORE 0x50 2 R F W F
# 179g movd MOV TN1 CORE 0x70 2 R D W D
# 179h movg MOV TN1 ESCD 0x50 2 R G W G
# 179i movh MOV TN1 ESCD 0x70 2 R H W H
# 180a pushl PUSH TN1 CORE 0xdd 1 R L
# 181a clrb CLR TN1 CORE 0x94 1 W B
# 181b clrw CLR TN1 CORE 0xb4 1 W W
# 181c clrf CLR TN1 CORE 0xd4 1 W F
# 181c clrl CLR TN1 CORE 0xd4 1 W L
# 181d clrd CLR TN1 CORE 0x7c 1 W D
# 181d clrg CLR TN1 CORE 0x7c 1 W G
# 181d clrq CLR TN1 CORE 0x7c 1 W Q
# 181e clrh CLR TN1 ESCD 0x7c 1 W H
# 181e clro CLR TN1 ESCD 0x7c 1 W O
# 182a mnegb NEG TN1 CORE 0x8e 2 R B W B
# 182b mnegw NEG TN1 CORE 0xae 2 R W W W
# 182c mnegl NEG TN1 CORE 0xce 2 R L W L
# 182d mnegf NEG TN1 CORE 0x52 2 R F W F
# 182e mnegg NEG TN1 ESCD 0x52 2 R G W G
# 182f mnegd NEG TN1 CORE 0x72 2 R D W D
# 182g mnegh NEG TN1 ESCD 0x72 2 R H W H
# 183a mcomb COM TN1 CORE 0x92 2 R B W B
# 183b mcomw COM TN1 CORE 0xb2 2 R W W W
# 183c mcoml COM TN1 CORE 0xd2 2 R L W L
# 184A cvtbw CVT TNX2 CORE 0x99 2 R B W W
# 184B cvtbl CVT TNX2 CORE 0x98 2 R B W L
# 184C cvtwb CVT TNX2 CORE 0x33 2 R W W B
# 184D cvtwl CVT TNX2 CORE 0x32 2 R W W L
# 184E cvtlb CVT TNX2 CORE 0xf6 2 R L W B
# 184F cvtlw CVT TNX2 CORE 0xf7 2 R L W W
# 184G cvtbf CVT TNX2 CORE 0x4c 2 R B W F
# 184H cvtbd CVT TNX2 CORE 0x6c 2 R B W D
# 184I cvtbg CVT TNX2 ESCD 0x4c 2 R B W G
# 184J cvtbh CVT TNX2 ESCD 0x6c 2 R B W H
# 184K cvtwf CVT TNX2 CORE 0x4d 2 R W W F
# 184L cvtwd CVT TNX2 CORE 0x6d 2 R W W D
# 184M cvtwg CVT TNX2 ESCD 0x4d 2 R W W G
# 184N cvtwh CVT TNX2 ESCD 0x6d 2 R W W H
# 184O cvtlf CVT TNX2 CORE 0x4e 2 R L W F
# 184P cvtld CVT TNX2 CORE 0x6e 2 R L W D
# 184Q cvtlg CVT TNX2 ESCD 0x4e 2 R L W G
# 184R cvtlh CVT TNX2 ESCD 0x6e 2 R L W H
# 184S cvtfb CVT TNX2 CORE 0x48 2 R F W B
# 184T cvtdb CVT TNX2 CORE 0x68 2 R D W B
# 184U cvtgb CVT TNX2 ESCD 0x48 2 R G W B
# 184V cvthb CVT TNX2 ESCD 0x68 2 R H W B
# 184W cvtfw CVT TNX2 CORE 0x49 2 R F W W
# 184X cvtdw CVT TNX2 CORE 0x69 2 R D W W
# 184Y cvtgw CVT TNX2 ESCD 0x49 2 R G W W
# 184Z cvthw CVT TNX2 ESCD 0x69 2 R H W W
# 184a cvtfl CVT TNX2 CORE 0x4a 2 R F W L
# 184b cvtrfl CVT TNX2 CORE 0x4b 2 R F W L
# 184c cvtdl CVT TNX2 CORE 0x6a 2 R D W L
# 184d cvtrdl CVT TNX2 CORE 0x6b 2 R D W L
# 184e cvtgl CVT TNX2 ESCD 0x4a 2 R G W L
# 184f cvtrgl CVT TNX2 ESCD 0x4b 2 R G W L
# 184g cvthl CVT TNX2 ESCD 0x6a 2 R H W L
# 184h cvtrhl CVT TNX2 ESCD 0x6b 2 R H W L
# 184i cvtfd CVT TNX2 CORE 0x56 2 R F W D
# 184j cvtfg CVT TNX2 ESCD 0x99 2 R F W G
# 184k cvtfh CVT TNX2 ESCD 0x98 2 R F W H
# 184l cvtdf CVT TNX2 CORE 0x76 2 R D W F
# 184m cvtdh CVT TNX2 ESCD 0x32 2 R D W H
# 184n cvtgf CVT TNX2 ESCD 0x33 2 R G W F
# 184o cvtgh CVT TNX2 ESCD 0x56 2 R G W H
# 184p cvthf CVT TNX2 ESCD 0xf6 2 R H W F
# 184q cvthd CVT TNX2 ESCD 0xf7 2 R H W D
# 184r cvthg CVT TNX2 ESCD 0x76 2 R H W G
# 187a movzbw MOVZ TNX2 CORE 0x9b 2 R B W W
# 187b movzbl MOVZ TNX2 CORE 0x9a 2 R B W L
# 187c movzwl MOVZ TNX2 CORE 0x3c 2 R W W L
# 188a cmpb CMP TN1 CORE 0x91 2 R B R B
# 188b cmpw CMP TN1 CORE 0xb1 2 R W R W
# 188c cmpl CMP TN1 CORE 0xd1 2 R L R L
# 188d cmpf CMP TN1 CORE 0x51 2 R F R F
# 188e cmpd CMP TN1 CORE 0x71 2 R D R D
# 188f cmpg CMP TN1 ESCD 0x51 2 R G R G
# 188g cmph CMP TN1 ESCD 0x71 2 R H R H
# 189a incb INC TN1 CORE 0x96 1 M B
# 189b incw INC TN1 CORE 0xb6 1 M W
# 189c incl INC TN1 CORE 0xd6 1 M L
# 190a tstb TST TN1 CORE 0x95 1 R B
# 190b tstw TST TN1 CORE 0xb5 1 R W
# 190c tstl TST TN1 CORE 0xd5 1 R L
# 190d tstf TST TN1 CORE 0x53 1 R F
# 190e tstd TST TN1 CORE 0x73 1 R D
# 190g tstg TST TN1 ESCD 0x53 1 R G
# 190h tsth TST TN1 ESCD 0x73 1 R H
# 191a addb2 ADD OP CORE 0x80 2 R B M B
# 191a addh2 ADD OP ESCD 0x60 2 R H M H
# 191b addb3 ADD OP CORE 0x81 3 R B R B W B
# 191b addh3 ADD OP ESCD 0x61 3 R H R H W H
# 191c addw2 ADD OP CORE 0xa0 2 R W M W
# 191d addw3 ADD OP CORE 0xa1 3 R W R W W W
# 191e addl2 ADD OP CORE 0xc0 2 R L M L
# 191f addl3 ADD OP CORE 0xc1 3 R L R L W L
# 191g addf2 ADD OP CORE 0x40 2 R F M F
# 191h addf3 ADD OP CORE 0x41 3 R F R F W F
# 191i addd2 ADD OP CORE 0x60 2 R D M D
# 191j addd3 ADD OP CORE 0x61 3 R D R D W D
# 191k addg2 ADD OP ESCD 0x40 2 R G M G
# 191l addg3 ADD OP ESCD 0x41 3 R G R G W G
# 193a adwc HARD HARD CORE 0xd8 2 R L M L
# 194a adawi HARD HARD CORE 0x58 2 R W M W
# 195c subb2 SUB OP CORE 0x82 2 R B M B
# 195d subb3 SUB OP CORE 0x83 3 R B R B W B
# 195e subw2 SUB OP CORE 0xa2 2 R W M W
# 195f subw3 SUB OP CORE 0xa3 3 R W R W W W
# 195g subl2 SUB OP CORE 0xc2 2 R L M L
# 195h subl3 SUB OP CORE 0xc3 3 R L R L W L
# 195i subf2 SUB OP CORE 0x42 2 R F M F
# 195j subf3 SUB OP CORE 0x43 3 R F R F W F
# 195k subd2 SUB OP CORE 0x62 2 R D M D
# 195l subd3 SUB OP CORE 0x63 3 R D R D W D
# 195m subg2 SUB OP ESCD 0x42 2 R G M G
# 195n subg3 SUB OP ESCD 0x43 3 R G R G W G
# 195o subh2 SUB OP ESCD 0x62 2 R H M H
# 195p subh3 SUB OP ESCD 0x63 3 R H R H W H
# 197a decb DEC TN1 CORE 0x97 1 M B
# 197b decw DEC TN1 CORE 0xb7 1 M W
# 197c decl DEC TN1 CORE 0xd7 1 M L
# 198a sbwc HARD HARD CORE 0xd9 2 R L M L
# 199a mulb2 MUL OP CORE 0x84 2 R B M B
# 199b mulb3 MUL OP CORE 0x85 3 R B R B W B
# 199c mulw2 MUL OP CORE 0xa4 2 R W M W
# 199d mulw3 MUL OP CORE 0xa5 3 R W R W W W
# 199e mull2 MUL OP CORE 0xc4 2 R L M L
# 199f mull3 MUL OP CORE 0xc5 3 R L R L W L
# 199g mulf2 MUL OP CORE 0x44 2 R F M F
# 199h mulf3 MUL OP CORE 0x45 3 R F R F W F
# 199i muld2 MUL OP CORE 0x64 2 R D M D
# 199j muld3 MUL OP CORE 0x65 3 R D R D W D
# 199k mulg2 MUL OP ESCD 0x44 2 R G M G
# 199l mulg3 MUL OP ESCD 0x45 3 R G R G W G
# 199m mulh2 MUL OP ESCD 0x64 2 R H M H
# 199n mulh3 MUL OP ESCD 0x65 3 R H R H W H
# 201a emodf HARD HARD CORE 0x54 5 R F R B R F W L W F
# 201a emul HARD HARD CORE 0x7a 4 R L R L R L W Q
# 201b emodd HARD HARD CORE 0x74 5 R D R B R D W L W D
# 201c emodg HARD HARD ESCD 0x54 5 R G R W R G W L W G
# 201d emodh HARD HARD ESCD 0x74 5 R H R W R H W L W H
# 204a divb2 DIV OP CORE 0x86 2 R B M B
# 204b divb3 DIV OP CORE 0x87 3 R B R B W B
# 204c divw2 DIV OP CORE 0xa6 2 R W M W
# 204d divw3 DIV OP CORE 0xa7 3 R W R W W W
# 204e divl2 DIV OP CORE 0xc6 2 R L M L
# 204f divl3 DIV OP CORE 0xc7 3 R L R L W L
# 204g divf2 DIV OP CORE 0x46 2 R F M F
# 204h divf3 DIV OP CORE 0x47 3 R F R F W F
# 204i divd2 DIV OP CORE 0x66 2 R D M D
# 204j divd3 DIV OP CORE 0x67 3 R D R D R D
# 204k divg2 DIV OP ESCD 0x46 2 R G M G
# 204l divg3 DIV OP ESCD 0x47 3 R G R G W G
# 204m divh2 DIV OP ESCD 0x66 2 R H M H
# 204n divh3 DIV OP ESCD 0x67 3 R H R H R H
# 205a ediv HARD HARD CORE 0x7b 4 R L R Q W L W L
# 207a bitb BIT TN1 CORE 0x93 2 R B R B
# 207a bitl BIT TN1 CORE 0xd3 2 R L R L
# 207a bitw BIT TN1 CORE 0xb3 2 R W R W
# 208a bisb2 BIS OP CORE 0x88 2 R B M B
# 208b bisb3 BIS OP CORE 0x89 3 R B R B W B
# 208c bisw2 BIS OP CORE 0xa8 2 R W M W
# 208d bisw3 BIS OP CORE 0xa9 3 R W R W W W
# 208e bisl2 BIS OP CORE 0xc8 2 R L M L
# 208f bisl3 BIS OP CORE 0xc9 3 R L R L W L
# 209a bicb2 BIC OP CORE 0x8a 2 R B M B
# 209b bicb3 BIC OP CORE 0x8b 3 R B R B W B
# 209c bicw2 BIC OP CORE 0xaa 2 R W M W
# 209d bicw3 BIC OP CORE 0xab 3 R W R W W W
# 209e bicl2 BIC OP CORE 0xca 2 R L M L
# 209f bicl3 BIC OP CORE 0xcb 3 R L R L W L
# 210a xorb2 XOR OP CORE 0x8c 2 R B M B
# 210b xorb3 XOR OP CORE 0x8d 3 R B R B W B
# 210c xorw2 XOR OP CORE 0xac 2 R W M W
# 210d xorw3 XOR OP CORE 0xad 3 R W R W W W
# 210e xorl2 XOR OP CORE 0xcc 2 R L M L
# 210f xorl3 XOR OP CORE 0xcd 3 R L R L W L
# 211a ashl ASH TN3 CORE 0x78 3 R B R L W L
# 211b ashq ASH TN3 CORE 0x79 3 R B R Q W Q
# 212a rotl HARD HARD CORE 0x9c 3 R B R L W L
# 214a polyf HARD HARD CORE 0x55 3 R F R W A B
# 214b polyd HARD HARD CORE 0x75 3 R D R W A B
# 214c polyg HARD HARD ESCD 0x55 3 R G R W A B
# 214d polyh HARD HARD ESCD 0x75 3 R H R W A B
# 220a pushr HARD HARD CORE 0xbb 1 R W
# 221a popr HARD HARD CORE 0xba 1 R W
# 222a movpsl HARD HARD CORE 0xdc 1 W L
# 223a bispsw HARD HARD CORE 0xb8 1 R W
# 223b bicpsw HARD HARD CORE 0xb9 1 R W
# 224a movab MOVA TN1 CORE 0x9e 2 A B W L
# 224a pushab PUSHA TN1 CORE 0x9f 1 A B
# 224b movaw MOVA TN1 CORE 0x3e 2 A W W L
# 224b pushaw PUSHA TN1 CORE 0x3f 1 A W
# 224c movaf MOVA TN1 CORE 0xde 2 A F W L
# 224c moval MOVA TN1 CORE 0xde 2 A L W L
# 224c pushaf PUSHA TN1 CORE 0xdf 1 A F
# 224c pushal PUSHA TN1 CORE 0xdf 1 A L
# 224d pushad PUSHA TN1 CORE 0x7f 1 A D
# 224d pushag PUSHA TN1 CORE 0x7f 1 A G
# 224d pushaq PUSHA TN1 CORE 0x7f 1 A Q
# 224e pushah PUSHA TN1 ESCD 0x7f 1 A H
# 224e pushao PUSHA TN1 ESCD 0x7f 1 A O
# 224f movad MOVA TN1 CORE 0x7e 2 A D W L
# 224f movag MOVA TN1 CORE 0x7e 2 A G W L
# 224f movaq MOVA TN1 CORE 0x7e 2 A Q W L
# 224g movah MOVA TN1 ESCD 0x7e 2 A H W L
# 224g movao MOVA TN1 ESCD 0x7e 2 A O W L
# 226a index HARD HARD CORE 0x0a 6 R L R L R L R L R L W L
# 232a insque HARD HARD CORE 0x0e 2 A B A B
# 234a remque HARD HARD CORE 0x0f 2 A B W L
# 240a insqhi HARD HARD NEW 0x5c 2 A B A Q
# 241a insqti HARD HARD NEW 0x5d 2 A B A Q
# 245a remqhi HARD HARD NEW 0x5e 2 A Q W L
# 248a remqti HARD HARD NEW 0x5f 2 A Q W L
# 251a ffc HARD HARD CORE 0xeb 4 R L R B V B W L
# 251b ffs HARD HARD CORE 0xea 4 R L R B V B W L
# 253a extv EXTV TN1 CORE 0xee 4 R L R B V B W L
# 253b extzv EXTZV TN1 CORE 0xef 4 R L R B V B W L
# 255a cmpv HARD HARD CORE 0xec 4 R L R B V B R L
# 255b cmpzv HARD HARD CORE 0xed 4 R L R B V B R L
# 257a insv INSV -1 CORE 0xf0 4 R L R L R B V B
# 261a bneq CBR JNE CORE 0x12 1 B B
# 261b bnequ CBR JNE CORE 0x12 1 B B
# 261c beql CBR JEQ CORE 0x13 1 B B
# 261d beqlu CBR JEQ CORE 0x13 1 B B
# 261e bgtr CBR JGT CORE 0x14 1 B B
# 261f bleq CBR JLE CORE 0x15 1 B B
# 261g bgeq CBR JGE CORE 0x18 1 B B
# 261h blss CBR JLT CORE 0x19 1 B B
# 261i bgtru CBR JHI CORE 0x1a 1 B B
# 261j blequ CBR JLOS CORE 0x1b 1 B B
# 261k bvc CBR 0 CORE 0x1c 1 B B
# 261l bvs CBR 0 CORE 0x1d 1 B B
# 261m bgequ CBR JHIS CORE 0x1e 1 B B
# 261n bcc CBR JHIS CORE 0x1e 1 B B
# 261o blssu CBR JLO CORE 0x1f 1 B B
# 261p bcs CBR JLO CORE 0x1f 1 B B
# 263a brb JBR S CORE 0x11 1 B B
# 263b brw JBR S CORE 0x31 1 B W
# 263c jmp JMP S CORE 0x17 1 A B
# 264a bbs CBR JBS CORE 0xe0 3 R L V B B B
# 264b bbc CBR JBC CORE 0xe1 3 R L V B B B
# 265a bbss CBR JBSS CORE 0xe2 3 R L V B B B
# 265b bbcs CBR JBCS CORE 0xe3 3 R L V B B B
# 265c bbsc CBR JBSC CORE 0xe4 3 R L V B B B
# 265d bbcc CBR JBCC CORE 0xe5 3 R L V B B B
# 266a bbssi CBR JBSS CORE 0xe6 3 R L V B B B
# 266b bbcci CBR JBCC CORE 0xe7 3 R L V B B B
# 267a blbs CBR JLBS CORE 0xe8 2 R L B B
# 267b blbc CBR JLBC CORE 0xe9 2 R L B B
# 268a acbb ACB TN1 CORE 0x9d 4 R B R B M B B W
# 268b acbw ACB TN1 CORE 0x3d 4 R W R W M W B W
# 268c acbl ACB TN1 CORE 0xf1 4 R L R L M L B W
# 268d acbf ACB TN1 CORE 0x4f 4 R F R F M F B W
# 268e acbd ACB TN1 CORE 0x6f 4 R D R D M D B W
# 268f acbg ACB TN1 ESCD 0x4f 4 R G R G M G B W
# 268g acbh ACB TN1 ESCD 0x6f 4 R H R H M H B W
# 270a aoblss AOBLSS S CORE 0xf2 3 R L M L B B
# 270b aobleq AOBLEQ S CORE 0xf3 3 R L M L B B
# 271a sobgeq SOBGEQ S CORE 0xf4 2 M L B B
# 271b sobgtr SOBGTR S CORE 0xf5 2 M L B B
# 273a caseb CASE TN1 CORE 0x8f 3 R B R B R B
# 273b casew CASE TN1 CORE 0xaf 3 R W R W R W
# 273c casel CASE TN1 CORE 0xcf 3 R L R L R L
# 275a bsbb HARD HARD CORE 0x10 1 B B
# 275b bsbw HARD HARD CORE 0x30 1 B W
# 275c jsb JSB S CORE 0x16 1 A B
# 276a rsb JBR RSB CORE 0x05 0
# 280a callg CALLS S CORE 0xfa 2 A B A B
# 282a calls CALLS S CORE 0xfb 2 R L A B
# 284a ret JBR RET CORE 0x04 0
# 288a movc3 MOVC3 S CORE 0x28 3 R W A B A B
# 288b movc5 HARD HARD CORE 0x2c 5 R W A B R B R W A B
# 290a movtc HARD HARD CORE 0x2e 6 R W A B R B A B R W A B
# 292a movtuc HARD HARD CORE 0x2f 6 R W A B R B A B R W A B
# 294a cmpc3 HARD HARD CORE 0x29 3 R W A B A B
# 294b cmpc5 HARD HARD CORE 0x2d 5 R W A B R B R W A B
# 297a scanc HARD HARD CORE 0x2a 4 R W A B A B R B
# 297b spanc HARD HARD CORE 0x2b 4 R W A B A B R B
# 299a locc HARD HARD CORE 0x3a 3 R B R W A B
# 299b skpc HARD HARD CORE 0x3b 3 R B R W A B
# 301a matchc HARD HARD CORE 0x39 4 R W A B R W A B
# 304a crc HARD HARD CORE 0x0b 4 A B R L R W A B
# 312a movp HARD HARD CORE 0x34 3 R W A B A B
# 313a cmpp3 HARD HARD CORE 0x35 3 R W A B A B
# 313b cmpp4 HARD HARD CORE 0x37 4 R W A B R W A B
# 314a addp4 HARD HARD CORE 0x20 4 R W A B R W A B
# 314b addp6 HARD HARD CORE 0x21 6 R W A B R W A B R W A B
# 316a subp4 HARD HARD CORE 0x22 4 R W A B R W A B
# 316b subp6 HARD HARD CORE 0x23 6 R W A B R W A B R W A B
# 318a mulp HARD HARD CORE 0x25 6 R W A B R W A B R W A B
# 319a divp HARD HARD CORE 0x27 6 R W A B R W A B R W A B
# 321a cvtlp HARD HARD CORE 0xf9 3 R L R W A B
# 322a cvtpl HARD HARD CORE 0x36 3 R W A B W L
# 323a cvtpt HARD HARD CORE 0x24 5 R W A B A B R W A B
# 325a cvttp HARD HARD CORE 0x26 5 R W A B A B R W A B
# 327a cvtps HARD HARD CORE 0x08 4 R W A B R W A B
# 329a cvtsp HARD HARD CORE 0x09 4 R W A B R W A B
# 330a ashp HARD HARD CORE 0xf8 6 R B R W A B R B R W A B
# 335a editpc HARD HARD CORE 0x38 4 R W A B A B A B
# 385a nop HARD HARD CORE 0x01 0
# 392a escd HARD HARD CORE 0xfd 0
# 392b esce HARD HARD CORE 0xfe 0
# 393c escf HARD HARD CORE 0xff 0