1## 2## Copyright (c) 1982 Regents of the University of California 3## @(#)instrs 4.6 11/11/82 4## 5## Robert R. Henry 6## University of California, Berkeley 7## Berkeley, CA 8## February 6, 1982 9## 10## THIS FILE IS BOTH AN AWK SCRIPT AND THE DATA 11## 12## Instruction definitions for the VAX 13## 14## This file is processed by an awk script, viz: 15## (echo "FLAVOR AS"; cat instrs) | awk -f instrs > as.instrs 16## (echo "FLAVOR ADB"; cat instrs) | awk -f instrs > as.instrs 17## (echo "FLAVOR SDB"; cat instrs) | awk -f instrs > as.instrs 18## (echo "FLAVOR C2"; cat instrs) | awk -f instrs > c2.instrs 19## 20## The data in this file is shared between: 21## as assembler 22## c2 optimizer 23## adb debugger 24## sdb symbolic debugger 25## 26## The awk script reads itself, and produces macros understood 27## by the appropriate consumer. The awk script determines how 28## to interpret the file by looking for a line of the form: 29## FLAVOR AS 30## FLAVOR ADB (same as AS, but without pseudo instructions) 31## FLAVOR SDB (same as ADB) 32## FLAVOR C2 (radically different format for instructions) 33## and proceeding accordingly. This line should be prepended to 34## the front of this file. 35## 36## Lines starting with # are always comments to awk 37## Lines starting with ## are always comments 38## Lines starting with a single # are data lines, to be output. 39## 40## Empty lines are passed through 41## 42## field user(s) what 43## 44## $1 awk #: comment to awk 45## 46## $2 as, c2, adb instruction name 47## 48## $3 c2 instruction class 49## $4 c2 instruction sub class 50## HARD, TN1, TN2, TN3, TNX2, OP 51## 52## $5 as, adb escape opcode byte (NONE, NEW, ESCD, ESCF) 53## $6 as, adb primary opcode byte 54## 55## $7 as, adb number of arguments 56## $8 as, adb 1st operand: access A,R,W,M,I,B 57## $9 as, adb 1st operand: type, BWLQOFDGH 58## 59## $10 as, adb 2nd operand: access 60## ... 61## 62## 63## These are the definitions used in this file: 64## instruction class (c2) 65## understood only by c2. If it is HARD, the second field 66## is ignored. 67## instruction subclass: (c2) 68## HARD paired with the class 69## S single valued attribute to C2 70## TN1 class + type of 1st operand 71## TN2 class + type of 2nd operand 72## TN3 class + type of 3rd operand 73## TNX2 class + type of 1st and 2nd operand 74## OP class + type of 1st operand and # of args 75## default class + subclass 76## 77## escape byte: 78## CORE 1 byte opcodes in all VAXen 79## NEW 1 byte opcodes only in newer VAXen 80## ESCD 2 byte opcodes, escape byte of 0xFD, newer VAXen 81## ESCF 2 byte opcodes, escape byte of 0xFF, newer VAXen 82## code byte 83## number of arguments 84## Access type 85## A for address 86## W for writing 87## R for reading 88## M for modifying 89## B for branch displacement 90## I for xfc code 91## Data types 92## B byte 93## W word 94## L long 95## Q quad 96## O octa 97## F f_float 98## D d_float 99## G g_float 100## H h_float 101## 102## The order of instructions in this table is not critical; 103## the clients take care of their own table construction and ordering. 104## The instructions are grouped (more or less) into functional groups. 105## 106## The following is the awk program to interpret this table. 107 108BEGIN{ 109 flavor = AS; 110} 111{ 112 if (NF == 0){ 113 printf("\n"); 114 next; 115 } 116 if ($1 == "FLAVOR"){ 117 flavor = $2; 118 if (flavor == "SDB"){ 119 flavor = "ADB"; 120 } 121 next; 122 } 123 if ($1 != "#"){ 124 next; 125 } 126 127 if ($5 == "MACR"){ 128 if (flavor == "ADB"){ 129 next; 130 } 131 if (flavor == "AS"){ 132 if ($3 == "CBR") 133 $3 = "IJXXX"; 134 printf("PSEUDO(\"%s\", %s, %s),\n", $2, $6, $3); 135 next; 136 } 137 if (flavor == "C2"){ 138 if ($4 == "C2X") 139 next; 140 printf("\"%s\",", $2); 141 if ($3 == "CBR" && $4 != "JBR"){ 142 printf("T(CBR,%s),\n", $4); 143 } else { 144 printf("%s,\n", $4); 145 } 146 next; 147 } 148 } 149 150 if (flavor == "C2"){ 151 printf("\"%s\",", $2); 152 if ($3 == "HARD"){ # 0 value 153 printf("0,\n"); 154 next; 155 } 156 if ($4 == "S"){ # single value 157 printf("%s,\n", $3); 158 next; 159 } 160 if ($4 == "TN1"){ # use type of 1st operand 161 printf("T(%s,TYP%s),\n", $3, $9); 162 next; 163 } 164 if ($4 == "TN3"){ # use type of 3rd operand 165 printf("T(%s,TYP%s),\n", $3, $13); 166 next; 167 } 168 if ($4 == "TNX2"){ # cross product of 1st and 2nd operand 169 printf("T(%s,U(TYP%s,TYP%s)),\n", $3, $9, $11); 170 next; 171 } 172 if ($4 == "OP"){ # arithmetic operator 173 printf("T(%s,U(TYP%s,OP%d)),\n", $3, $9, $7); 174 next; 175 } 176 printf("T(%s,%s),\n", $3, $4); # special value 177 next; 178 } 179 if (flavor == "AS" || flavor == "ADB"){ 180 printf("OP(\"%s\", %s, %s, %d", $2, $5, $6, $7); 181 for (i = 8; i+1 <= NF; i = i + 2){ 182 printf(", A_%s%s", $i, $(i+1)); 183 } 184 for (i = $7; i < 6; i++){ 185 printf(",0"); 186 } 187 printf("),\n"); 188 } 189} 190## 191##------------------------------------------------------- 192##1 2 3 4 5 6 7 8 9 193## 194## 195## PSEUDO (MACR) operators come first 196 197## Data initializers 198 199# .byte IBYTE C2X MACR 0 VAR 200# .word IWORD WGEN MACR 0 VAR 201# .int IINT LGEN MACR 0 VAR 202# .long ILONG LGEN MACR 0 VAR 203# .quad IQUAD C2X MACR 0 VAR 204# .octa IOCTA C2X MACR 0 VAR 205# .float IFFLOAT C2X MACR 0 VAR 206# .double IDFLOAT C2X MACR 0 VAR 207# .ffloat IFFLOAT C2X MACR 0 VAR 208# .dfloat IDFLOAT C2X MACR 0 VAR 209# .gfloat IGFLOAT C2X MACR 0 VAR 210# .hfloat IHFLOAT C2X MACR 0 VAR 211# .space ISPACE C2X MACR 0 1 212# .fill IFILL C2X MACR 0 2 213# .ascii IASCII C2X MACR 0 VAR 214# .asciz IASCIZ C2X MACR 0 VAR 215 216# .data IDATA DATA MACR 0 1 217# .text ITEXT TEXT MACR 0 1 218# .align IALIGN ALIGN MACR 0 1 219 220# .line ILINENO C2X MACR 0 1 221# .file IFILE C2X MACR 0 1 222 223# .globl IGLOBAL EROU MACR 0 1 224# .comm ICOMM COMM MACR 0 2 225# .lcomm ILCOMM LCOMM MACR 0 2 226# .set ISET SET MACR 0 2 227# .lsym ILSYM C2X MACR 0 2 228# .org IORG C2X MACR 0 1 229 230# .stab ISTAB C2X MACR 0 6 231# .stabd ISTABDOT C2X MACR 0 3 232# .stabn ISTABNONE C2X MACR 0 3 233# .stabs ISTABSTR C2X MACR 0 3 234 235# .ABORT IABORT C2X MACR 0 0 236 237## Pseudo jumps 238 239# jbc CBR JBC MACR 0xe1 1 B B 240# jlbc CBR JLBC MACR 0xe9 1 B B 241# jbs CBR JBS MACR 0xe0 1 B B 242# jlbs CBR JLBS MACR 0xe8 1 B B 243# jbcc CBR JBCC MACR 0xe5 1 B B 244# jbsc CBR JBSC MACR 0xe4 1 B B 245# jbcs CBR JBCS MACR 0xe3 1 B B 246# jbss CBR JBSS MACR 0xe2 1 B B 247 248# jbr CBR JBR MACR 0x11 1 B B 249# jcc CBR C2X MACR 0x1e 1 B B 250# jcs CBR C2X MACR 0x1f 1 B B 251# jvc CBR C2X MACR 0x1c 1 B B 252# jvs CBR C2X MACR 0x1d 1 B B 253# jlss CBR JLT MACR 0x19 1 B B 254# jlssu CBR JLO MACR 0x1f 1 B B 255# jleq CBR JLE MACR 0x15 1 B B 256# jlequ CBR JLOS MACR 0x1b 1 B B 257# jeql CBR JEQ MACR 0x13 1 B B 258# jeqlu CBR JEQ MACR 0x13 1 B B 259# jneq CBR JNE MACR 0x12 1 B B 260# jnequ CBR JNE MACR 0x12 1 B B 261# jgeq CBR JGE MACR 0x18 1 B B 262# jgequ CBR JHIS MACR 0x1e 1 B B 263# jgtr CBR JGT MACR 0x14 1 B B 264# jgtru CBR JHI MACR 0x1a 1 B B 265## 266## Registers 267## 268# r0 REG C2X MACR 0 0 269# r1 REG C2X MACR 1 0 270# r2 REG C2X MACR 2 0 271# r3 REG C2X MACR 3 0 272# r4 REG C2X MACR 4 0 273# r5 REG C2X MACR 5 0 274# r6 REG C2X MACR 6 0 275# r7 REG C2X MACR 7 0 276# r8 REG C2X MACR 8 0 277# r9 REG C2X MACR 9 0 278# r10 REG C2X MACR 10 0 279# r11 REG C2X MACR 11 0 280# r12 REG C2X MACR 12 0 281# r13 REG C2X MACR 13 0 282# r14 REG C2X MACR 14 0 283# r15 REG C2X MACR 15 0 284# ap REG C2X MACR 12 0 285# fp REG C2X MACR 13 0 286# sp REG C2X MACR 14 0 287# pc REG C2X MACR 15 0 288 289## Normal instructions 290 291# bicpsw HARD HARD CORE 0xb9 1 R W 292# bispsw HARD HARD CORE 0xb8 1 R W 293# movpsl HARD HARD CORE 0xdc 1 W L 294 295# ldpctx HARD HARD CORE 0x06 0 296# svpctx HARD HARD CORE 0x07 0 297# mfpr MFPR TN1 CORE 0xdb 2 R L W L 298# mtpr MTPR TN1 CORE 0xda 2 R L R L 299 300# prober PROBER TN1 CORE 0x0c 3 R B R W A B 301# probew PROBEW TN1 CORE 0x0d 3 R B R W A B 302 303# adawi HARD HARD CORE 0x58 2 R W M W 304 305# chme HARD HARD CORE 0xbd 1 R W 306# chmk HARD HARD CORE 0xbc 1 R W 307# chms HARD HARD CORE 0xbe 1 R W 308# chmu HARD HARD CORE 0xbf 1 R W 309 310# insque HARD HARD CORE 0x0e 2 A B A B 311# insqhi HARD HARD NEW 0x5c 2 A B A Q 312# insqti HARD HARD NEW 0x5d 2 A B A Q 313 314# remque HARD HARD CORE 0x0f 2 A B W L 315# remqhi HARD HARD NEW 0x5e 2 A Q W L 316# remqti HARD HARD NEW 0x5f 2 A Q W L 317 318# bpt HARD HARD CORE 0x03 0 319 320# escd HARD HARD CORE 0xfd 0 321# esce HARD HARD CORE 0xfe 0 322# escf HARD HARD CORE 0xff 0 323# xfc HARD HARD CORE 0xfc 0 324 325# bugw HARD HARD ESCF 0xfe 1 R W 326# bugl HARD HARD ESCF 0xfd 1 R L 327 328# nop HARD HARD CORE 0x01 0 329# halt HARD HARD CORE 0x00 0 330 331# crc HARD HARD CORE 0x0b 4 A B R L R W A B 332 333# movp HARD HARD CORE 0x34 3 R W A B A B 334# cvtlp HARD HARD CORE 0xf9 3 R L R W A B 335# cvtpl HARD HARD CORE 0x36 3 R W A B W L 336# cvttp HARD HARD CORE 0x26 5 R W A B A B R W A B 337# cvtpt HARD HARD CORE 0x24 5 R W A B A B R W A B 338# cvtps HARD HARD CORE 0x08 4 R W A B R W A B 339# cvtsp HARD HARD CORE 0x09 4 R W A B R W A B 340 341# addp4 HARD HARD CORE 0x20 4 R W A B R W A B 342# addp6 HARD HARD CORE 0x21 6 R W A B R W A B R W A B 343# subp4 HARD HARD CORE 0x22 4 R W A B R W A B 344# subp6 HARD HARD CORE 0x23 6 R W A B R W A B R W A B 345# mulp HARD HARD CORE 0x25 6 R W A B R W A B R W A B 346# divp HARD HARD CORE 0x27 6 R W A B R W A B R W A B 347# cmpp3 HARD HARD CORE 0x35 3 R W A B A B 348# cmpp4 HARD HARD CORE 0x37 4 R W A B R W A B 349 350# insv INSV -1 CORE 0xf0 4 R L R L R B W B 351# extv EXTV TN1 CORE 0xee 4 R L R B R B W L 352# extzv EXTZV TN1 CORE 0xef 4 R L R B R B W L 353# cmpv HARD HARD CORE 0xec 4 R L R B R B R L 354# cmpzv HARD HARD CORE 0xed 4 R L R B R B R L 355 356# editpc HARD HARD CORE 0x38 4 R W A B A B A B 357# locc HARD HARD CORE 0x3a 3 R B R W A B 358# matchc HARD HARD CORE 0x39 4 R W A B R W A B 359# skpc HARD HARD CORE 0x3b 3 R B R W A B 360# scanc HARD HARD CORE 0x2a 4 R W A B A B R B 361# spanc HARD HARD CORE 0x2b 4 R W A B A B R B 362# movc3 MOVC3 S CORE 0x28 3 R W A B A B 363# movc5 HARD HARD CORE 0x2c 5 R W A B R B R W A B 364# movtc HARD HARD CORE 0x2e 6 R W A B R B A B R W A B 365# movtuc HARD HARD CORE 0x2f 6 R W A B R B A B R W A B 366# cmpc3 HARD HARD CORE 0x29 3 R W A B A B 367# cmpc5 HARD HARD CORE 0x2d 5 R W A B R B R W A B 368 369# adwc HARD HARD CORE 0xd8 2 R L M L 370# sbwc HARD HARD CORE 0xd9 2 R L M L 371 372# rotl HARD HARD CORE 0x9c 3 R B R L W L 373# ashl ASH TN3 CORE 0x78 3 R B R L W L 374# ashp HARD HARD CORE 0xf8 6 R B R W A B R B R W A B 375# ashq ASH TN3 CORE 0x79 3 R B R Q W Q 376 377# jmp JMP S CORE 0x17 1 A B 378# brb JBR S CORE 0x11 1 B B 379# brw JBR S CORE 0x31 1 B W 380 381# bitb BIT TN1 CORE 0x93 2 R B R B 382# bitw BIT TN1 CORE 0xb3 2 R W R W 383# bitl BIT TN1 CORE 0xd3 2 R L R L 384 385# bbc CBR JBC CORE 0xe1 3 R L R B B B 386# bbcc CBR JBCC CORE 0xe5 3 R L R B B B 387# bbcci CBR JBCC CORE 0xe7 3 R L R B B B 388# bbcs CBR JBCS CORE 0xe3 3 R L R B B B 389# bbs CBR JBS CORE 0xe0 3 R L R B B B 390# bbsc CBR JBSC CORE 0xe4 3 R L R B B B 391# bbss CBR JBSS CORE 0xe2 3 R L R B B B 392# bbssi CBR JBSS CORE 0xe6 3 R L R B B B 393# bcc CBR JHIS CORE 0x1e 1 B B 394# bcs CBR JLO CORE 0x1f 1 B B 395# blbs CBR JLBS CORE 0xe8 2 R L B B 396# blbc CBR JLBC CORE 0xe9 2 R L B B 397 398# beql CBR JEQ CORE 0x13 1 B B 399# beqlu CBR JEQ CORE 0x13 1 B B 400# bgeq CBR JGE CORE 0x18 1 B B 401# bgequ CBR JHIS CORE 0x1e 1 B B 402# bgtr CBR JGT CORE 0x14 1 B B 403# bgtru CBR JHI CORE 0x1a 1 B B 404# bleq CBR JLE CORE 0x15 1 B B 405# blequ CBR JLOS CORE 0x1b 1 B B 406# blss CBR JLT CORE 0x19 1 B B 407# blssu CBR JLO CORE 0x1f 1 B B 408# bneq CBR JNE CORE 0x12 1 B B 409# bnequ CBR JNE CORE 0x12 1 B B 410# bvc CBR 0 CORE 0x1c 1 B B 411# bvs CBR 0 CORE 0x1d 1 B B 412 413# caseb CASE TN1 CORE 0x8f 3 R B R B R B 414# casew CASE TN1 CORE 0xaf 3 R W R W R W 415# casel CASE TN1 CORE 0xcf 3 R L R L R L 416 417# clrb CLR TN1 CORE 0x94 1 W B 418# clrw CLR TN1 CORE 0xb4 1 W W 419# clrl CLR TN1 CORE 0xd4 1 W L 420# clrq CLR TN1 CORE 0x7c 1 W Q 421# clro CLR TN1 ESCD 0x7c 1 W O 422# clrf CLR TN1 CORE 0xd4 1 W F 423# clrd CLR TN1 CORE 0x7c 1 W D 424# clrg CLR TN1 CORE 0x7c 1 W D 425# clrh CLR TN1 ESCD 0x7c 1 W H 426 427# cvtbw CVT TNX2 CORE 0x99 2 R B W W 428# cvtbl CVT TNX2 CORE 0x98 2 R B W L 429# cvtbf CVT TNX2 CORE 0x4c 2 R B W F 430# cvtbg CVT TNX2 ESCD 0x4c 2 R B W G 431# cvtbd CVT TNX2 CORE 0x6c 2 R B W D 432# cvtbh CVT TNX2 ESCD 0x6c 2 R B W H 433 434# cvtwb CVT TNX2 CORE 0x33 2 R W W B 435# cvtwl CVT TNX2 CORE 0x32 2 R W W L 436# cvtwf CVT TNX2 CORE 0x4d 2 R W W F 437# cvtwg CVT TNX2 ESCD 0x4d 2 R W W G 438# cvtwd CVT TNX2 CORE 0x6d 2 R W W D 439# cvtwh CVT TNX2 ESCD 0x6d 2 R W W H 440 441# cvtlb CVT TNX2 CORE 0xf6 2 R L W B 442# cvtlw CVT TNX2 CORE 0xf7 2 R L W W 443# cvtlf CVT TNX2 CORE 0x4e 2 R L W F 444# cvtlg CVT TNX2 ESCD 0x4e 2 R L W G 445# cvtld CVT TNX2 CORE 0x6e 2 R L W D 446# cvtlh CVT TNX2 ESCD 0x6e 2 R L W H 447 448# cvtfb CVT TNX2 CORE 0x48 2 R F W B 449# cvtfw CVT TNX2 CORE 0x49 2 R F W W 450# cvtfl CVT TNX2 CORE 0x4a 2 R F W L 451# cvtrfl CVT TNX2 CORE 0x4b 2 R F W L 452# cvtfd CVT TNX2 CORE 0x56 2 R F W D 453# cvtfg CVT TNX2 ESCD 0x99 2 R F W G 454# cvtfh CVT TNX2 ESCD 0x98 2 R F W H 455 456# cvtgb CVT TNX2 ESCD 0x48 2 R G W B 457# cvtgw CVT TNX2 ESCD 0x49 2 R G W W 458# cvtgl CVT TNX2 ESCD 0x4a 2 R G W L 459# cvtrgl CVT TNX2 ESCD 0x4b 2 R G W L 460# cvtgf CVT TNX2 ESCD 0x33 2 R G W F 461# cvtgh CVT TNX2 ESCD 0x56 2 R G W H 462 463# cvtdb CVT TNX2 CORE 0x68 2 R D W B 464# cvtdw CVT TNX2 CORE 0x69 2 R D W W 465# cvtdl CVT TNX2 CORE 0x6a 2 R D W L 466# cvtrdl CVT TNX2 CORE 0x6b 2 R D W L 467# cvtdf CVT TNX2 CORE 0x76 2 R D W F 468# cvtdh CVT TNX2 ESCD 0x32 2 R D W H 469 470# cvthb CVT TNX2 ESCD 0x68 2 R H W B 471# cvthw CVT TNX2 ESCD 0x69 2 R H W W 472# cvthl CVT TNX2 ESCD 0x6a 2 R H W L 473# cvtrhl CVT TNX2 ESCD 0x6b 2 R H W L 474# cvthf CVT TNX2 ESCD 0xf6 2 R H W F 475# cvthd CVT TNX2 ESCD 0xf7 2 R H W D 476# cvthg CVT TNX2 ESCD 0x76 2 R H W G 477 478# ffc HARD HARD CORE 0xeb 4 R L R B R B W L 479# ffs HARD HARD CORE 0xea 4 R L R B R B W L 480 481# index HARD HARD CORE 0x0a 6 R L R L R L R L R L W L 482 483# rei HARD HARD CORE 0x02 0 484 485# callg CALLS S CORE 0xfa 2 A B A B 486# calls CALLS S CORE 0xfb 2 R L A B 487# ret JBR RET CORE 0x04 0 488 489# jsb JSB S CORE 0x16 1 A B 490# bsbb HARD HARD CORE 0x10 1 B B 491# bsbw HARD HARD CORE 0x30 1 B W 492# rsb JBR RSB CORE 0x05 0 493 494# pushr HARD HARD CORE 0xbb 1 R W 495# popr HARD HARD CORE 0xba 1 R W 496 497# mnegb NEG TN1 CORE 0x8e 2 R B W B 498# mnegw NEG TN1 CORE 0xae 2 R W W L 499# mnegl NEG TN1 CORE 0xce 2 R L W L 500# mnegf NEG TN1 CORE 0x52 2 R F W F 501# mnegg NEG TN1 ESCD 0x52 2 R G W G 502# mnegd NEG TN1 CORE 0x72 2 R D W D 503# mnegh NEG TN1 ESCD 0x72 2 R H W H 504 505# movab MOVA TN1 CORE 0x9e 2 A B W L 506# movaw MOVA TN1 CORE 0x3e 2 A W W L 507# moval MOVA TN1 CORE 0xde 2 A L W L 508# movaq MOVA TN1 CORE 0x7e 2 A Q W L 509# movao MOVA TN1 ESCD 0x7e 2 A O W L 510# movaf MOVA TN1 CORE 0xde 2 A F W L 511# movad MOVA TN1 CORE 0x7e 2 A D W L 512# movag MOVA TN1 CORE 0x7e 2 A G W L 513# movah MOVA TN1 ESCD 0x7e 2 A H W L 514 515# movb MOV TN1 CORE 0x90 2 R B W B 516# movw MOV TN1 CORE 0xb0 2 R W W W 517# movl MOV TN1 CORE 0xd0 2 R L W L 518# movf MOV TN1 CORE 0x50 2 R F W F 519# movq MOV TN1 CORE 0x7d 2 R Q W Q 520# movo MOV TN1 ESCD 0x7d 2 R O W O 521# movg MOV TN1 ESCD 0x50 2 R G W G 522# movd MOV TN1 CORE 0x70 2 R D W D 523# movh MOV TN1 ESCD 0x70 2 R H W H 524 525# movzbl MOVZ TNX2 CORE 0x9a 2 R B W L 526# movzbw MOVZ TNX2 CORE 0x9b 2 R B W W 527# movzwl MOVZ TNX2 CORE 0x3c 2 R W W L 528 529# pushl PUSH TN1 CORE 0xdd 1 R L 530# pushab PUSHA TN1 CORE 0x9f 1 A B 531# pushaw PUSHA TN1 CORE 0x3f 1 A W 532# pushal PUSHA TN1 CORE 0xdf 1 A L 533# pushaq PUSHA TN1 CORE 0x7f 1 A Q 534# pushao PUSHA TN1 ESCD 0x7f 1 A O 535# pushaf PUSHA TN1 CORE 0xdf 1 A F 536# pushad PUSHA TN1 CORE 0x7f 1 A D 537# pushag PUSHA TN1 CORE 0x7f 1 A G 538# pushah PUSHA TN1 ESCD 0x7f 1 A H 539 540# acbb ACB TN1 CORE 0x9d 4 R B R B M B B W 541# acbw ACB TN1 CORE 0x3d 4 R W R W M W B W 542# acbl ACB TN1 CORE 0xf1 4 R L R L M L B W 543# acbf ACB TN1 CORE 0x4f 4 R F R F M F B W 544# acbg ACB TN1 ESCD 0x4f 4 R G R G M G B W 545# acbd ACB TN1 CORE 0x6f 4 R D R D M D B W 546# acbh ACB TN1 ESCD 0x6f 4 R H R H M H B W 547 548# aobleq AOBLEQ S CORE 0xf3 3 R L M L B B 549# aoblss AOBLSS S CORE 0xf2 3 R L M L B B 550# sobgeq SOBGEQ S CORE 0xf4 2 M L B B 551# sobgtr SOBGTR S CORE 0xf5 2 M L B B 552 553# addb2 ADD OP CORE 0x80 2 R B M B 554# addb3 ADD OP CORE 0x81 3 R B R B W B 555# addw2 ADD OP CORE 0xa0 2 R W M W 556# addw3 ADD OP CORE 0xa1 3 R W R W W W 557# addl2 ADD OP CORE 0xc0 2 R L M L 558# addl3 ADD OP CORE 0xc1 3 R L R L W L 559# addf2 ADD OP CORE 0x40 2 R F M F 560# addf3 ADD OP CORE 0x41 3 R F R F W F 561# addg2 ADD OP ESCD 0x40 2 R G M G 562# addg3 ADD OP ESCD 0x41 3 R G R G W G 563# addd2 ADD OP CORE 0x60 2 R D M D 564# addd3 ADD OP CORE 0x61 3 R D R D W D 565# addh2 ADD OP ESCD 0x60 2 R H M H 566# addh3 ADD OP ESCD 0x61 3 R H R H W H 567 568# subb2 SUB OP CORE 0x82 2 R B M B 569# subb3 SUB OP CORE 0x83 3 R B R B W B 570# subw2 SUB OP CORE 0xa2 2 R W M W 571# subw3 SUB OP CORE 0xa3 3 R W R W W W 572# subl2 SUB OP CORE 0xc2 2 R L M L 573# subl3 SUB OP CORE 0xc3 3 R L R L W L 574# subf2 SUB OP CORE 0x42 2 R F M F 575# subf3 SUB OP CORE 0x43 3 R F R F W F 576# subg2 SUB OP ESCD 0x42 2 R G M G 577# subg3 SUB OP ESCD 0x43 3 R G R G W G 578# subd2 SUB OP CORE 0x62 2 R D M D 579# subd3 SUB OP CORE 0x63 3 R D R D W D 580# subh2 SUB OP ESCD 0x62 2 R H M H 581# subh3 SUB OP ESCD 0x63 3 R H R H W H 582 583# mulb2 MUL OP CORE 0x84 2 R B M B 584# mulb3 MUL OP CORE 0x85 3 R B R B W B 585# mulw2 MUL OP CORE 0xa4 2 R W M W 586# mulw3 MUL OP CORE 0xa5 3 R W R W W W 587# mull2 MUL OP CORE 0xc4 2 R L M L 588# mull3 MUL OP CORE 0xc5 3 R L R L W L 589# mulf2 MUL OP CORE 0x44 2 R F M F 590# mulf3 MUL OP CORE 0x45 3 R F R F W F 591# mulg2 MUL OP ESCD 0x44 2 R G M G 592# mulg3 MUL OP ESCD 0x45 3 R G R G W G 593# muld2 MUL OP CORE 0x64 2 R D M D 594# muld3 MUL OP CORE 0x65 3 R D R D W D 595# mulh2 MUL OP ESCD 0x64 2 R H M H 596# mulh3 MUL OP ESCD 0x65 3 R H R H W H 597 598# divb2 DIV OP CORE 0x86 2 R B M B 599# divb3 DIV OP CORE 0x87 3 R B R B W B 600# divw2 DIV OP CORE 0xa6 2 R W M W 601# divw3 DIV OP CORE 0xa7 3 R W R W W W 602# divl2 DIV OP CORE 0xc6 2 R L M L 603# divl3 DIV OP CORE 0xc7 3 R L R L W L 604# divf2 DIV OP CORE 0x46 2 R F M F 605# divf3 DIV OP CORE 0x47 3 R F R F W F 606# divg2 DIV OP ESCD 0x46 2 R G M G 607# divg3 DIV OP ESCD 0x47 3 R G R G W G 608# divd2 DIV OP CORE 0x66 2 R D M D 609# divd3 DIV OP CORE 0x67 3 R D R D R D 610# divh2 DIV OP ESCD 0x66 2 R H M H 611# divh3 DIV OP ESCD 0x67 3 R H R H R H 612 613# incb INC TN1 CORE 0x96 1 M B 614# incw INC TN1 CORE 0xb6 1 M W 615# incl INC TN1 CORE 0xd6 1 M L 616# decb DEC TN1 CORE 0x97 1 M B 617# decl DEC TN1 CORE 0xd7 1 M L 618# decw DEC TN1 CORE 0xb7 1 M W 619 620# cmpb CMP TN1 CORE 0x91 2 R B R B 621# cmpw CMP TN1 CORE 0xb1 2 R W R W 622# cmpl CMP TN1 CORE 0xd1 2 R L R L 623# cmpf CMP TN1 CORE 0x51 2 R F R F 624# cmpg CMP TN1 ESCD 0x51 2 R G R G 625# cmpd CMP TN1 CORE 0x71 2 R D R D 626# cmph CMP TN1 ESCD 0x71 2 R H R H 627 628# tstb TST TN1 CORE 0x95 1 R B 629# tstw TST TN1 CORE 0xb5 1 R W 630# tstl TST TN1 CORE 0xd5 1 R L 631# tstf TST TN1 CORE 0x53 1 R F 632# tstg TST TN1 ESCD 0x53 1 R G 633# tstd TST TN1 CORE 0x73 1 R D 634# tsth TST TN1 ESCD 0x73 1 R H 635 636# polyf HARD HARD CORE 0x55 3 R F R W A B 637# polyg HARD HARD ESCD 0x55 3 R G R W A B 638# polyd HARD HARD CORE 0x75 3 R D R W A B 639# polyh HARD HARD ESCD 0x75 3 R H R W A B 640 641# emul HARD HARD CORE 0x7a 4 R L R L R L W Q 642# ediv HARD HARD CORE 0x7b 4 R L R Q W L W L 643# emodf HARD HARD CORE 0x54 5 R F R B R F W L W F 644# emodd HARD HARD CORE 0x74 5 R D R B R D W L W D 645# emodg HARD HARD ESCD 0x54 5 R G R W R G W L W G 646# emodh HARD HARD ESCD 0x74 5 R H R W R H W L W H 647 648# mcomb COM TN1 CORE 0x92 2 R B W B 649# mcomw COM TN1 CORE 0xb2 2 R W W W 650# mcoml COM TN1 CORE 0xd2 2 R L W L 651 652# bicl2 BIC OP CORE 0xca 2 R L M L 653# bicl3 BIC OP CORE 0xcb 3 R L R L W L 654# bicw2 BIC OP CORE 0xaa 2 R W M W 655# bicw3 BIC OP CORE 0xab 3 R W R W W W 656# bicb2 BIC OP CORE 0x8a 2 R B M B 657# bicb3 BIC OP CORE 0x8b 3 R B R B W B 658 659# bisb2 BIS OP CORE 0x88 2 R B M B 660# bisb3 BIS OP CORE 0x89 3 R B R B W B 661# bisw2 BIS OP CORE 0xa8 2 R W M W 662# bisw3 BIS OP CORE 0xa9 3 R W R W W W 663# bisl2 BIS OP CORE 0xc8 2 R L M L 664# bisl3 BIS OP CORE 0xc9 3 R L R L W L 665 666# xorb2 XOR OP CORE 0x8c 2 R B M B 667# xorb3 XOR OP CORE 0x8d 3 R B R B W B 668# xorw2 XOR OP CORE 0xac 2 R W M W 669# xorw3 XOR OP CORE 0xad 3 R W R W W W 670# xorl2 XOR OP CORE 0xcc 2 R L M L 671# xorl3 XOR OP CORE 0xcd 3 R L R L W L 672