summaryrefslogtreecommitdiff
path: root/src/cmd/objdump/x86.go
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmd/objdump/x86.go')
-rw-r--r--src/cmd/objdump/x86.go13800
1 files changed, 13800 insertions, 0 deletions
diff --git a/src/cmd/objdump/x86.go b/src/cmd/objdump/x86.go
new file mode 100644
index 000000000..8e741331f
--- /dev/null
+++ b/src/cmd/objdump/x86.go
@@ -0,0 +1,13800 @@
+// DO NOT EDIT. Generated by code.google.com/p/rsc/cmd/bundle
+// bundle -p main -x x86_ rsc.io/x86/x86asm
+
+/* decode.go */
+
+// Copyright 2014 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// Table-driven decoding of x86 instructions.
+
+package main
+
+import (
+ "bytes"
+ "encoding/binary"
+ "errors"
+ "fmt"
+ "runtime"
+ "strings"
+)
+
+// Set trace to true to cause the decoder to print the PC sequence
+// of the executed instruction codes. This is typically only useful
+// when you are running a test of a single input case.
+const x86_trace = false
+
+// A decodeOp is a single instruction in the decoder bytecode program.
+//
+// The decodeOps correspond to consuming and conditionally branching
+// on input bytes, consuming additional fields, and then interpreting
+// consumed data as instruction arguments. The names of the xRead and xArg
+// operations are taken from the Intel manual conventions, for example
+// Volume 2, Section 3.1.1, page 487 of
+// http://www.intel.com/content/dam/www/public/us/en/documents/manuals/64-ia-32-architectures-software-developer-manual-325462.pdf
+//
+// The actual decoding program is generated by ../x86map.
+//
+// TODO(rsc): We may be able to merge various of the memory operands
+// since we don't care about, say, the distinction between m80dec and m80bcd.
+// Similarly, mm and mm1 have identical meaning, as do xmm and xmm1.
+
+type x86_decodeOp uint16
+
+const (
+ x86_xFail x86_decodeOp = iota // invalid instruction (return)
+ x86_xMatch // completed match
+ x86_xJump // jump to pc
+
+ x86_xCondByte // switch on instruction byte value
+ x86_xCondSlashR // read and switch on instruction /r value
+ x86_xCondPrefix // switch on presence of instruction prefix
+ x86_xCondIs64 // switch on 64-bit processor mode
+ x86_xCondDataSize // switch on operand size
+ x86_xCondAddrSize // switch on address size
+ x86_xCondIsMem // switch on memory vs register argument
+
+ x86_xSetOp // set instruction opcode
+
+ x86_xReadSlashR // read /r
+ x86_xReadIb // read ib
+ x86_xReadIw // read iw
+ x86_xReadId // read id
+ x86_xReadIo // read io
+ x86_xReadCb // read cb
+ x86_xReadCw // read cw
+ x86_xReadCd // read cd
+ x86_xReadCp // read cp
+ x86_xReadCm // read cm
+
+ x86_xArg1 // arg 1
+ x86_xArg3 // arg 3
+ x86_xArgAL // arg AL
+ x86_xArgAX // arg AX
+ x86_xArgCL // arg CL
+ x86_xArgCR0dashCR7 // arg CR0-CR7
+ x86_xArgCS // arg CS
+ x86_xArgDR0dashDR7 // arg DR0-DR7
+ x86_xArgDS // arg DS
+ x86_xArgDX // arg DX
+ x86_xArgEAX // arg EAX
+ x86_xArgEDX // arg EDX
+ x86_xArgES // arg ES
+ x86_xArgFS // arg FS
+ x86_xArgGS // arg GS
+ x86_xArgImm16 // arg imm16
+ x86_xArgImm32 // arg imm32
+ x86_xArgImm64 // arg imm64
+ x86_xArgImm8 // arg imm8
+ x86_xArgImm8u // arg imm8 but record as unsigned
+ x86_xArgImm16u // arg imm8 but record as unsigned
+ x86_xArgM // arg m
+ x86_xArgM128 // arg m128
+ x86_xArgM1428byte // arg m14/28byte
+ x86_xArgM16 // arg m16
+ x86_xArgM16and16 // arg m16&16
+ x86_xArgM16and32 // arg m16&32
+ x86_xArgM16and64 // arg m16&64
+ x86_xArgM16colon16 // arg m16:16
+ x86_xArgM16colon32 // arg m16:32
+ x86_xArgM16colon64 // arg m16:64
+ x86_xArgM16int // arg m16int
+ x86_xArgM2byte // arg m2byte
+ x86_xArgM32 // arg m32
+ x86_xArgM32and32 // arg m32&32
+ x86_xArgM32fp // arg m32fp
+ x86_xArgM32int // arg m32int
+ x86_xArgM512byte // arg m512byte
+ x86_xArgM64 // arg m64
+ x86_xArgM64fp // arg m64fp
+ x86_xArgM64int // arg m64int
+ x86_xArgM8 // arg m8
+ x86_xArgM80bcd // arg m80bcd
+ x86_xArgM80dec // arg m80dec
+ x86_xArgM80fp // arg m80fp
+ x86_xArgM94108byte // arg m94/108byte
+ x86_xArgMm // arg mm
+ x86_xArgMm1 // arg mm1
+ x86_xArgMm2 // arg mm2
+ x86_xArgMm2M64 // arg mm2/m64
+ x86_xArgMmM32 // arg mm/m32
+ x86_xArgMmM64 // arg mm/m64
+ x86_xArgMem // arg mem
+ x86_xArgMoffs16 // arg moffs16
+ x86_xArgMoffs32 // arg moffs32
+ x86_xArgMoffs64 // arg moffs64
+ x86_xArgMoffs8 // arg moffs8
+ x86_xArgPtr16colon16 // arg ptr16:16
+ x86_xArgPtr16colon32 // arg ptr16:32
+ x86_xArgR16 // arg r16
+ x86_xArgR16op // arg r16 with +rw in opcode
+ x86_xArgR32 // arg r32
+ x86_xArgR32M16 // arg r32/m16
+ x86_xArgR32M8 // arg r32/m8
+ x86_xArgR32op // arg r32 with +rd in opcode
+ x86_xArgR64 // arg r64
+ x86_xArgR64M16 // arg r64/m16
+ x86_xArgR64op // arg r64 with +rd in opcode
+ x86_xArgR8 // arg r8
+ x86_xArgR8op // arg r8 with +rb in opcode
+ x86_xArgRAX // arg RAX
+ x86_xArgRDX // arg RDX
+ x86_xArgRM // arg r/m
+ x86_xArgRM16 // arg r/m16
+ x86_xArgRM32 // arg r/m32
+ x86_xArgRM64 // arg r/m64
+ x86_xArgRM8 // arg r/m8
+ x86_xArgReg // arg reg
+ x86_xArgRegM16 // arg reg/m16
+ x86_xArgRegM32 // arg reg/m32
+ x86_xArgRegM8 // arg reg/m8
+ x86_xArgRel16 // arg rel16
+ x86_xArgRel32 // arg rel32
+ x86_xArgRel8 // arg rel8
+ x86_xArgSS // arg SS
+ x86_xArgST // arg ST, aka ST(0)
+ x86_xArgSTi // arg ST(i) with +i in opcode
+ x86_xArgSreg // arg Sreg
+ x86_xArgTR0dashTR7 // arg TR0-TR7
+ x86_xArgXmm // arg xmm
+ x86_xArgXMM0 // arg <XMM0>
+ x86_xArgXmm1 // arg xmm1
+ x86_xArgXmm2 // arg xmm2
+ x86_xArgXmm2M128 // arg xmm2/m128
+ x86_xArgXmm2M16 // arg xmm2/m16
+ x86_xArgXmm2M32 // arg xmm2/m32
+ x86_xArgXmm2M64 // arg xmm2/m64
+ x86_xArgXmmM128 // arg xmm/m128
+ x86_xArgXmmM32 // arg xmm/m32
+ x86_xArgXmmM64 // arg xmm/m64
+ x86_xArgRmf16 // arg r/m16 but force mod=3
+ x86_xArgRmf32 // arg r/m32 but force mod=3
+ x86_xArgRmf64 // arg r/m64 but force mod=3
+)
+
+// instPrefix returns an Inst describing just one prefix byte.
+// It is only used if there is a prefix followed by an unintelligible
+// or invalid instruction byte sequence.
+func x86_instPrefix(b byte, mode int) (x86_Inst, error) {
+ // When tracing it is useful to see what called instPrefix to report an error.
+ if x86_trace {
+ _, file, line, _ := runtime.Caller(1)
+ fmt.Printf("%s:%d\n", file, line)
+ }
+ p := x86_Prefix(b)
+ switch p {
+ case x86_PrefixDataSize:
+ if mode == 16 {
+ p = x86_PrefixData32
+ } else {
+ p = x86_PrefixData16
+ }
+ case x86_PrefixAddrSize:
+ if mode == 32 {
+ p = x86_PrefixAddr16
+ } else {
+ p = x86_PrefixAddr32
+ }
+ }
+ // Note: using composite literal with Prefix key confuses 'bundle' tool.
+ inst := x86_Inst{Len: 1}
+ inst.Prefix = x86_Prefixes{p}
+ return inst, nil
+}
+
+// truncated reports a truncated instruction.
+// For now we use instPrefix but perhaps later we will return
+// a specific error here.
+func x86_truncated(src []byte, mode int) (x86_Inst, error) {
+ // return Inst{}, len(src), ErrTruncated
+ return x86_instPrefix(src[0], mode) // too long
+}
+
+// These are the errors returned by Decode.
+var (
+ x86_ErrInvalidMode = errors.New("invalid x86 mode in Decode")
+ x86_ErrTruncated = errors.New("truncated instruction")
+ x86_ErrUnrecognized = errors.New("unrecognized instruction")
+)
+
+// decoderCover records coverage information for which parts
+// of the byte code have been executed.
+// TODO(rsc): This is for testing. Only use this if a flag is given.
+var x86_decoderCover []bool
+
+// Decode decodes the leading bytes in src as a single instruction.
+// The mode arguments specifies the assumed processor mode:
+// 16, 32, or 64 for 16-, 32-, and 64-bit execution modes.
+func x86_Decode(src []byte, mode int) (inst x86_Inst, err error) {
+ return x86_decode1(src, mode, false)
+}
+
+// decode1 is the implementation of Decode but takes an extra
+// gnuCompat flag to cause it to change its behavior to mimic
+// bugs (or at least unique features) of GNU libopcodes as used
+// by objdump. We don't believe that logic is the right thing to do
+// in general, but when testing against libopcodes it simplifies the
+// comparison if we adjust a few small pieces of logic.
+// The affected logic is in the conditional branch for "mandatory" prefixes,
+// case xCondPrefix.
+func x86_decode1(src []byte, mode int, gnuCompat bool) (x86_Inst, error) {
+ switch mode {
+ case 16, 32, 64:
+ // ok
+ // TODO(rsc): 64-bit mode not tested, probably not working.
+ default:
+ return x86_Inst{}, x86_ErrInvalidMode
+ }
+
+ // Maximum instruction size is 15 bytes.
+ // If we need to read more, return 'truncated instruction.
+ if len(src) > 15 {
+ src = src[:15]
+ }
+
+ var (
+ // prefix decoding information
+ pos = 0 // position reading src
+ nprefix = 0 // number of prefixes
+ lockIndex = -1 // index of LOCK prefix in src and inst.Prefix
+ repIndex = -1 // index of REP/REPN prefix in src and inst.Prefix
+ segIndex = -1 // index of Group 2 prefix in src and inst.Prefix
+ dataSizeIndex = -1 // index of Group 3 prefix in src and inst.Prefix
+ addrSizeIndex = -1 // index of Group 4 prefix in src and inst.Prefix
+ rex x86_Prefix // rex byte if present (or 0)
+ rexUsed x86_Prefix // bits used in rex byte
+ rexIndex = -1 // index of rex byte
+
+ addrMode = mode // address mode (width in bits)
+ dataMode = mode // operand mode (width in bits)
+
+ // decoded ModR/M fields
+ haveModrm bool
+ modrm int
+ mod int
+ regop int
+ rm int
+
+ // if ModR/M is memory reference, Mem form
+ mem x86_Mem
+ haveMem bool
+
+ // decoded SIB fields
+ haveSIB bool
+ sib int
+ scale int
+ index int
+ base int
+
+ // decoded immediate values
+ imm int64
+ imm8 int8
+ immc int64
+
+ // output
+ opshift int
+ inst x86_Inst
+ narg int // number of arguments written to inst
+ )
+
+ if mode == 64 {
+ dataMode = 32
+ }
+
+ // Prefixes are certainly the most complex and underspecified part of
+ // decoding x86 instructions. Although the manuals say things like
+ // up to four prefixes, one from each group, nearly everyone seems to
+ // agree that in practice as many prefixes as possible, including multiple
+ // from a particular group or repetitions of a given prefix, can be used on
+ // an instruction, provided the total instruction length including prefixes
+ // does not exceed the agreed-upon maximum of 15 bytes.
+ // Everyone also agrees that if one of these prefixes is the LOCK prefix
+ // and the instruction is not one of the instructions that can be used with
+ // the LOCK prefix or if the destination is not a memory operand,
+ // then the instruction is invalid and produces the #UD exception.
+ // However, that is the end of any semblance of agreement.
+ //
+ // What happens if prefixes are given that conflict with other prefixes?
+ // For example, the memory segment overrides CS, DS, ES, FS, GS, SS
+ // conflict with each other: only one segment can be in effect.
+ // Disassemblers seem to agree that later prefixes take priority over
+ // earlier ones. I have not taken the time to write assembly programs
+ // to check to see if the hardware agrees.
+ //
+ // What happens if prefixes are given that have no meaning for the
+ // specific instruction to which they are attached? It depends.
+ // If they really have no meaning, they are ignored. However, a future
+ // processor may assign a different meaning. As a disassembler, we
+ // don't really know whether we're seeing a meaningless prefix or one
+ // whose meaning we simply haven't been told yet.
+ //
+ // Combining the two questions, what happens when conflicting
+ // extension prefixes are given? No one seems to know for sure.
+ // For example, MOVQ is 66 0F D6 /r, MOVDQ2Q is F2 0F D6 /r,
+ // and MOVQ2DQ is F3 0F D6 /r. What is '66 F2 F3 0F D6 /r'?
+ // Which prefix wins? See the xCondPrefix prefix for more.
+ //
+ // Writing assembly test cases to divine which interpretation the
+ // CPU uses might clarify the situation, but more likely it would
+ // make the situation even less clear.
+
+ // Read non-REX prefixes.
+ReadPrefixes:
+ for ; pos < len(src); pos++ {
+ p := x86_Prefix(src[pos])
+ switch p {
+ default:
+ nprefix = pos
+ break ReadPrefixes
+
+ // Group 1 - lock and repeat prefixes
+ // According to Intel, there should only be one from this set,
+ // but according to AMD both can be present.
+ case 0xF0:
+ if lockIndex >= 0 {
+ inst.Prefix[lockIndex] |= x86_PrefixIgnored
+ }
+ lockIndex = pos
+ case 0xF2, 0xF3:
+ if repIndex >= 0 {
+ inst.Prefix[repIndex] |= x86_PrefixIgnored
+ }
+ repIndex = pos
+
+ // Group 2 - segment override / branch hints
+ case 0x26, 0x2E, 0x36, 0x3E:
+ if mode == 64 {
+ p |= x86_PrefixIgnored
+ break
+ }
+ fallthrough
+ case 0x64, 0x65:
+ if segIndex >= 0 {
+ inst.Prefix[segIndex] |= x86_PrefixIgnored
+ }
+ segIndex = pos
+
+ // Group 3 - operand size override
+ case 0x66:
+ if mode == 16 {
+ dataMode = 32
+ p = x86_PrefixData32
+ } else {
+ dataMode = 16
+ p = x86_PrefixData16
+ }
+ if dataSizeIndex >= 0 {
+ inst.Prefix[dataSizeIndex] |= x86_PrefixIgnored
+ }
+ dataSizeIndex = pos
+
+ // Group 4 - address size override
+ case 0x67:
+ if mode == 32 {
+ addrMode = 16
+ p = x86_PrefixAddr16
+ } else {
+ addrMode = 32
+ p = x86_PrefixAddr32
+ }
+ if addrSizeIndex >= 0 {
+ inst.Prefix[addrSizeIndex] |= x86_PrefixIgnored
+ }
+ addrSizeIndex = pos
+ }
+
+ if pos >= len(inst.Prefix) {
+ return x86_instPrefix(src[0], mode) // too long
+ }
+
+ inst.Prefix[pos] = p
+ }
+
+ // Read REX prefix.
+ if pos < len(src) && mode == 64 && x86_Prefix(src[pos]).IsREX() {
+ rex = x86_Prefix(src[pos])
+ rexIndex = pos
+ if pos >= len(inst.Prefix) {
+ return x86_instPrefix(src[0], mode) // too long
+ }
+ inst.Prefix[pos] = rex
+ pos++
+ if rex&x86_PrefixREXW != 0 {
+ dataMode = 64
+ if dataSizeIndex >= 0 {
+ inst.Prefix[dataSizeIndex] |= x86_PrefixIgnored
+ }
+ }
+ }
+
+ // Decode instruction stream, interpreting decoding instructions.
+ // opshift gives the shift to use when saving the next
+ // opcode byte into inst.Opcode.
+ opshift = 24
+ if x86_decoderCover == nil {
+ x86_decoderCover = make([]bool, len(x86_decoder))
+ }
+
+ // Decode loop, executing decoder program.
+ var oldPC, prevPC int
+Decode:
+ for pc := 1; ; { // TODO uint
+ oldPC = prevPC
+ prevPC = pc
+ if x86_trace {
+ println("run", pc)
+ }
+ x := x86_decoder[pc]
+ x86_decoderCover[pc] = true
+ pc++
+
+ // Read and decode ModR/M if needed by opcode.
+ switch x86_decodeOp(x) {
+ case x86_xCondSlashR, x86_xReadSlashR:
+ if haveModrm {
+ return x86_Inst{Len: pos}, x86_errInternal
+ }
+ haveModrm = true
+ if pos >= len(src) {
+ return x86_truncated(src, mode)
+ }
+ modrm = int(src[pos])
+ pos++
+ if opshift >= 0 {
+ inst.Opcode |= uint32(modrm) << uint(opshift)
+ opshift -= 8
+ }
+ mod = modrm >> 6
+ regop = (modrm >> 3) & 07
+ rm = modrm & 07
+ if rex&x86_PrefixREXR != 0 {
+ rexUsed |= x86_PrefixREXR
+ regop |= 8
+ }
+ if addrMode == 16 {
+ // 16-bit modrm form
+ if mod != 3 {
+ haveMem = true
+ mem = x86_addr16[rm]
+ if rm == 6 && mod == 0 {
+ mem.Base = 0
+ }
+
+ // Consume disp16 if present.
+ if mod == 0 && rm == 6 || mod == 2 {
+ if pos+2 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ mem.Disp = int64(binary.LittleEndian.Uint16(src[pos:]))
+ pos += 2
+ }
+
+ // Consume disp8 if present.
+ if mod == 1 {
+ if pos >= len(src) {
+ return x86_truncated(src, mode)
+ }
+ mem.Disp = int64(int8(src[pos]))
+ pos++
+ }
+ }
+ } else {
+ haveMem = mod != 3
+
+ // 32-bit or 64-bit form
+ // Consume SIB encoding if present.
+ if rm == 4 && mod != 3 {
+ haveSIB = true
+ if pos >= len(src) {
+ return x86_truncated(src, mode)
+ }
+ sib = int(src[pos])
+ pos++
+ if opshift >= 0 {
+ inst.Opcode |= uint32(sib) << uint(opshift)
+ opshift -= 8
+ }
+ scale = sib >> 6
+ index = (sib >> 3) & 07
+ base = sib & 07
+ if rex&x86_PrefixREXB != 0 {
+ rexUsed |= x86_PrefixREXB
+ base |= 8
+ }
+ if rex&x86_PrefixREXX != 0 {
+ rexUsed |= x86_PrefixREXX
+ index |= 8
+ }
+
+ mem.Scale = 1 << uint(scale)
+ if index == 4 {
+ // no mem.Index
+ } else {
+ mem.Index = x86_baseRegForBits(addrMode) + x86_Reg(index)
+ }
+ if base&7 == 5 && mod == 0 {
+ // no mem.Base
+ } else {
+ mem.Base = x86_baseRegForBits(addrMode) + x86_Reg(base)
+ }
+ } else {
+ if rex&x86_PrefixREXB != 0 {
+ rexUsed |= x86_PrefixREXB
+ rm |= 8
+ }
+ if mod == 0 && rm&7 == 5 || rm&7 == 4 {
+ // base omitted
+ } else if mod != 3 {
+ mem.Base = x86_baseRegForBits(addrMode) + x86_Reg(rm)
+ }
+ }
+
+ // Consume disp32 if present.
+ if mod == 0 && (rm&7 == 5 || haveSIB && base&7 == 5) || mod == 2 {
+ if pos+4 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ mem.Disp = int64(binary.LittleEndian.Uint32(src[pos:]))
+ pos += 4
+ }
+
+ // Consume disp8 if present.
+ if mod == 1 {
+ if pos >= len(src) {
+ return x86_truncated(src, mode)
+ }
+ mem.Disp = int64(int8(src[pos]))
+ pos++
+ }
+
+ // In 64-bit, mod=0 rm=5 is PC-relative instead of just disp.
+ // See Vol 2A. Table 2-7.
+ if mode == 64 && mod == 0 && rm&7 == 5 {
+ if addrMode == 32 {
+ mem.Base = x86_EIP
+ } else {
+ mem.Base = x86_RIP
+ }
+ }
+ }
+
+ if segIndex >= 0 {
+ mem.Segment = x86_prefixToSegment(inst.Prefix[segIndex])
+ }
+ }
+
+ // Execute single opcode.
+ switch x86_decodeOp(x) {
+ default:
+ println("bad op", x, "at", pc-1, "from", oldPC)
+ return x86_Inst{Len: pos}, x86_errInternal
+
+ case x86_xFail:
+ inst.Op = 0
+ break Decode
+
+ case x86_xMatch:
+ break Decode
+
+ case x86_xJump:
+ pc = int(x86_decoder[pc])
+
+ // Conditional branches.
+
+ case x86_xCondByte:
+ if pos >= len(src) {
+ return x86_truncated(src, mode)
+ }
+ b := src[pos]
+ n := int(x86_decoder[pc])
+ pc++
+ for i := 0; i < n; i++ {
+ xb, xpc := x86_decoder[pc], int(x86_decoder[pc+1])
+ pc += 2
+ if b == byte(xb) {
+ pc = xpc
+ pos++
+ if opshift >= 0 {
+ inst.Opcode |= uint32(b) << uint(opshift)
+ opshift -= 8
+ }
+ continue Decode
+ }
+ }
+ // xCondByte is the only conditional with a fall through,
+ // so that it can be used to pick off special cases before
+ // an xCondSlash. If the fallthrough instruction is xFail,
+ // advance the position so that the decoded instruction
+ // size includes the byte we just compared against.
+ if x86_decodeOp(x86_decoder[pc]) == x86_xJump {
+ pc = int(x86_decoder[pc+1])
+ }
+ if x86_decodeOp(x86_decoder[pc]) == x86_xFail {
+ pos++
+ }
+
+ case x86_xCondIs64:
+ if mode == 64 {
+ pc = int(x86_decoder[pc+1])
+ } else {
+ pc = int(x86_decoder[pc])
+ }
+
+ case x86_xCondIsMem:
+ mem := haveMem
+ if !haveModrm {
+ if pos >= len(src) {
+ return x86_instPrefix(src[0], mode) // too long
+ }
+ mem = src[pos]>>6 != 3
+ }
+ if mem {
+ pc = int(x86_decoder[pc+1])
+ } else {
+ pc = int(x86_decoder[pc])
+ }
+
+ case x86_xCondDataSize:
+ switch dataMode {
+ case 16:
+ if dataSizeIndex >= 0 {
+ inst.Prefix[dataSizeIndex] |= x86_PrefixImplicit
+ }
+ pc = int(x86_decoder[pc])
+ case 32:
+ if dataSizeIndex >= 0 {
+ inst.Prefix[dataSizeIndex] |= x86_PrefixImplicit
+ }
+ pc = int(x86_decoder[pc+1])
+ case 64:
+ rexUsed |= x86_PrefixREXW
+ pc = int(x86_decoder[pc+2])
+ }
+
+ case x86_xCondAddrSize:
+ switch addrMode {
+ case 16:
+ if addrSizeIndex >= 0 {
+ inst.Prefix[addrSizeIndex] |= x86_PrefixImplicit
+ }
+ pc = int(x86_decoder[pc])
+ case 32:
+ if addrSizeIndex >= 0 {
+ inst.Prefix[addrSizeIndex] |= x86_PrefixImplicit
+ }
+ pc = int(x86_decoder[pc+1])
+ case 64:
+ pc = int(x86_decoder[pc+2])
+ }
+
+ case x86_xCondPrefix:
+ // Conditional branch based on presence or absence of prefixes.
+ // The conflict cases here are completely undocumented and
+ // differ significantly between GNU libopcodes and Intel xed.
+ // I have not written assembly code to divine what various CPUs
+ // do, but it wouldn't surprise me if they are not consistent either.
+ //
+ // The basic idea is to switch on the presence of a prefix, so that
+ // for example:
+ //
+ // xCondPrefix, 4
+ // 0xF3, 123,
+ // 0xF2, 234,
+ // 0x66, 345,
+ // 0, 456
+ //
+ // branch to 123 if the F3 prefix is present, 234 if the F2 prefix
+ // is present, 66 if the 345 prefix is present, and 456 otherwise.
+ // The prefixes are given in descending order so that the 0 will be last.
+ //
+ // It is unclear what should happen if multiple conditions are
+ // satisfied: what if F2 and F3 are both present, or if 66 and F2
+ // are present, or if all three are present? The one chosen becomes
+ // part of the opcode and the others do not. Perhaps the answer
+ // depends on the specific opcodes in question.
+ //
+ // The only clear example is that CRC32 is F2 0F 38 F1 /r, and
+ // it comes in 16-bit and 32-bit forms based on the 66 prefix,
+ // so 66 F2 0F 38 F1 /r should be treated as F2 taking priority,
+ // with the 66 being only an operand size override, and probably
+ // F2 66 0F 38 F1 /r should be treated the same.
+ // Perhaps that rule is specific to the case of CRC32, since no
+ // 66 0F 38 F1 instruction is defined (today) (that we know of).
+ // However, both libopcodes and xed seem to generalize this
+ // example and choose F2/F3 in preference to 66, and we
+ // do the same.
+ //
+ // Next, what if both F2 and F3 are present? Which wins?
+ // The Intel xed rule, and ours, is that the one that occurs last wins.
+ // The GNU libopcodes rule, which we implement only in gnuCompat mode,
+ // is that F3 beats F2 unless F3 has no special meaning, in which
+ // case F3 can be a modified on an F2 special meaning.
+ //
+ // Concretely,
+ // 66 0F D6 /r is MOVQ
+ // F2 0F D6 /r is MOVDQ2Q
+ // F3 0F D6 /r is MOVQ2DQ.
+ //
+ // F2 66 0F D6 /r is 66 + MOVDQ2Q always.
+ // 66 F2 0F D6 /r is 66 + MOVDQ2Q always.
+ // F3 66 0F D6 /r is 66 + MOVQ2DQ always.
+ // 66 F3 0F D6 /r is 66 + MOVQ2DQ always.
+ // F2 F3 0F D6 /r is F2 + MOVQ2DQ always.
+ // F3 F2 0F D6 /r is F3 + MOVQ2DQ in Intel xed, but F2 + MOVQ2DQ in GNU libopcodes.
+ // Adding 66 anywhere in the prefix section of the
+ // last two cases does not change the outcome.
+ //
+ // Finally, what if there is a variant in which 66 is a mandatory
+ // prefix rather than an operand size override, but we know of
+ // no corresponding F2/F3 form, and we see both F2/F3 and 66.
+ // Does F2/F3 still take priority, so that the result is an unknown
+ // instruction, or does the 66 take priority, so that the extended
+ // 66 instruction should be interpreted as having a REP/REPN prefix?
+ // Intel xed does the former and GNU libopcodes does the latter.
+ // We side with Intel xed, unless we are trying to match libopcodes
+ // more closely during the comparison-based test suite.
+ //
+ // In 64-bit mode REX.W is another valid prefix to test for, but
+ // there is less ambiguity about that. When present, REX.W is
+ // always the first entry in the table.
+ n := int(x86_decoder[pc])
+ pc++
+ sawF3 := false
+ for j := 0; j < n; j++ {
+ prefix := x86_Prefix(x86_decoder[pc+2*j])
+ if prefix.IsREX() {
+ rexUsed |= prefix
+ if rex&prefix == prefix {
+ pc = int(x86_decoder[pc+2*j+1])
+ continue Decode
+ }
+ continue
+ }
+ ok := false
+ if prefix == 0 {
+ ok = true
+ } else if prefix.IsREX() {
+ rexUsed |= prefix
+ if rex&prefix == prefix {
+ ok = true
+ }
+ } else {
+ if prefix == 0xF3 {
+ sawF3 = true
+ }
+ switch prefix {
+ case x86_PrefixLOCK:
+ if lockIndex >= 0 {
+ inst.Prefix[lockIndex] |= x86_PrefixImplicit
+ ok = true
+ }
+ case x86_PrefixREP, x86_PrefixREPN:
+ if repIndex >= 0 && inst.Prefix[repIndex]&0xFF == prefix {
+ inst.Prefix[repIndex] |= x86_PrefixImplicit
+ ok = true
+ }
+ if gnuCompat && !ok && prefix == 0xF3 && repIndex >= 0 && (j+1 >= n || x86_decoder[pc+2*(j+1)] != 0xF2) {
+ // Check to see if earlier prefix F3 is present.
+ for i := repIndex - 1; i >= 0; i-- {
+ if inst.Prefix[i]&0xFF == prefix {
+ inst.Prefix[i] |= x86_PrefixImplicit
+ ok = true
+ }
+ }
+ }
+ if gnuCompat && !ok && prefix == 0xF2 && repIndex >= 0 && !sawF3 && inst.Prefix[repIndex]&0xFF == 0xF3 {
+ // Check to see if earlier prefix F2 is present.
+ for i := repIndex - 1; i >= 0; i-- {
+ if inst.Prefix[i]&0xFF == prefix {
+ inst.Prefix[i] |= x86_PrefixImplicit
+ ok = true
+ }
+ }
+ }
+ case x86_PrefixCS, x86_PrefixDS, x86_PrefixES, x86_PrefixFS, x86_PrefixGS, x86_PrefixSS:
+ if segIndex >= 0 && inst.Prefix[segIndex]&0xFF == prefix {
+ inst.Prefix[segIndex] |= x86_PrefixImplicit
+ ok = true
+ }
+ case x86_PrefixDataSize:
+ // Looking for 66 mandatory prefix.
+ // The F2/F3 mandatory prefixes take priority when both are present.
+ // If we got this far in the xCondPrefix table and an F2/F3 is present,
+ // it means the table didn't have any entry for that prefix. But if 66 has
+ // special meaning, perhaps F2/F3 have special meaning that we don't know.
+ // Intel xed works this way, treating the F2/F3 as inhibiting the 66.
+ // GNU libopcodes allows the 66 to match. We do what Intel xed does
+ // except in gnuCompat mode.
+ if repIndex >= 0 && !gnuCompat {
+ inst.Op = 0
+ break Decode
+ }
+ if dataSizeIndex >= 0 {
+ inst.Prefix[dataSizeIndex] |= x86_PrefixImplicit
+ ok = true
+ }
+ case x86_PrefixAddrSize:
+ if addrSizeIndex >= 0 {
+ inst.Prefix[addrSizeIndex] |= x86_PrefixImplicit
+ ok = true
+ }
+ }
+ }
+ if ok {
+ pc = int(x86_decoder[pc+2*j+1])
+ continue Decode
+ }
+ }
+ inst.Op = 0
+ break Decode
+
+ case x86_xCondSlashR:
+ pc = int(x86_decoder[pc+regop&7])
+
+ // Input.
+
+ case x86_xReadSlashR:
+ // done above
+
+ case x86_xReadIb:
+ if pos >= len(src) {
+ return x86_truncated(src, mode)
+ }
+ imm8 = int8(src[pos])
+ pos++
+
+ case x86_xReadIw:
+ if pos+2 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ imm = int64(binary.LittleEndian.Uint16(src[pos:]))
+ pos += 2
+
+ case x86_xReadId:
+ if pos+4 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ imm = int64(binary.LittleEndian.Uint32(src[pos:]))
+ pos += 4
+
+ case x86_xReadIo:
+ if pos+8 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ imm = int64(binary.LittleEndian.Uint64(src[pos:]))
+ pos += 8
+
+ case x86_xReadCb:
+ if pos >= len(src) {
+ return x86_truncated(src, mode)
+ }
+ immc = int64(src[pos])
+ pos++
+
+ case x86_xReadCw:
+ if pos+2 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ immc = int64(binary.LittleEndian.Uint16(src[pos:]))
+ pos += 2
+
+ case x86_xReadCm:
+ if addrMode == 16 {
+ if pos+2 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ immc = int64(binary.LittleEndian.Uint16(src[pos:]))
+ pos += 2
+ } else if addrMode == 32 {
+ if pos+4 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ immc = int64(binary.LittleEndian.Uint32(src[pos:]))
+ pos += 4
+ } else {
+ if pos+8 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ immc = int64(binary.LittleEndian.Uint64(src[pos:]))
+ pos += 8
+ }
+ case x86_xReadCd:
+ if pos+4 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ immc = int64(binary.LittleEndian.Uint32(src[pos:]))
+ pos += 4
+
+ case x86_xReadCp:
+ if pos+6 > len(src) {
+ return x86_truncated(src, mode)
+ }
+ w := binary.LittleEndian.Uint32(src[pos:])
+ w2 := binary.LittleEndian.Uint16(src[pos+4:])
+ immc = int64(w2)<<32 | int64(w)
+ pos += 6
+
+ // Output.
+
+ case x86_xSetOp:
+ inst.Op = x86_Op(x86_decoder[pc])
+ pc++
+
+ case x86_xArg1,
+ x86_xArg3,
+ x86_xArgAL,
+ x86_xArgAX,
+ x86_xArgCL,
+ x86_xArgCS,
+ x86_xArgDS,
+ x86_xArgDX,
+ x86_xArgEAX,
+ x86_xArgEDX,
+ x86_xArgES,
+ x86_xArgFS,
+ x86_xArgGS,
+ x86_xArgRAX,
+ x86_xArgRDX,
+ x86_xArgSS,
+ x86_xArgST,
+ x86_xArgXMM0:
+ inst.Args[narg] = x86_fixedArg[x]
+ narg++
+
+ case x86_xArgImm8:
+ inst.Args[narg] = x86_Imm(imm8)
+ narg++
+
+ case x86_xArgImm8u:
+ inst.Args[narg] = x86_Imm(uint8(imm8))
+ narg++
+
+ case x86_xArgImm16:
+ inst.Args[narg] = x86_Imm(int16(imm))
+ narg++
+
+ case x86_xArgImm16u:
+ inst.Args[narg] = x86_Imm(uint16(imm))
+ narg++
+
+ case x86_xArgImm32:
+ inst.Args[narg] = x86_Imm(int32(imm))
+ narg++
+
+ case x86_xArgImm64:
+ inst.Args[narg] = x86_Imm(imm)
+ narg++
+
+ case x86_xArgM,
+ x86_xArgM128,
+ x86_xArgM1428byte,
+ x86_xArgM16,
+ x86_xArgM16and16,
+ x86_xArgM16and32,
+ x86_xArgM16and64,
+ x86_xArgM16colon16,
+ x86_xArgM16colon32,
+ x86_xArgM16colon64,
+ x86_xArgM16int,
+ x86_xArgM2byte,
+ x86_xArgM32,
+ x86_xArgM32and32,
+ x86_xArgM32fp,
+ x86_xArgM32int,
+ x86_xArgM512byte,
+ x86_xArgM64,
+ x86_xArgM64fp,
+ x86_xArgM64int,
+ x86_xArgM8,
+ x86_xArgM80bcd,
+ x86_xArgM80dec,
+ x86_xArgM80fp,
+ x86_xArgM94108byte,
+ x86_xArgMem:
+ if !haveMem {
+ inst.Op = 0
+ break Decode
+ }
+ inst.Args[narg] = mem
+ inst.MemBytes = int(x86_memBytes[x86_decodeOp(x)])
+ narg++
+
+ case x86_xArgPtr16colon16:
+ inst.Args[narg] = x86_Imm(immc >> 16)
+ inst.Args[narg+1] = x86_Imm(immc & (1<<16 - 1))
+ narg += 2
+
+ case x86_xArgPtr16colon32:
+ inst.Args[narg] = x86_Imm(immc >> 32)
+ inst.Args[narg+1] = x86_Imm(immc & (1<<32 - 1))
+ narg += 2
+
+ case x86_xArgMoffs8, x86_xArgMoffs16, x86_xArgMoffs32, x86_xArgMoffs64:
+ // TODO(rsc): Can address be 64 bits?
+ mem = x86_Mem{Disp: int64(immc)}
+ if segIndex >= 0 {
+ mem.Segment = x86_prefixToSegment(inst.Prefix[segIndex])
+ inst.Prefix[segIndex] |= x86_PrefixImplicit
+ }
+ inst.Args[narg] = mem
+ inst.MemBytes = int(x86_memBytes[x86_decodeOp(x)])
+ narg++
+
+ case x86_xArgR8, x86_xArgR16, x86_xArgR32, x86_xArgR64, x86_xArgXmm, x86_xArgXmm1, x86_xArgDR0dashDR7:
+ base := x86_baseReg[x]
+ index := x86_Reg(regop)
+ if rex != 0 && base == x86_AL && index >= 4 {
+ rexUsed |= x86_PrefixREX
+ index -= 4
+ base = x86_SPB
+ }
+ inst.Args[narg] = base + index
+ narg++
+
+ case x86_xArgMm, x86_xArgMm1, x86_xArgTR0dashTR7:
+ inst.Args[narg] = x86_baseReg[x] + x86_Reg(regop&7)
+ narg++
+
+ case x86_xArgCR0dashCR7:
+ // AMD documents an extension that the LOCK prefix
+ // can be used in place of a REX prefix in order to access
+ // CR8 from 32-bit mode. The LOCK prefix is allowed in
+ // all modes, provided the corresponding CPUID bit is set.
+ if lockIndex >= 0 {
+ inst.Prefix[lockIndex] |= x86_PrefixImplicit
+ regop += 8
+ }
+ inst.Args[narg] = x86_CR0 + x86_Reg(regop)
+ narg++
+
+ case x86_xArgSreg:
+ regop &= 7
+ if regop >= 6 {
+ inst.Op = 0
+ break Decode
+ }
+ inst.Args[narg] = x86_ES + x86_Reg(regop)
+ narg++
+
+ case x86_xArgRmf16, x86_xArgRmf32, x86_xArgRmf64:
+ base := x86_baseReg[x]
+ index := x86_Reg(modrm & 07)
+ if rex&x86_PrefixREXB != 0 {
+ rexUsed |= x86_PrefixREXB
+ index += 8
+ }
+ inst.Args[narg] = base + index
+ narg++
+
+ case x86_xArgR8op, x86_xArgR16op, x86_xArgR32op, x86_xArgR64op, x86_xArgSTi:
+ n := inst.Opcode >> uint(opshift+8) & 07
+ base := x86_baseReg[x]
+ index := x86_Reg(n)
+ if rex&x86_PrefixREXB != 0 && x86_decodeOp(x) != x86_xArgSTi {
+ rexUsed |= x86_PrefixREXB
+ index += 8
+ }
+ if rex != 0 && base == x86_AL && index >= 4 {
+ rexUsed |= x86_PrefixREX
+ index -= 4
+ base = x86_SPB
+ }
+ inst.Args[narg] = base + index
+ narg++
+
+ case x86_xArgRM8, x86_xArgRM16, x86_xArgRM32, x86_xArgRM64, x86_xArgR32M16, x86_xArgR32M8, x86_xArgR64M16,
+ x86_xArgMmM32, x86_xArgMmM64, x86_xArgMm2M64,
+ x86_xArgXmm2M16, x86_xArgXmm2M32, x86_xArgXmm2M64, x86_xArgXmmM64, x86_xArgXmmM128, x86_xArgXmmM32, x86_xArgXmm2M128:
+ if haveMem {
+ inst.Args[narg] = mem
+ inst.MemBytes = int(x86_memBytes[x86_decodeOp(x)])
+ } else {
+ base := x86_baseReg[x]
+ index := x86_Reg(rm)
+ switch x86_decodeOp(x) {
+ case x86_xArgMmM32, x86_xArgMmM64, x86_xArgMm2M64:
+ // There are only 8 MMX registers, so these ignore the REX.X bit.
+ index &= 7
+ case x86_xArgRM8:
+ if rex != 0 && index >= 4 {
+ rexUsed |= x86_PrefixREX
+ index -= 4
+ base = x86_SPB
+ }
+ }
+ inst.Args[narg] = base + index
+ }
+ narg++
+
+ case x86_xArgMm2: // register only; TODO(rsc): Handle with tag modrm_regonly tag
+ if haveMem {
+ inst.Op = 0
+ break Decode
+ }
+ inst.Args[narg] = x86_baseReg[x] + x86_Reg(rm&7)
+ narg++
+
+ case x86_xArgXmm2: // register only; TODO(rsc): Handle with tag modrm_regonly tag
+ if haveMem {
+ inst.Op = 0
+ break Decode
+ }
+ inst.Args[narg] = x86_baseReg[x] + x86_Reg(rm)
+ narg++
+
+ case x86_xArgRel8:
+ inst.Args[narg] = x86_Rel(int8(immc))
+ narg++
+
+ case x86_xArgRel16:
+ inst.Args[narg] = x86_Rel(int16(immc))
+ narg++
+
+ case x86_xArgRel32:
+ inst.Args[narg] = x86_Rel(int32(immc))
+ narg++
+ }
+ }
+
+ if inst.Op == 0 {
+ // Invalid instruction.
+ if nprefix > 0 {
+ return x86_instPrefix(src[0], mode) // invalid instruction
+ }
+ return x86_Inst{Len: pos}, x86_ErrUnrecognized
+ }
+
+ // Matched! Hooray!
+
+ // 90 decodes as XCHG EAX, EAX but is NOP.
+ // 66 90 decodes as XCHG AX, AX and is NOP too.
+ // 48 90 decodes as XCHG RAX, RAX and is NOP too.
+ // 43 90 decodes as XCHG R8D, EAX and is *not* NOP.
+ // F3 90 decodes as REP XCHG EAX, EAX but is PAUSE.
+ // It's all too special to handle in the decoding tables, at least for now.
+ if inst.Op == x86_XCHG && inst.Opcode>>24 == 0x90 {
+ if inst.Args[0] == x86_RAX || inst.Args[0] == x86_EAX || inst.Args[0] == x86_AX {
+ inst.Op = x86_NOP
+ if dataSizeIndex >= 0 {
+ inst.Prefix[dataSizeIndex] &^= x86_PrefixImplicit
+ }
+ inst.Args[0] = nil
+ inst.Args[1] = nil
+ }
+ if repIndex >= 0 && inst.Prefix[repIndex] == 0xF3 {
+ inst.Prefix[repIndex] |= x86_PrefixImplicit
+ inst.Op = x86_PAUSE
+ inst.Args[0] = nil
+ inst.Args[1] = nil
+ } else if gnuCompat {
+ for i := nprefix - 1; i >= 0; i-- {
+ if inst.Prefix[i]&0xFF == 0xF3 {
+ inst.Prefix[i] |= x86_PrefixImplicit
+ inst.Op = x86_PAUSE
+ inst.Args[0] = nil
+ inst.Args[1] = nil
+ break
+ }
+ }
+ }
+ }
+
+ // defaultSeg returns the default segment for an implicit
+ // memory reference: the final override if present, or else DS.
+ defaultSeg := func() x86_Reg {
+ if segIndex >= 0 {
+ inst.Prefix[segIndex] |= x86_PrefixImplicit
+ return x86_prefixToSegment(inst.Prefix[segIndex])
+ }
+ return x86_DS
+ }
+
+ // Add implicit arguments not present in the tables.
+ // Normally we shy away from making implicit arguments explicit,
+ // following the Intel manuals, but adding the arguments seems
+ // the best way to express the effect of the segment override prefixes.
+ // TODO(rsc): Perhaps add these to the tables and
+ // create bytecode instructions for them.
+ usedAddrSize := false
+ switch inst.Op {
+ case x86_INSB, x86_INSW, x86_INSD:
+ inst.Args[0] = x86_Mem{Segment: x86_ES, Base: x86_baseRegForBits(addrMode) + x86_DI - x86_AX}
+ inst.Args[1] = x86_DX
+ usedAddrSize = true
+
+ case x86_OUTSB, x86_OUTSW, x86_OUTSD:
+ inst.Args[0] = x86_DX
+ inst.Args[1] = x86_Mem{Segment: defaultSeg(), Base: x86_baseRegForBits(addrMode) + x86_SI - x86_AX}
+ usedAddrSize = true
+
+ case x86_MOVSB, x86_MOVSW, x86_MOVSD, x86_MOVSQ:
+ inst.Args[0] = x86_Mem{Segment: x86_ES, Base: x86_baseRegForBits(addrMode) + x86_DI - x86_AX}
+ inst.Args[1] = x86_Mem{Segment: defaultSeg(), Base: x86_baseRegForBits(addrMode) + x86_SI - x86_AX}
+ usedAddrSize = true
+
+ case x86_CMPSB, x86_CMPSW, x86_CMPSD, x86_CMPSQ:
+ inst.Args[0] = x86_Mem{Segment: defaultSeg(), Base: x86_baseRegForBits(addrMode) + x86_SI - x86_AX}
+ inst.Args[1] = x86_Mem{Segment: x86_ES, Base: x86_baseRegForBits(addrMode) + x86_DI - x86_AX}
+ usedAddrSize = true
+
+ case x86_LODSB, x86_LODSW, x86_LODSD, x86_LODSQ:
+ switch inst.Op {
+ case x86_LODSB:
+ inst.Args[0] = x86_AL
+ case x86_LODSW:
+ inst.Args[0] = x86_AX
+ case x86_LODSD:
+ inst.Args[0] = x86_EAX
+ case x86_LODSQ:
+ inst.Args[0] = x86_RAX
+ }
+ inst.Args[1] = x86_Mem{Segment: defaultSeg(), Base: x86_baseRegForBits(addrMode) + x86_SI - x86_AX}
+ usedAddrSize = true
+
+ case x86_STOSB, x86_STOSW, x86_STOSD, x86_STOSQ:
+ inst.Args[0] = x86_Mem{Segment: x86_ES, Base: x86_baseRegForBits(addrMode) + x86_DI - x86_AX}
+ switch inst.Op {
+ case x86_STOSB:
+ inst.Args[1] = x86_AL
+ case x86_STOSW:
+ inst.Args[1] = x86_AX
+ case x86_STOSD:
+ inst.Args[1] = x86_EAX
+ case x86_STOSQ:
+ inst.Args[1] = x86_RAX
+ }
+ usedAddrSize = true
+
+ case x86_SCASB, x86_SCASW, x86_SCASD, x86_SCASQ:
+ inst.Args[1] = x86_Mem{Segment: x86_ES, Base: x86_baseRegForBits(addrMode) + x86_DI - x86_AX}
+ switch inst.Op {
+ case x86_SCASB:
+ inst.Args[0] = x86_AL
+ case x86_SCASW:
+ inst.Args[0] = x86_AX
+ case x86_SCASD:
+ inst.Args[0] = x86_EAX
+ case x86_SCASQ:
+ inst.Args[0] = x86_RAX
+ }
+ usedAddrSize = true
+
+ case x86_XLATB:
+ inst.Args[0] = x86_Mem{Segment: defaultSeg(), Base: x86_baseRegForBits(addrMode) + x86_BX - x86_AX}
+ usedAddrSize = true
+ }
+
+ // If we used the address size annotation to construct the
+ // argument list, mark that prefix as implicit: it doesn't need
+ // to be shown when printing the instruction.
+ if haveMem || usedAddrSize {
+ if addrSizeIndex >= 0 {
+ inst.Prefix[addrSizeIndex] |= x86_PrefixImplicit
+ }
+ }
+
+ // Similarly, if there's some memory operand, the segment
+ // will be shown there and doesn't need to be shown as an
+ // explicit prefix.
+ if haveMem {
+ if segIndex >= 0 {
+ inst.Prefix[segIndex] |= x86_PrefixImplicit
+ }
+ }
+
+ // Branch predict prefixes are overloaded segment prefixes,
+ // since segment prefixes don't make sense on conditional jumps.
+ // Rewrite final instance to prediction prefix.
+ // The set of instructions to which the prefixes apply (other then the
+ // Jcc conditional jumps) is not 100% clear from the manuals, but
+ // the disassemblers seem to agree about the LOOP and JCXZ instructions,
+ // so we'll follow along.
+ // TODO(rsc): Perhaps this instruction class should be derived from the CSV.
+ if x86_isCondJmp[inst.Op] || x86_isLoop[inst.Op] || inst.Op == x86_JCXZ || inst.Op == x86_JECXZ || inst.Op == x86_JRCXZ {
+ PredictLoop:
+ for i := nprefix - 1; i >= 0; i-- {
+ p := inst.Prefix[i]
+ switch p & 0xFF {
+ case x86_PrefixCS:
+ inst.Prefix[i] = x86_PrefixPN
+ break PredictLoop
+ case x86_PrefixDS:
+ inst.Prefix[i] = x86_PrefixPT
+ break PredictLoop
+ }
+ }
+ }
+
+ // The BND prefix is part of the Intel Memory Protection Extensions (MPX).
+ // A REPN applied to certain control transfers is a BND prefix to bound
+ // the range of possible destinations. There's surprisingly little documentation
+ // about this, so we just do what libopcodes and xed agree on.
+ // In particular, it's unclear why a REPN applied to LOOP or JCXZ instructions
+ // does not turn into a BND.
+ // TODO(rsc): Perhaps this instruction class should be derived from the CSV.
+ if x86_isCondJmp[inst.Op] || inst.Op == x86_JMP || inst.Op == x86_CALL || inst.Op == x86_RET {
+ for i := nprefix - 1; i >= 0; i-- {
+ p := inst.Prefix[i]
+ if p&^x86_PrefixIgnored == x86_PrefixREPN {
+ inst.Prefix[i] = x86_PrefixBND
+ break
+ }
+ }
+ }
+
+ // The LOCK prefix only applies to certain instructions, and then only
+ // to instances of the instruction with a memory destination.
+ // Other uses of LOCK are invalid and cause a processor exception,
+ // in contrast to the "just ignore it" spirit applied to all other prefixes.
+ // Mark invalid lock prefixes.
+ hasLock := false
+ if lockIndex >= 0 && inst.Prefix[lockIndex]&x86_PrefixImplicit == 0 {
+ switch inst.Op {
+ // TODO(rsc): Perhaps this instruction class should be derived from the CSV.
+ case x86_ADD, x86_ADC, x86_AND, x86_BTC, x86_BTR, x86_BTS, x86_CMPXCHG, x86_CMPXCHG8B, x86_CMPXCHG16B, x86_DEC, x86_INC, x86_NEG, x86_NOT, x86_OR, x86_SBB, x86_SUB, x86_XOR, x86_XADD, x86_XCHG:
+ if x86_isMem(inst.Args[0]) {
+ hasLock = true
+ break
+ }
+ fallthrough
+ default:
+ inst.Prefix[lockIndex] |= x86_PrefixInvalid
+ }
+ }
+
+ // In certain cases, all of which require a memory destination,
+ // the REPN and REP prefixes are interpreted as XACQUIRE and XRELEASE
+ // from the Intel Transactional Synchroniation Extensions (TSX).
+ //
+ // The specific rules are:
+ // (1) Any instruction with a valid LOCK prefix can have XACQUIRE or XRELEASE.
+ // (2) Any XCHG, which always has an implicit LOCK, can have XACQUIRE or XRELEASE.
+ // (3) Any 0x88-, 0x89-, 0xC6-, or 0xC7-opcode MOV can have XRELEASE.
+ if x86_isMem(inst.Args[0]) {
+ if inst.Op == x86_XCHG {
+ hasLock = true
+ }
+
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ p := inst.Prefix[i] &^ x86_PrefixIgnored
+ switch p {
+ case x86_PrefixREPN:
+ if hasLock {
+ inst.Prefix[i] = inst.Prefix[i]&x86_PrefixIgnored | x86_PrefixXACQUIRE
+ }
+
+ case x86_PrefixREP:
+ if hasLock {
+ inst.Prefix[i] = inst.Prefix[i]&x86_PrefixIgnored | x86_PrefixXRELEASE
+ }
+
+ if inst.Op == x86_MOV {
+ op := (inst.Opcode >> 24) &^ 1
+ if op == 0x88 || op == 0xC6 {
+ inst.Prefix[i] = inst.Prefix[i]&x86_PrefixIgnored | x86_PrefixXRELEASE
+ }
+ }
+ }
+ }
+ }
+
+ // If REP is used on a non-REP-able instruction, mark the prefix as ignored.
+ if repIndex >= 0 {
+ switch inst.Prefix[repIndex] {
+ case x86_PrefixREP, x86_PrefixREPN:
+ switch inst.Op {
+ // According to the manuals, the REP/REPE prefix applies to all of these,
+ // while the REPN applies only to some of them. However, both libopcodes
+ // and xed show both prefixes explicitly for all instructions, so we do the same.
+ // TODO(rsc): Perhaps this instruction class should be derived from the CSV.
+ case x86_INSB, x86_INSW, x86_INSD,
+ x86_MOVSB, x86_MOVSW, x86_MOVSD, x86_MOVSQ,
+ x86_OUTSB, x86_OUTSW, x86_OUTSD,
+ x86_LODSB, x86_LODSW, x86_LODSD, x86_LODSQ,
+ x86_CMPSB, x86_CMPSW, x86_CMPSD, x86_CMPSQ,
+ x86_SCASB, x86_SCASW, x86_SCASD, x86_SCASQ,
+ x86_STOSB, x86_STOSW, x86_STOSD, x86_STOSQ:
+ // ok
+ default:
+ inst.Prefix[repIndex] |= x86_PrefixIgnored
+ }
+ }
+ }
+
+ // If REX was present, mark implicit if all the 1 bits were consumed.
+ if rexIndex >= 0 {
+ if rexUsed != 0 {
+ rexUsed |= x86_PrefixREX
+ }
+ if rex&^rexUsed == 0 {
+ inst.Prefix[rexIndex] |= x86_PrefixImplicit
+ }
+ }
+
+ inst.DataSize = dataMode
+ inst.AddrSize = addrMode
+ inst.Mode = mode
+ inst.Len = pos
+ return inst, nil
+}
+
+var x86_errInternal = errors.New("internal error")
+
+// addr16 records the eight 16-bit addressing modes.
+var x86_addr16 = [8]x86_Mem{
+ {Base: x86_BX, Scale: 1, Index: x86_SI},
+ {Base: x86_BX, Scale: 1, Index: x86_DI},
+ {Base: x86_BP, Scale: 1, Index: x86_SI},
+ {Base: x86_BP, Scale: 1, Index: x86_DI},
+ {Base: x86_SI},
+ {Base: x86_DI},
+ {Base: x86_BP},
+ {Base: x86_BX},
+}
+
+// baseReg returns the base register for a given register size in bits.
+func x86_baseRegForBits(bits int) x86_Reg {
+ switch bits {
+ case 8:
+ return x86_AL
+ case 16:
+ return x86_AX
+ case 32:
+ return x86_EAX
+ case 64:
+ return x86_RAX
+ }
+ return 0
+}
+
+// baseReg records the base register for argument types that specify
+// a range of registers indexed by op, regop, or rm.
+var x86_baseReg = [...]x86_Reg{
+ x86_xArgDR0dashDR7: x86_DR0,
+ x86_xArgMm1: x86_M0,
+ x86_xArgMm2: x86_M0,
+ x86_xArgMm2M64: x86_M0,
+ x86_xArgMm: x86_M0,
+ x86_xArgMmM32: x86_M0,
+ x86_xArgMmM64: x86_M0,
+ x86_xArgR16: x86_AX,
+ x86_xArgR16op: x86_AX,
+ x86_xArgR32: x86_EAX,
+ x86_xArgR32M16: x86_EAX,
+ x86_xArgR32M8: x86_EAX,
+ x86_xArgR32op: x86_EAX,
+ x86_xArgR64: x86_RAX,
+ x86_xArgR64M16: x86_RAX,
+ x86_xArgR64op: x86_RAX,
+ x86_xArgR8: x86_AL,
+ x86_xArgR8op: x86_AL,
+ x86_xArgRM16: x86_AX,
+ x86_xArgRM32: x86_EAX,
+ x86_xArgRM64: x86_RAX,
+ x86_xArgRM8: x86_AL,
+ x86_xArgRmf16: x86_AX,
+ x86_xArgRmf32: x86_EAX,
+ x86_xArgRmf64: x86_RAX,
+ x86_xArgSTi: x86_F0,
+ x86_xArgTR0dashTR7: x86_TR0,
+ x86_xArgXmm1: x86_X0,
+ x86_xArgXmm2: x86_X0,
+ x86_xArgXmm2M128: x86_X0,
+ x86_xArgXmm2M16: x86_X0,
+ x86_xArgXmm2M32: x86_X0,
+ x86_xArgXmm2M64: x86_X0,
+ x86_xArgXmm: x86_X0,
+ x86_xArgXmmM128: x86_X0,
+ x86_xArgXmmM32: x86_X0,
+ x86_xArgXmmM64: x86_X0,
+}
+
+// prefixToSegment returns the segment register
+// corresponding to a particular segment prefix.
+func x86_prefixToSegment(p x86_Prefix) x86_Reg {
+ switch p &^ x86_PrefixImplicit {
+ case x86_PrefixCS:
+ return x86_CS
+ case x86_PrefixDS:
+ return x86_DS
+ case x86_PrefixES:
+ return x86_ES
+ case x86_PrefixFS:
+ return x86_FS
+ case x86_PrefixGS:
+ return x86_GS
+ case x86_PrefixSS:
+ return x86_SS
+ }
+ return 0
+}
+
+// fixedArg records the fixed arguments corresponding to the given bytecodes.
+var x86_fixedArg = [...]x86_Arg{
+ x86_xArg1: x86_Imm(1),
+ x86_xArg3: x86_Imm(3),
+ x86_xArgAL: x86_AL,
+ x86_xArgAX: x86_AX,
+ x86_xArgDX: x86_DX,
+ x86_xArgEAX: x86_EAX,
+ x86_xArgEDX: x86_EDX,
+ x86_xArgRAX: x86_RAX,
+ x86_xArgRDX: x86_RDX,
+ x86_xArgCL: x86_CL,
+ x86_xArgCS: x86_CS,
+ x86_xArgDS: x86_DS,
+ x86_xArgES: x86_ES,
+ x86_xArgFS: x86_FS,
+ x86_xArgGS: x86_GS,
+ x86_xArgSS: x86_SS,
+ x86_xArgST: x86_F0,
+ x86_xArgXMM0: x86_X0,
+}
+
+// memBytes records the size of the memory pointed at
+// by a memory argument of the given form.
+var x86_memBytes = [...]int8{
+ x86_xArgM128: 128 / 8,
+ x86_xArgM16: 16 / 8,
+ x86_xArgM16and16: (16 + 16) / 8,
+ x86_xArgM16colon16: (16 + 16) / 8,
+ x86_xArgM16colon32: (16 + 32) / 8,
+ x86_xArgM16int: 16 / 8,
+ x86_xArgM2byte: 2,
+ x86_xArgM32: 32 / 8,
+ x86_xArgM32and32: (32 + 32) / 8,
+ x86_xArgM32fp: 32 / 8,
+ x86_xArgM32int: 32 / 8,
+ x86_xArgM64: 64 / 8,
+ x86_xArgM64fp: 64 / 8,
+ x86_xArgM64int: 64 / 8,
+ x86_xArgMm2M64: 64 / 8,
+ x86_xArgMmM32: 32 / 8,
+ x86_xArgMmM64: 64 / 8,
+ x86_xArgMoffs16: 16 / 8,
+ x86_xArgMoffs32: 32 / 8,
+ x86_xArgMoffs64: 64 / 8,
+ x86_xArgMoffs8: 8 / 8,
+ x86_xArgR32M16: 16 / 8,
+ x86_xArgR32M8: 8 / 8,
+ x86_xArgR64M16: 16 / 8,
+ x86_xArgRM16: 16 / 8,
+ x86_xArgRM32: 32 / 8,
+ x86_xArgRM64: 64 / 8,
+ x86_xArgRM8: 8 / 8,
+ x86_xArgXmm2M128: 128 / 8,
+ x86_xArgXmm2M16: 16 / 8,
+ x86_xArgXmm2M32: 32 / 8,
+ x86_xArgXmm2M64: 64 / 8,
+ x86_xArgXmm: 128 / 8,
+ x86_xArgXmmM128: 128 / 8,
+ x86_xArgXmmM32: 32 / 8,
+ x86_xArgXmmM64: 64 / 8,
+}
+
+// isCondJmp records the conditional jumps.
+var x86_isCondJmp = [x86_maxOp + 1]bool{
+ x86_JA: true,
+ x86_JAE: true,
+ x86_JB: true,
+ x86_JBE: true,
+ x86_JE: true,
+ x86_JG: true,
+ x86_JGE: true,
+ x86_JL: true,
+ x86_JLE: true,
+ x86_JNE: true,
+ x86_JNO: true,
+ x86_JNP: true,
+ x86_JNS: true,
+ x86_JO: true,
+ x86_JP: true,
+ x86_JS: true,
+}
+
+// isLoop records the loop operators.
+var x86_isLoop = [x86_maxOp + 1]bool{
+ x86_LOOP: true,
+ x86_LOOPE: true,
+ x86_LOOPNE: true,
+ x86_JECXZ: true,
+ x86_JRCXZ: true,
+}
+
+/* gnu.go */
+
+// Copyright 2014 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// GNUSyntax returns the GNU assembler syntax for the instruction, as defined by GNU binutils.
+// This general form is often called ``AT&T syntax'' as a reference to AT&T System V Unix.
+func x86_GNUSyntax(inst x86_Inst) string {
+ // Rewrite instruction to mimic GNU peculiarities.
+ // Note that inst has been passed by value and contains
+ // no pointers, so any changes we make here are local
+ // and will not propagate back out to the caller.
+
+ // Adjust opcode [sic].
+ switch inst.Op {
+ case x86_FDIV, x86_FDIVR, x86_FSUB, x86_FSUBR, x86_FDIVP, x86_FDIVRP, x86_FSUBP, x86_FSUBRP:
+ // DC E0, DC F0: libopcodes swaps FSUBR/FSUB and FDIVR/FDIV, at least
+ // if you believe the Intel manual is correct (the encoding is irregular as given;
+ // libopcodes uses the more regular expected encoding).
+ // TODO(rsc): Test to ensure Intel manuals are correct and report to libopcodes maintainers?
+ // NOTE: iant thinks this is deliberate, but we can't find the history.
+ _, reg1 := inst.Args[0].(x86_Reg)
+ _, reg2 := inst.Args[1].(x86_Reg)
+ if reg1 && reg2 && (inst.Opcode>>24 == 0xDC || inst.Opcode>>24 == 0xDE) {
+ switch inst.Op {
+ case x86_FDIV:
+ inst.Op = x86_FDIVR
+ case x86_FDIVR:
+ inst.Op = x86_FDIV
+ case x86_FSUB:
+ inst.Op = x86_FSUBR
+ case x86_FSUBR:
+ inst.Op = x86_FSUB
+ case x86_FDIVP:
+ inst.Op = x86_FDIVRP
+ case x86_FDIVRP:
+ inst.Op = x86_FDIVP
+ case x86_FSUBP:
+ inst.Op = x86_FSUBRP
+ case x86_FSUBRP:
+ inst.Op = x86_FSUBP
+ }
+ }
+
+ case x86_MOVNTSD:
+ // MOVNTSD is F2 0F 2B /r.
+ // MOVNTSS is F3 0F 2B /r (supposedly; not in manuals).
+ // Usually inner prefixes win for display,
+ // so that F3 F2 0F 2B 11 is REP MOVNTSD
+ // and F2 F3 0F 2B 11 is REPN MOVNTSS.
+ // Libopcodes always prefers MOVNTSS regardless of prefix order.
+ if x86_countPrefix(&inst, 0xF3) > 0 {
+ found := false
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ switch inst.Prefix[i] & 0xFF {
+ case 0xF3:
+ if !found {
+ found = true
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ case 0xF2:
+ inst.Prefix[i] &^= x86_PrefixImplicit
+ }
+ }
+ inst.Op = x86_MOVNTSS
+ }
+ }
+
+ // Add implicit arguments.
+ switch inst.Op {
+ case x86_MONITOR:
+ inst.Args[0] = x86_EDX
+ inst.Args[1] = x86_ECX
+ inst.Args[2] = x86_EAX
+ if inst.AddrSize == 16 {
+ inst.Args[2] = x86_AX
+ }
+
+ case x86_MWAIT:
+ if inst.Mode == 64 {
+ inst.Args[0] = x86_RCX
+ inst.Args[1] = x86_RAX
+ } else {
+ inst.Args[0] = x86_ECX
+ inst.Args[1] = x86_EAX
+ }
+ }
+
+ // Adjust which prefixes will be displayed.
+ // The rule is to display all the prefixes not implied by
+ // the usual instruction display, that is, all the prefixes
+ // except the ones with PrefixImplicit set.
+ // However, of course, there are exceptions to the rule.
+ switch inst.Op {
+ case x86_CRC32:
+ // CRC32 has a mandatory F2 prefix.
+ // If there are multiple F2s and no F3s, the extra F2s do not print.
+ // (And Decode has already marked them implicit.)
+ // However, if there is an F3 anywhere, then the extra F2s do print.
+ // If there are multiple F2 prefixes *and* an (ignored) F3,
+ // then libopcodes prints the extra F2s as REPNs.
+ if x86_countPrefix(&inst, 0xF2) > 1 {
+ x86_unmarkImplicit(&inst, 0xF2)
+ x86_markLastImplicit(&inst, 0xF2)
+ }
+
+ // An unused data size override should probably be shown,
+ // to distinguish DATA16 CRC32B from plain CRC32B,
+ // but libopcodes always treats the final override as implicit
+ // and the others as explicit.
+ x86_unmarkImplicit(&inst, x86_PrefixDataSize)
+ x86_markLastImplicit(&inst, x86_PrefixDataSize)
+
+ case x86_CVTSI2SD, x86_CVTSI2SS:
+ if !x86_isMem(inst.Args[1]) {
+ x86_markLastImplicit(&inst, x86_PrefixDataSize)
+ }
+
+ case x86_CVTSD2SI, x86_CVTSS2SI, x86_CVTTSD2SI, x86_CVTTSS2SI,
+ x86_ENTER, x86_FLDENV, x86_FNSAVE, x86_FNSTENV, x86_FRSTOR, x86_LGDT, x86_LIDT, x86_LRET,
+ x86_POP, x86_PUSH, x86_RET, x86_SGDT, x86_SIDT, x86_SYSRET, x86_XBEGIN:
+ x86_markLastImplicit(&inst, x86_PrefixDataSize)
+
+ case x86_LOOP, x86_LOOPE, x86_LOOPNE, x86_MONITOR:
+ x86_markLastImplicit(&inst, x86_PrefixAddrSize)
+
+ case x86_MOV:
+ // The 16-bit and 32-bit forms of MOV Sreg, dst and MOV src, Sreg
+ // cannot be distinguished when src or dst refers to memory, because
+ // Sreg is always a 16-bit value, even when we're doing a 32-bit
+ // instruction. Because the instruction tables distinguished these two,
+ // any operand size prefix has been marked as used (to decide which
+ // branch to take). Unmark it, so that it will show up in disassembly,
+ // so that the reader can tell the size of memory operand.
+ // up with the same arguments
+ dst, _ := inst.Args[0].(x86_Reg)
+ src, _ := inst.Args[1].(x86_Reg)
+ if x86_ES <= src && src <= x86_GS && x86_isMem(inst.Args[0]) || x86_ES <= dst && dst <= x86_GS && x86_isMem(inst.Args[1]) {
+ x86_unmarkImplicit(&inst, x86_PrefixDataSize)
+ }
+
+ case x86_MOVDQU:
+ if x86_countPrefix(&inst, 0xF3) > 1 {
+ x86_unmarkImplicit(&inst, 0xF3)
+ x86_markLastImplicit(&inst, 0xF3)
+ }
+
+ case x86_MOVQ2DQ:
+ x86_markLastImplicit(&inst, x86_PrefixDataSize)
+
+ case x86_SLDT, x86_SMSW, x86_STR, x86_FXRSTOR, x86_XRSTOR, x86_XSAVE, x86_XSAVEOPT, x86_CMPXCHG8B:
+ if x86_isMem(inst.Args[0]) {
+ x86_unmarkImplicit(&inst, x86_PrefixDataSize)
+ }
+
+ case x86_SYSEXIT:
+ x86_unmarkImplicit(&inst, x86_PrefixDataSize)
+ }
+
+ if x86_isCondJmp[inst.Op] || x86_isLoop[inst.Op] || inst.Op == x86_JCXZ || inst.Op == x86_JECXZ || inst.Op == x86_JRCXZ {
+ if x86_countPrefix(&inst, x86_PrefixCS) > 0 && x86_countPrefix(&inst, x86_PrefixDS) > 0 {
+ for i, p := range inst.Prefix {
+ switch p & 0xFFF {
+ case x86_PrefixPN, x86_PrefixPT:
+ inst.Prefix[i] &= 0xF0FF // cut interpretation bits, producing original segment prefix
+ }
+ }
+ }
+ }
+
+ // XACQUIRE/XRELEASE adjustment.
+ if inst.Op == x86_MOV {
+ // MOV into memory is a candidate for turning REP into XRELEASE.
+ // However, if the REP is followed by a REPN, that REPN blocks the
+ // conversion.
+ haveREPN := false
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ switch inst.Prefix[i] &^ x86_PrefixIgnored {
+ case x86_PrefixREPN:
+ haveREPN = true
+ case x86_PrefixXRELEASE:
+ if haveREPN {
+ inst.Prefix[i] = x86_PrefixREP
+ }
+ }
+ }
+ }
+
+ // We only format the final F2/F3 as XRELEASE/XACQUIRE.
+ haveXA := false
+ haveXR := false
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ switch inst.Prefix[i] &^ x86_PrefixIgnored {
+ case x86_PrefixXRELEASE:
+ if !haveXR {
+ haveXR = true
+ } else {
+ inst.Prefix[i] = x86_PrefixREP
+ }
+
+ case x86_PrefixXACQUIRE:
+ if !haveXA {
+ haveXA = true
+ } else {
+ inst.Prefix[i] = x86_PrefixREPN
+ }
+ }
+ }
+
+ // Determine opcode.
+ op := strings.ToLower(inst.Op.String())
+ if alt := x86_gnuOp[inst.Op]; alt != "" {
+ op = alt
+ }
+
+ // Determine opcode suffix.
+ // Libopcodes omits the suffix if the width of the operation
+ // can be inferred from a register arguments. For example,
+ // add $1, %ebx has no suffix because you can tell from the
+ // 32-bit register destination that it is a 32-bit add,
+ // but in addl $1, (%ebx), the destination is memory, so the
+ // size is not evident without the l suffix.
+ needSuffix := true
+SuffixLoop:
+ for i, a := range inst.Args {
+ if a == nil {
+ break
+ }
+ switch a := a.(type) {
+ case x86_Reg:
+ switch inst.Op {
+ case x86_MOVSX, x86_MOVZX:
+ continue
+
+ case x86_SHL, x86_SHR, x86_RCL, x86_RCR, x86_ROL, x86_ROR, x86_SAR:
+ if i == 1 {
+ // shift count does not tell us operand size
+ continue
+ }
+
+ case x86_CRC32:
+ // The source argument does tell us operand size,
+ // but libopcodes still always puts a suffix on crc32.
+ continue
+
+ case x86_PUSH, x86_POP:
+ // Even though segment registers are 16-bit, push and pop
+ // can save/restore them from 32-bit slots, so they
+ // do not imply operand size.
+ if x86_ES <= a && a <= x86_GS {
+ continue
+ }
+
+ case x86_CVTSI2SD, x86_CVTSI2SS:
+ // The integer register argument takes priority.
+ if x86_X0 <= a && a <= x86_X15 {
+ continue
+ }
+ }
+
+ if x86_AL <= a && a <= x86_R15 || x86_ES <= a && a <= x86_GS || x86_X0 <= a && a <= x86_X15 || x86_M0 <= a && a <= x86_M7 {
+ needSuffix = false
+ break SuffixLoop
+ }
+ }
+ }
+
+ if needSuffix {
+ switch inst.Op {
+ case x86_CMPXCHG8B, x86_FLDCW, x86_FNSTCW, x86_FNSTSW, x86_LDMXCSR, x86_LLDT, x86_LMSW, x86_LTR, x86_PCLMULQDQ,
+ x86_SETA, x86_SETAE, x86_SETB, x86_SETBE, x86_SETE, x86_SETG, x86_SETGE, x86_SETL, x86_SETLE, x86_SETNE, x86_SETNO, x86_SETNP, x86_SETNS, x86_SETO, x86_SETP, x86_SETS,
+ x86_SLDT, x86_SMSW, x86_STMXCSR, x86_STR, x86_VERR, x86_VERW:
+ // For various reasons, libopcodes emits no suffix for these instructions.
+
+ case x86_CRC32:
+ op += x86_byteSizeSuffix(x86_argBytes(&inst, inst.Args[1]))
+
+ case x86_LGDT, x86_LIDT, x86_SGDT, x86_SIDT:
+ op += x86_byteSizeSuffix(inst.DataSize / 8)
+
+ case x86_MOVZX, x86_MOVSX:
+ // Integer size conversions get two suffixes.
+ op = op[:4] + x86_byteSizeSuffix(x86_argBytes(&inst, inst.Args[1])) + x86_byteSizeSuffix(x86_argBytes(&inst, inst.Args[0]))
+
+ case x86_LOOP, x86_LOOPE, x86_LOOPNE:
+ // Add w suffix to indicate use of CX register instead of ECX.
+ if inst.AddrSize == 16 {
+ op += "w"
+ }
+
+ case x86_CALL, x86_ENTER, x86_JMP, x86_LCALL, x86_LEAVE, x86_LJMP, x86_LRET, x86_RET, x86_SYSRET, x86_XBEGIN:
+ // Add w suffix to indicate use of 16-bit target.
+ // Exclude JMP rel8.
+ if inst.Opcode>>24 == 0xEB {
+ break
+ }
+ if inst.DataSize == 16 && inst.Mode != 16 {
+ x86_markLastImplicit(&inst, x86_PrefixDataSize)
+ op += "w"
+ } else if inst.Mode == 64 {
+ op += "q"
+ }
+
+ case x86_FRSTOR, x86_FNSAVE, x86_FNSTENV, x86_FLDENV:
+ // Add s suffix to indicate shortened FPU state (I guess).
+ if inst.DataSize == 16 {
+ op += "s"
+ }
+
+ case x86_PUSH, x86_POP:
+ if x86_markLastImplicit(&inst, x86_PrefixDataSize) {
+ op += x86_byteSizeSuffix(inst.DataSize / 8)
+ } else if inst.Mode == 64 {
+ op += "q"
+ } else {
+ op += x86_byteSizeSuffix(inst.MemBytes)
+ }
+
+ default:
+ if x86_isFloat(inst.Op) {
+ // I can't explain any of this, but it's what libopcodes does.
+ switch inst.MemBytes {
+ default:
+ if (inst.Op == x86_FLD || inst.Op == x86_FSTP) && x86_isMem(inst.Args[0]) {
+ op += "t"
+ }
+ case 4:
+ if x86_isFloatInt(inst.Op) {
+ op += "l"
+ } else {
+ op += "s"
+ }
+ case 8:
+ if x86_isFloatInt(inst.Op) {
+ op += "ll"
+ } else {
+ op += "l"
+ }
+ }
+ break
+ }
+
+ op += x86_byteSizeSuffix(inst.MemBytes)
+ }
+ }
+
+ // Adjust special case opcodes.
+ switch inst.Op {
+ case 0:
+ if inst.Prefix[0] != 0 {
+ return strings.ToLower(inst.Prefix[0].String())
+ }
+
+ case x86_INT:
+ if inst.Opcode>>24 == 0xCC {
+ inst.Args[0] = nil
+ op = "int3"
+ }
+
+ case x86_CMPPS, x86_CMPPD, x86_CMPSD_XMM, x86_CMPSS:
+ imm, ok := inst.Args[2].(x86_Imm)
+ if ok && 0 <= imm && imm < 8 {
+ inst.Args[2] = nil
+ op = x86_cmppsOps[imm] + op[3:]
+ }
+
+ case x86_PCLMULQDQ:
+ imm, ok := inst.Args[2].(x86_Imm)
+ if ok && imm&^0x11 == 0 {
+ inst.Args[2] = nil
+ op = x86_pclmulqOps[(imm&0x10)>>3|(imm&1)]
+ }
+
+ case x86_XLATB:
+ if x86_markLastImplicit(&inst, x86_PrefixAddrSize) {
+ op = "xlat" // not xlatb
+ }
+ }
+
+ // Build list of argument strings.
+ var (
+ usedPrefixes bool // segment prefixes consumed by Mem formatting
+ args []string // formatted arguments
+ )
+ for i, a := range inst.Args {
+ if a == nil {
+ break
+ }
+ switch inst.Op {
+ case x86_MOVSB, x86_MOVSW, x86_MOVSD, x86_MOVSQ, x86_OUTSB, x86_OUTSW, x86_OUTSD:
+ if i == 0 {
+ usedPrefixes = true // disable use of prefixes for first argument
+ } else {
+ usedPrefixes = false
+ }
+ }
+ if a == x86_Imm(1) && (inst.Opcode>>24)&^1 == 0xD0 {
+ continue
+ }
+ args = append(args, x86_gnuArg(&inst, a, &usedPrefixes))
+ }
+
+ // The default is to print the arguments in reverse Intel order.
+ // A few instructions inhibit this behavior.
+ switch inst.Op {
+ case x86_BOUND, x86_LCALL, x86_ENTER, x86_LJMP:
+ // no reverse
+ default:
+ // reverse args
+ for i, j := 0, len(args)-1; i < j; i, j = i+1, j-1 {
+ args[i], args[j] = args[j], args[i]
+ }
+ }
+
+ // Build prefix string.
+ // Must be after argument formatting, which can turn off segment prefixes.
+ var (
+ prefix = "" // output string
+ numAddr = 0
+ numData = 0
+ implicitData = false
+ )
+ for _, p := range inst.Prefix {
+ if p&0xFF == x86_PrefixDataSize && p&x86_PrefixImplicit != 0 {
+ implicitData = true
+ }
+ }
+ for _, p := range inst.Prefix {
+ if p == 0 {
+ break
+ }
+ if p&x86_PrefixImplicit != 0 {
+ continue
+ }
+ switch p &^ (x86_PrefixIgnored | x86_PrefixInvalid) {
+ default:
+ if p.IsREX() {
+ if p&0xFF == x86_PrefixREX {
+ prefix += "rex "
+ } else {
+ prefix += "rex." + p.String()[4:] + " "
+ }
+ break
+ }
+ prefix += strings.ToLower(p.String()) + " "
+
+ case x86_PrefixPN:
+ op += ",pn"
+ continue
+
+ case x86_PrefixPT:
+ op += ",pt"
+ continue
+
+ case x86_PrefixAddrSize, x86_PrefixAddr16, x86_PrefixAddr32:
+ // For unknown reasons, if the addr16 prefix is repeated,
+ // libopcodes displays all but the last as addr32, even though
+ // the addressing form used in a memory reference is clearly
+ // still 16-bit.
+ n := 32
+ if inst.Mode == 32 {
+ n = 16
+ }
+ numAddr++
+ if x86_countPrefix(&inst, x86_PrefixAddrSize) > numAddr {
+ n = inst.Mode
+ }
+ prefix += fmt.Sprintf("addr%d ", n)
+ continue
+
+ case x86_PrefixData16, x86_PrefixData32:
+ if implicitData && x86_countPrefix(&inst, x86_PrefixDataSize) > 1 {
+ // Similar to the addr32 logic above, but it only kicks in
+ // when something used the data size prefix (one is implicit).
+ n := 16
+ if inst.Mode == 16 {
+ n = 32
+ }
+ numData++
+ if x86_countPrefix(&inst, x86_PrefixDataSize) > numData {
+ if inst.Mode == 16 {
+ n = 16
+ } else {
+ n = 32
+ }
+ }
+ prefix += fmt.Sprintf("data%d ", n)
+ continue
+ }
+ prefix += strings.ToLower(p.String()) + " "
+ }
+ }
+
+ // Finally! Put it all together.
+ text := prefix + op
+ if args != nil {
+ text += " "
+ // Indirect call/jmp gets a star to distinguish from direct jump address.
+ if (inst.Op == x86_CALL || inst.Op == x86_JMP || inst.Op == x86_LJMP || inst.Op == x86_LCALL) && (x86_isMem(inst.Args[0]) || x86_isReg(inst.Args[0])) {
+ text += "*"
+ }
+ text += strings.Join(args, ",")
+ }
+ return text
+}
+
+// gnuArg returns the GNU syntax for the argument x from the instruction inst.
+// If *usedPrefixes is false and x is a Mem, then the formatting
+// includes any segment prefixes and sets *usedPrefixes to true.
+func x86_gnuArg(inst *x86_Inst, x x86_Arg, usedPrefixes *bool) string {
+ if x == nil {
+ return "<nil>"
+ }
+ switch x := x.(type) {
+ case x86_Reg:
+ switch inst.Op {
+ case x86_CVTSI2SS, x86_CVTSI2SD, x86_CVTSS2SI, x86_CVTSD2SI, x86_CVTTSD2SI, x86_CVTTSS2SI:
+ if inst.DataSize == 16 && x86_EAX <= x && x <= x86_R15L {
+ x -= x86_EAX - x86_AX
+ }
+
+ case x86_IN, x86_INSB, x86_INSW, x86_INSD, x86_OUT, x86_OUTSB, x86_OUTSW, x86_OUTSD:
+ // DX is the port, but libopcodes prints it as if it were a memory reference.
+ if x == x86_DX {
+ return "(%dx)"
+ }
+ }
+ return x86_gccRegName[x]
+ case x86_Mem:
+ seg := ""
+ var haveCS, haveDS, haveES, haveFS, haveGS, haveSS bool
+ switch x.Segment {
+ case x86_CS:
+ haveCS = true
+ case x86_DS:
+ haveDS = true
+ case x86_ES:
+ haveES = true
+ case x86_FS:
+ haveFS = true
+ case x86_GS:
+ haveGS = true
+ case x86_SS:
+ haveSS = true
+ }
+ switch inst.Op {
+ case x86_INSB, x86_INSW, x86_INSD, x86_STOSB, x86_STOSW, x86_STOSD, x86_STOSQ, x86_SCASB, x86_SCASW, x86_SCASD, x86_SCASQ:
+ // These do not accept segment prefixes, at least in the GNU rendering.
+ default:
+ if *usedPrefixes {
+ break
+ }
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ p := inst.Prefix[i] &^ x86_PrefixIgnored
+ if p == 0 {
+ continue
+ }
+ switch p {
+ case x86_PrefixCS:
+ if !haveCS {
+ haveCS = true
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ case x86_PrefixDS:
+ if !haveDS {
+ haveDS = true
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ case x86_PrefixES:
+ if !haveES {
+ haveES = true
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ case x86_PrefixFS:
+ if !haveFS {
+ haveFS = true
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ case x86_PrefixGS:
+ if !haveGS {
+ haveGS = true
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ case x86_PrefixSS:
+ if !haveSS {
+ haveSS = true
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ }
+ }
+ *usedPrefixes = true
+ }
+ if haveCS {
+ seg += "%cs:"
+ }
+ if haveDS {
+ seg += "%ds:"
+ }
+ if haveSS {
+ seg += "%ss:"
+ }
+ if haveES {
+ seg += "%es:"
+ }
+ if haveFS {
+ seg += "%fs:"
+ }
+ if haveGS {
+ seg += "%gs:"
+ }
+ disp := ""
+ if x.Disp != 0 {
+ disp = fmt.Sprintf("%#x", x.Disp)
+ }
+ if x.Scale == 0 || x.Index == 0 && x.Scale == 1 && (x.Base == x86_ESP || x.Base == x86_RSP || x.Base == 0 && inst.Mode == 64) {
+ if x.Base == 0 {
+ return seg + disp
+ }
+ return fmt.Sprintf("%s%s(%s)", seg, disp, x86_gccRegName[x.Base])
+ }
+ base := x86_gccRegName[x.Base]
+ if x.Base == 0 {
+ base = ""
+ }
+ index := x86_gccRegName[x.Index]
+ if x.Index == 0 {
+ if inst.AddrSize == 64 {
+ index = "%riz"
+ } else {
+ index = "%eiz"
+ }
+ }
+ if x86_AX <= x.Base && x.Base <= x86_DI {
+ // 16-bit addressing - no scale
+ return fmt.Sprintf("%s%s(%s,%s)", seg, disp, base, index)
+ }
+ return fmt.Sprintf("%s%s(%s,%s,%d)", seg, disp, base, index, x.Scale)
+ case x86_Rel:
+ return fmt.Sprintf(".%+#x", int32(x))
+ case x86_Imm:
+ if inst.Mode == 32 {
+ return fmt.Sprintf("$%#x", uint32(x))
+ }
+ return fmt.Sprintf("$%#x", int64(x))
+ }
+ return x.String()
+}
+
+var x86_gccRegName = [...]string{
+ 0: "REG0",
+ x86_AL: "%al",
+ x86_CL: "%cl",
+ x86_BL: "%bl",
+ x86_DL: "%dl",
+ x86_AH: "%ah",
+ x86_CH: "%ch",
+ x86_BH: "%bh",
+ x86_DH: "%dh",
+ x86_SPB: "%spl",
+ x86_BPB: "%bpl",
+ x86_SIB: "%sil",
+ x86_DIB: "%dil",
+ x86_R8B: "%r8b",
+ x86_R9B: "%r9b",
+ x86_R10B: "%r10b",
+ x86_R11B: "%r11b",
+ x86_R12B: "%r12b",
+ x86_R13B: "%r13b",
+ x86_R14B: "%r14b",
+ x86_R15B: "%r15b",
+ x86_AX: "%ax",
+ x86_CX: "%cx",
+ x86_BX: "%bx",
+ x86_DX: "%dx",
+ x86_SP: "%sp",
+ x86_BP: "%bp",
+ x86_SI: "%si",
+ x86_DI: "%di",
+ x86_R8W: "%r8w",
+ x86_R9W: "%r9w",
+ x86_R10W: "%r10w",
+ x86_R11W: "%r11w",
+ x86_R12W: "%r12w",
+ x86_R13W: "%r13w",
+ x86_R14W: "%r14w",
+ x86_R15W: "%r15w",
+ x86_EAX: "%eax",
+ x86_ECX: "%ecx",
+ x86_EDX: "%edx",
+ x86_EBX: "%ebx",
+ x86_ESP: "%esp",
+ x86_EBP: "%ebp",
+ x86_ESI: "%esi",
+ x86_EDI: "%edi",
+ x86_R8L: "%r8d",
+ x86_R9L: "%r9d",
+ x86_R10L: "%r10d",
+ x86_R11L: "%r11d",
+ x86_R12L: "%r12d",
+ x86_R13L: "%r13d",
+ x86_R14L: "%r14d",
+ x86_R15L: "%r15d",
+ x86_RAX: "%rax",
+ x86_RCX: "%rcx",
+ x86_RDX: "%rdx",
+ x86_RBX: "%rbx",
+ x86_RSP: "%rsp",
+ x86_RBP: "%rbp",
+ x86_RSI: "%rsi",
+ x86_RDI: "%rdi",
+ x86_R8: "%r8",
+ x86_R9: "%r9",
+ x86_R10: "%r10",
+ x86_R11: "%r11",
+ x86_R12: "%r12",
+ x86_R13: "%r13",
+ x86_R14: "%r14",
+ x86_R15: "%r15",
+ x86_IP: "%ip",
+ x86_EIP: "%eip",
+ x86_RIP: "%rip",
+ x86_F0: "%st",
+ x86_F1: "%st(1)",
+ x86_F2: "%st(2)",
+ x86_F3: "%st(3)",
+ x86_F4: "%st(4)",
+ x86_F5: "%st(5)",
+ x86_F6: "%st(6)",
+ x86_F7: "%st(7)",
+ x86_M0: "%mm0",
+ x86_M1: "%mm1",
+ x86_M2: "%mm2",
+ x86_M3: "%mm3",
+ x86_M4: "%mm4",
+ x86_M5: "%mm5",
+ x86_M6: "%mm6",
+ x86_M7: "%mm7",
+ x86_X0: "%xmm0",
+ x86_X1: "%xmm1",
+ x86_X2: "%xmm2",
+ x86_X3: "%xmm3",
+ x86_X4: "%xmm4",
+ x86_X5: "%xmm5",
+ x86_X6: "%xmm6",
+ x86_X7: "%xmm7",
+ x86_X8: "%xmm8",
+ x86_X9: "%xmm9",
+ x86_X10: "%xmm10",
+ x86_X11: "%xmm11",
+ x86_X12: "%xmm12",
+ x86_X13: "%xmm13",
+ x86_X14: "%xmm14",
+ x86_X15: "%xmm15",
+ x86_CS: "%cs",
+ x86_SS: "%ss",
+ x86_DS: "%ds",
+ x86_ES: "%es",
+ x86_FS: "%fs",
+ x86_GS: "%gs",
+ x86_GDTR: "%gdtr",
+ x86_IDTR: "%idtr",
+ x86_LDTR: "%ldtr",
+ x86_MSW: "%msw",
+ x86_TASK: "%task",
+ x86_CR0: "%cr0",
+ x86_CR1: "%cr1",
+ x86_CR2: "%cr2",
+ x86_CR3: "%cr3",
+ x86_CR4: "%cr4",
+ x86_CR5: "%cr5",
+ x86_CR6: "%cr6",
+ x86_CR7: "%cr7",
+ x86_CR8: "%cr8",
+ x86_CR9: "%cr9",
+ x86_CR10: "%cr10",
+ x86_CR11: "%cr11",
+ x86_CR12: "%cr12",
+ x86_CR13: "%cr13",
+ x86_CR14: "%cr14",
+ x86_CR15: "%cr15",
+ x86_DR0: "%db0",
+ x86_DR1: "%db1",
+ x86_DR2: "%db2",
+ x86_DR3: "%db3",
+ x86_DR4: "%db4",
+ x86_DR5: "%db5",
+ x86_DR6: "%db6",
+ x86_DR7: "%db7",
+ x86_TR0: "%tr0",
+ x86_TR1: "%tr1",
+ x86_TR2: "%tr2",
+ x86_TR3: "%tr3",
+ x86_TR4: "%tr4",
+ x86_TR5: "%tr5",
+ x86_TR6: "%tr6",
+ x86_TR7: "%tr7",
+}
+
+var x86_gnuOp = map[x86_Op]string{
+ x86_CBW: "cbtw",
+ x86_CDQ: "cltd",
+ x86_CMPSD: "cmpsl",
+ x86_CMPSD_XMM: "cmpsd",
+ x86_CWD: "cwtd",
+ x86_CWDE: "cwtl",
+ x86_CQO: "cqto",
+ x86_INSD: "insl",
+ x86_IRET: "iretw",
+ x86_IRETD: "iret",
+ x86_IRETQ: "iretq",
+ x86_LODSB: "lods",
+ x86_LODSD: "lods",
+ x86_LODSQ: "lods",
+ x86_LODSW: "lods",
+ x86_MOVSD: "movsl",
+ x86_MOVSD_XMM: "movsd",
+ x86_OUTSD: "outsl",
+ x86_POPA: "popaw",
+ x86_POPAD: "popa",
+ x86_POPF: "popfw",
+ x86_POPFD: "popf",
+ x86_PUSHA: "pushaw",
+ x86_PUSHAD: "pusha",
+ x86_PUSHF: "pushfw",
+ x86_PUSHFD: "pushf",
+ x86_SCASB: "scas",
+ x86_SCASD: "scas",
+ x86_SCASQ: "scas",
+ x86_SCASW: "scas",
+ x86_STOSB: "stos",
+ x86_STOSD: "stos",
+ x86_STOSQ: "stos",
+ x86_STOSW: "stos",
+ x86_XLATB: "xlat",
+}
+
+var x86_cmppsOps = []string{
+ "cmpeq",
+ "cmplt",
+ "cmple",
+ "cmpunord",
+ "cmpneq",
+ "cmpnlt",
+ "cmpnle",
+ "cmpord",
+}
+
+var x86_pclmulqOps = []string{
+ "pclmullqlqdq",
+ "pclmulhqlqdq",
+ "pclmullqhqdq",
+ "pclmulhqhqdq",
+}
+
+func x86_countPrefix(inst *x86_Inst, target x86_Prefix) int {
+ n := 0
+ for _, p := range inst.Prefix {
+ if p&0xFF == target&0xFF {
+ n++
+ }
+ }
+ return n
+}
+
+func x86_markLastImplicit(inst *x86_Inst, prefix x86_Prefix) bool {
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ p := inst.Prefix[i]
+ if p&0xFF == prefix {
+ inst.Prefix[i] |= x86_PrefixImplicit
+ return true
+ }
+ }
+ return false
+}
+
+func x86_unmarkImplicit(inst *x86_Inst, prefix x86_Prefix) {
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ p := inst.Prefix[i]
+ if p&0xFF == prefix {
+ inst.Prefix[i] &^= x86_PrefixImplicit
+ }
+ }
+}
+
+func x86_byteSizeSuffix(b int) string {
+ switch b {
+ case 1:
+ return "b"
+ case 2:
+ return "w"
+ case 4:
+ return "l"
+ case 8:
+ return "q"
+ }
+ return ""
+}
+
+func x86_argBytes(inst *x86_Inst, arg x86_Arg) int {
+ if x86_isMem(arg) {
+ return inst.MemBytes
+ }
+ return x86_regBytes(arg)
+}
+
+func x86_isFloat(op x86_Op) bool {
+ switch op {
+ case x86_FADD, x86_FCOM, x86_FCOMP, x86_FDIV, x86_FDIVR, x86_FIADD, x86_FICOM, x86_FICOMP, x86_FIDIV, x86_FIDIVR, x86_FILD, x86_FIMUL, x86_FIST, x86_FISTP, x86_FISTTP, x86_FISUB, x86_FISUBR, x86_FLD, x86_FMUL, x86_FST, x86_FSTP, x86_FSUB, x86_FSUBR:
+ return true
+ }
+ return false
+}
+
+func x86_isFloatInt(op x86_Op) bool {
+ switch op {
+ case x86_FIADD, x86_FICOM, x86_FICOMP, x86_FIDIV, x86_FIDIVR, x86_FILD, x86_FIMUL, x86_FIST, x86_FISTP, x86_FISTTP, x86_FISUB, x86_FISUBR:
+ return true
+ }
+ return false
+}
+
+/* inst.go */
+
+// Copyright 2014 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// Package x86asm implements decoding of x86 machine code.
+
+// An Inst is a single instruction.
+type x86_Inst struct {
+ Prefix x86_Prefixes // Prefixes applied to the instruction.
+ Op x86_Op // Opcode mnemonic
+ Opcode uint32 // Encoded opcode bits, left aligned (first byte is Opcode>>24, etc)
+ Args x86_Args // Instruction arguments, in Intel order
+ Mode int // processor mode in bits: 16, 32, or 64
+ AddrSize int // address size in bits: 16, 32, or 64
+ DataSize int // operand size in bits: 16, 32, or 64
+ MemBytes int // size of memory argument in bytes: 1, 2, 4, 8, 16, and so on.
+ Len int // length of encoded instruction in bytes
+}
+
+// Prefixes is an array of prefixes associated with a single instruction.
+// The prefixes are listed in the same order as found in the instruction:
+// each prefix byte corresponds to one slot in the array. The first zero
+// in the array marks the end of the prefixes.
+type x86_Prefixes [14]x86_Prefix
+
+// A Prefix represents an Intel instruction prefix.
+// The low 8 bits are the actual prefix byte encoding,
+// and the top 8 bits contain distinguishing bits and metadata.
+type x86_Prefix uint16
+
+const (
+ // Metadata about the role of a prefix in an instruction.
+ x86_PrefixImplicit x86_Prefix = 0x8000 // prefix is implied by instruction text
+ x86_PrefixIgnored x86_Prefix = 0x4000 // prefix is ignored: either irrelevant or overridden by a later prefix
+ x86_PrefixInvalid x86_Prefix = 0x2000 // prefix makes entire instruction invalid (bad LOCK)
+
+ // Memory segment overrides.
+ x86_PrefixES x86_Prefix = 0x26 // ES segment override
+ x86_PrefixCS x86_Prefix = 0x2E // CS segment override
+ x86_PrefixSS x86_Prefix = 0x36 // SS segment override
+ x86_PrefixDS x86_Prefix = 0x3E // DS segment override
+ x86_PrefixFS x86_Prefix = 0x64 // FS segment override
+ x86_PrefixGS x86_Prefix = 0x65 // GS segment override
+
+ // Branch prediction.
+ x86_PrefixPN x86_Prefix = 0x12E // predict not taken (conditional branch only)
+ x86_PrefixPT x86_Prefix = 0x13E // predict taken (conditional branch only)
+
+ // Size attributes.
+ x86_PrefixDataSize x86_Prefix = 0x66 // operand size override
+ x86_PrefixData16 x86_Prefix = 0x166
+ x86_PrefixData32 x86_Prefix = 0x266
+ x86_PrefixAddrSize x86_Prefix = 0x67 // address size override
+ x86_PrefixAddr16 x86_Prefix = 0x167
+ x86_PrefixAddr32 x86_Prefix = 0x267
+
+ // One of a kind.
+ x86_PrefixLOCK x86_Prefix = 0xF0 // lock
+ x86_PrefixREPN x86_Prefix = 0xF2 // repeat not zero
+ x86_PrefixXACQUIRE x86_Prefix = 0x1F2
+ x86_PrefixBND x86_Prefix = 0x2F2
+ x86_PrefixREP x86_Prefix = 0xF3 // repeat
+ x86_PrefixXRELEASE x86_Prefix = 0x1F3
+
+ // The REX prefixes must be in the range [PrefixREX, PrefixREX+0x10).
+ // the other bits are set or not according to the intended use.
+ x86_PrefixREX x86_Prefix = 0x40 // REX 64-bit extension prefix
+ x86_PrefixREXW x86_Prefix = 0x08 // extension bit W (64-bit instruction width)
+ x86_PrefixREXR x86_Prefix = 0x04 // extension bit R (r field in modrm)
+ x86_PrefixREXX x86_Prefix = 0x02 // extension bit X (index field in sib)
+ x86_PrefixREXB x86_Prefix = 0x01 // extension bit B (r/m field in modrm or base field in sib)
+)
+
+// IsREX reports whether p is a REX prefix byte.
+func (p x86_Prefix) IsREX() bool {
+ return p&0xF0 == x86_PrefixREX
+}
+
+func (p x86_Prefix) String() string {
+ p &^= x86_PrefixImplicit | x86_PrefixIgnored | x86_PrefixInvalid
+ if s := x86_prefixNames[p]; s != "" {
+ return s
+ }
+
+ if p.IsREX() {
+ s := "REX."
+ if p&x86_PrefixREXW != 0 {
+ s += "W"
+ }
+ if p&x86_PrefixREXR != 0 {
+ s += "R"
+ }
+ if p&x86_PrefixREXX != 0 {
+ s += "X"
+ }
+ if p&x86_PrefixREXB != 0 {
+ s += "B"
+ }
+ return s
+ }
+
+ return fmt.Sprintf("Prefix(%#x)", int(p))
+}
+
+// An Op is an x86 opcode.
+type x86_Op uint32
+
+func (op x86_Op) String() string {
+ i := int(op)
+ if i < 0 || i >= len(x86_opNames) || x86_opNames[i] == "" {
+ return fmt.Sprintf("Op(%d)", i)
+ }
+ return x86_opNames[i]
+}
+
+// An Args holds the instruction arguments.
+// If an instruction has fewer than 4 arguments,
+// the final elements in the array are nil.
+type x86_Args [4]x86_Arg
+
+// An Arg is a single instruction argument,
+// one of these types: Reg, Mem, Imm, Rel.
+type x86_Arg interface {
+ String() string
+ isArg()
+}
+
+// Note that the implements of Arg that follow are all sized
+// so that on a 64-bit machine the data can be inlined in
+// the interface value instead of requiring an allocation.
+
+// A Reg is a single register.
+// The zero Reg value has no name but indicates ``no register.''
+type x86_Reg uint8
+
+const (
+ _ x86_Reg = iota
+
+ // 8-bit
+ x86_AL
+ x86_CL
+ x86_DL
+ x86_BL
+ x86_AH
+ x86_CH
+ x86_DH
+ x86_BH
+ x86_SPB
+ x86_BPB
+ x86_SIB
+ x86_DIB
+ x86_R8B
+ x86_R9B
+ x86_R10B
+ x86_R11B
+ x86_R12B
+ x86_R13B
+ x86_R14B
+ x86_R15B
+
+ // 16-bit
+ x86_AX
+ x86_CX
+ x86_DX
+ x86_BX
+ x86_SP
+ x86_BP
+ x86_SI
+ x86_DI
+ x86_R8W
+ x86_R9W
+ x86_R10W
+ x86_R11W
+ x86_R12W
+ x86_R13W
+ x86_R14W
+ x86_R15W
+
+ // 32-bit
+ x86_EAX
+ x86_ECX
+ x86_EDX
+ x86_EBX
+ x86_ESP
+ x86_EBP
+ x86_ESI
+ x86_EDI
+ x86_R8L
+ x86_R9L
+ x86_R10L
+ x86_R11L
+ x86_R12L
+ x86_R13L
+ x86_R14L
+ x86_R15L
+
+ // 64-bit
+ x86_RAX
+ x86_RCX
+ x86_RDX
+ x86_RBX
+ x86_RSP
+ x86_RBP
+ x86_RSI
+ x86_RDI
+ x86_R8
+ x86_R9
+ x86_R10
+ x86_R11
+ x86_R12
+ x86_R13
+ x86_R14
+ x86_R15
+
+ // Instruction pointer.
+ x86_IP // 16-bit
+ x86_EIP // 32-bit
+ x86_RIP // 64-bit
+
+ // 387 floating point registers.
+ x86_F0
+ x86_F1
+ x86_F2
+ x86_F3
+ x86_F4
+ x86_F5
+ x86_F6
+ x86_F7
+
+ // MMX registers.
+ x86_M0
+ x86_M1
+ x86_M2
+ x86_M3
+ x86_M4
+ x86_M5
+ x86_M6
+ x86_M7
+
+ // XMM registers.
+ x86_X0
+ x86_X1
+ x86_X2
+ x86_X3
+ x86_X4
+ x86_X5
+ x86_X6
+ x86_X7
+ x86_X8
+ x86_X9
+ x86_X10
+ x86_X11
+ x86_X12
+ x86_X13
+ x86_X14
+ x86_X15
+
+ // Segment registers.
+ x86_ES
+ x86_CS
+ x86_SS
+ x86_DS
+ x86_FS
+ x86_GS
+
+ // System registers.
+ x86_GDTR
+ x86_IDTR
+ x86_LDTR
+ x86_MSW
+ x86_TASK
+
+ // Control registers.
+ x86_CR0
+ x86_CR1
+ x86_CR2
+ x86_CR3
+ x86_CR4
+ x86_CR5
+ x86_CR6
+ x86_CR7
+ x86_CR8
+ x86_CR9
+ x86_CR10
+ x86_CR11
+ x86_CR12
+ x86_CR13
+ x86_CR14
+ x86_CR15
+
+ // Debug registers.
+ x86_DR0
+ x86_DR1
+ x86_DR2
+ x86_DR3
+ x86_DR4
+ x86_DR5
+ x86_DR6
+ x86_DR7
+ x86_DR8
+ x86_DR9
+ x86_DR10
+ x86_DR11
+ x86_DR12
+ x86_DR13
+ x86_DR14
+ x86_DR15
+
+ // Task registers.
+ x86_TR0
+ x86_TR1
+ x86_TR2
+ x86_TR3
+ x86_TR4
+ x86_TR5
+ x86_TR6
+ x86_TR7
+)
+
+const x86_regMax = x86_TR7
+
+func (x86_Reg) isArg() {}
+
+func (r x86_Reg) String() string {
+ i := int(r)
+ if i < 0 || i >= len(x86_regNames) || x86_regNames[i] == "" {
+ return fmt.Sprintf("Reg(%d)", i)
+ }
+ return x86_regNames[i]
+}
+
+// A Mem is a memory reference.
+// The general form is Segment:[Base+Scale*Index+Disp].
+type x86_Mem struct {
+ Segment x86_Reg
+ Base x86_Reg
+ Scale uint8
+ Index x86_Reg
+ Disp int64
+}
+
+func (x86_Mem) isArg() {}
+
+func (m x86_Mem) String() string {
+ var base, plus, scale, index, disp string
+
+ if m.Base != 0 {
+ base = m.Base.String()
+ }
+ if m.Scale != 0 {
+ if m.Base != 0 {
+ plus = "+"
+ }
+ if m.Scale > 1 {
+ scale = fmt.Sprintf("%d*", m.Scale)
+ }
+ index = m.Index.String()
+ }
+ if m.Disp != 0 || m.Base == 0 && m.Scale == 0 {
+ disp = fmt.Sprintf("%+#x", m.Disp)
+ }
+ return "[" + base + plus + scale + index + disp + "]"
+}
+
+// A Rel is an offset relative to the current instruction pointer.
+type x86_Rel int32
+
+func (x86_Rel) isArg() {}
+
+func (r x86_Rel) String() string {
+ return fmt.Sprintf(".%+d", r)
+}
+
+// An Imm is an integer constant.
+type x86_Imm int64
+
+func (x86_Imm) isArg() {}
+
+func (i x86_Imm) String() string {
+ return fmt.Sprintf("%#x", int64(i))
+}
+
+func (i x86_Inst) String() string {
+ var buf bytes.Buffer
+ for _, p := range i.Prefix {
+ if p == 0 {
+ break
+ }
+ if p&x86_PrefixImplicit != 0 {
+ continue
+ }
+ fmt.Fprintf(&buf, "%v ", p)
+ }
+ fmt.Fprintf(&buf, "%v", i.Op)
+ sep := " "
+ for _, v := range i.Args {
+ if v == nil {
+ break
+ }
+ fmt.Fprintf(&buf, "%s%v", sep, v)
+ sep = ", "
+ }
+ return buf.String()
+}
+
+func x86_isReg(a x86_Arg) bool {
+ _, ok := a.(x86_Reg)
+ return ok
+}
+
+func x86_isSegReg(a x86_Arg) bool {
+ r, ok := a.(x86_Reg)
+ return ok && x86_ES <= r && r <= x86_GS
+}
+
+func x86_isMem(a x86_Arg) bool {
+ _, ok := a.(x86_Mem)
+ return ok
+}
+
+func x86_isImm(a x86_Arg) bool {
+ _, ok := a.(x86_Imm)
+ return ok
+}
+
+func x86_regBytes(a x86_Arg) int {
+ r, ok := a.(x86_Reg)
+ if !ok {
+ return 0
+ }
+ if x86_AL <= r && r <= x86_R15B {
+ return 1
+ }
+ if x86_AX <= r && r <= x86_R15W {
+ return 2
+ }
+ if x86_EAX <= r && r <= x86_R15L {
+ return 4
+ }
+ if x86_RAX <= r && r <= x86_R15 {
+ return 8
+ }
+ return 0
+}
+
+func x86_isSegment(p x86_Prefix) bool {
+ switch p {
+ case x86_PrefixCS, x86_PrefixDS, x86_PrefixES, x86_PrefixFS, x86_PrefixGS, x86_PrefixSS:
+ return true
+ }
+ return false
+}
+
+// The Op definitions and string list are in tables.go.
+
+var x86_prefixNames = map[x86_Prefix]string{
+ x86_PrefixCS: "CS",
+ x86_PrefixDS: "DS",
+ x86_PrefixES: "ES",
+ x86_PrefixFS: "FS",
+ x86_PrefixGS: "GS",
+ x86_PrefixSS: "SS",
+ x86_PrefixLOCK: "LOCK",
+ x86_PrefixREP: "REP",
+ x86_PrefixREPN: "REPN",
+ x86_PrefixAddrSize: "ADDRSIZE",
+ x86_PrefixDataSize: "DATASIZE",
+ x86_PrefixAddr16: "ADDR16",
+ x86_PrefixData16: "DATA16",
+ x86_PrefixAddr32: "ADDR32",
+ x86_PrefixData32: "DATA32",
+ x86_PrefixBND: "BND",
+ x86_PrefixXACQUIRE: "XACQUIRE",
+ x86_PrefixXRELEASE: "XRELEASE",
+ x86_PrefixREX: "REX",
+ x86_PrefixPT: "PT",
+ x86_PrefixPN: "PN",
+}
+
+var x86_regNames = [...]string{
+ x86_AL: "AL",
+ x86_CL: "CL",
+ x86_BL: "BL",
+ x86_DL: "DL",
+ x86_AH: "AH",
+ x86_CH: "CH",
+ x86_BH: "BH",
+ x86_DH: "DH",
+ x86_SPB: "SPB",
+ x86_BPB: "BPB",
+ x86_SIB: "SIB",
+ x86_DIB: "DIB",
+ x86_R8B: "R8B",
+ x86_R9B: "R9B",
+ x86_R10B: "R10B",
+ x86_R11B: "R11B",
+ x86_R12B: "R12B",
+ x86_R13B: "R13B",
+ x86_R14B: "R14B",
+ x86_R15B: "R15B",
+ x86_AX: "AX",
+ x86_CX: "CX",
+ x86_BX: "BX",
+ x86_DX: "DX",
+ x86_SP: "SP",
+ x86_BP: "BP",
+ x86_SI: "SI",
+ x86_DI: "DI",
+ x86_R8W: "R8W",
+ x86_R9W: "R9W",
+ x86_R10W: "R10W",
+ x86_R11W: "R11W",
+ x86_R12W: "R12W",
+ x86_R13W: "R13W",
+ x86_R14W: "R14W",
+ x86_R15W: "R15W",
+ x86_EAX: "EAX",
+ x86_ECX: "ECX",
+ x86_EDX: "EDX",
+ x86_EBX: "EBX",
+ x86_ESP: "ESP",
+ x86_EBP: "EBP",
+ x86_ESI: "ESI",
+ x86_EDI: "EDI",
+ x86_R8L: "R8L",
+ x86_R9L: "R9L",
+ x86_R10L: "R10L",
+ x86_R11L: "R11L",
+ x86_R12L: "R12L",
+ x86_R13L: "R13L",
+ x86_R14L: "R14L",
+ x86_R15L: "R15L",
+ x86_RAX: "RAX",
+ x86_RCX: "RCX",
+ x86_RDX: "RDX",
+ x86_RBX: "RBX",
+ x86_RSP: "RSP",
+ x86_RBP: "RBP",
+ x86_RSI: "RSI",
+ x86_RDI: "RDI",
+ x86_R8: "R8",
+ x86_R9: "R9",
+ x86_R10: "R10",
+ x86_R11: "R11",
+ x86_R12: "R12",
+ x86_R13: "R13",
+ x86_R14: "R14",
+ x86_R15: "R15",
+ x86_IP: "IP",
+ x86_EIP: "EIP",
+ x86_RIP: "RIP",
+ x86_F0: "F0",
+ x86_F1: "F1",
+ x86_F2: "F2",
+ x86_F3: "F3",
+ x86_F4: "F4",
+ x86_F5: "F5",
+ x86_F6: "F6",
+ x86_F7: "F7",
+ x86_M0: "M0",
+ x86_M1: "M1",
+ x86_M2: "M2",
+ x86_M3: "M3",
+ x86_M4: "M4",
+ x86_M5: "M5",
+ x86_M6: "M6",
+ x86_M7: "M7",
+ x86_X0: "X0",
+ x86_X1: "X1",
+ x86_X2: "X2",
+ x86_X3: "X3",
+ x86_X4: "X4",
+ x86_X5: "X5",
+ x86_X6: "X6",
+ x86_X7: "X7",
+ x86_X8: "X8",
+ x86_X9: "X9",
+ x86_X10: "X10",
+ x86_X11: "X11",
+ x86_X12: "X12",
+ x86_X13: "X13",
+ x86_X14: "X14",
+ x86_X15: "X15",
+ x86_CS: "CS",
+ x86_SS: "SS",
+ x86_DS: "DS",
+ x86_ES: "ES",
+ x86_FS: "FS",
+ x86_GS: "GS",
+ x86_GDTR: "GDTR",
+ x86_IDTR: "IDTR",
+ x86_LDTR: "LDTR",
+ x86_MSW: "MSW",
+ x86_TASK: "TASK",
+ x86_CR0: "CR0",
+ x86_CR1: "CR1",
+ x86_CR2: "CR2",
+ x86_CR3: "CR3",
+ x86_CR4: "CR4",
+ x86_CR5: "CR5",
+ x86_CR6: "CR6",
+ x86_CR7: "CR7",
+ x86_CR8: "CR8",
+ x86_CR9: "CR9",
+ x86_CR10: "CR10",
+ x86_CR11: "CR11",
+ x86_CR12: "CR12",
+ x86_CR13: "CR13",
+ x86_CR14: "CR14",
+ x86_CR15: "CR15",
+ x86_DR0: "DR0",
+ x86_DR1: "DR1",
+ x86_DR2: "DR2",
+ x86_DR3: "DR3",
+ x86_DR4: "DR4",
+ x86_DR5: "DR5",
+ x86_DR6: "DR6",
+ x86_DR7: "DR7",
+ x86_DR8: "DR8",
+ x86_DR9: "DR9",
+ x86_DR10: "DR10",
+ x86_DR11: "DR11",
+ x86_DR12: "DR12",
+ x86_DR13: "DR13",
+ x86_DR14: "DR14",
+ x86_DR15: "DR15",
+ x86_TR0: "TR0",
+ x86_TR1: "TR1",
+ x86_TR2: "TR2",
+ x86_TR3: "TR3",
+ x86_TR4: "TR4",
+ x86_TR5: "TR5",
+ x86_TR6: "TR6",
+ x86_TR7: "TR7",
+}
+
+/* intel.go */
+
+// Copyright 2014 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// IntelSyntax returns the Intel assembler syntax for the instruction, as defined by Intel's XED tool.
+func x86_IntelSyntax(inst x86_Inst) string {
+ var iargs []x86_Arg
+ for _, a := range inst.Args {
+ if a == nil {
+ break
+ }
+ iargs = append(iargs, a)
+ }
+
+ switch inst.Op {
+ case x86_INSB, x86_INSD, x86_INSW, x86_OUTSB, x86_OUTSD, x86_OUTSW, x86_LOOPNE, x86_JCXZ, x86_JECXZ, x86_JRCXZ, x86_LOOP, x86_LOOPE, x86_MOV, x86_XLATB:
+ if inst.Op == x86_MOV && (inst.Opcode>>16)&0xFFFC != 0x0F20 {
+ break
+ }
+ for i, p := range inst.Prefix {
+ if p&0xFF == x86_PrefixAddrSize {
+ inst.Prefix[i] &^= x86_PrefixImplicit
+ }
+ }
+ }
+
+ switch inst.Op {
+ case x86_MOV:
+ dst, _ := inst.Args[0].(x86_Reg)
+ src, _ := inst.Args[1].(x86_Reg)
+ if x86_ES <= dst && dst <= x86_GS && x86_EAX <= src && src <= x86_R15L {
+ src -= x86_EAX - x86_AX
+ iargs[1] = src
+ }
+ if x86_ES <= dst && dst <= x86_GS && x86_RAX <= src && src <= x86_R15 {
+ src -= x86_RAX - x86_AX
+ iargs[1] = src
+ }
+
+ if inst.Opcode>>24&^3 == 0xA0 {
+ for i, p := range inst.Prefix {
+ if p&0xFF == x86_PrefixAddrSize {
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ }
+ }
+ }
+
+ switch inst.Op {
+ case x86_AAM, x86_AAD:
+ if imm, ok := iargs[0].(x86_Imm); ok {
+ if inst.DataSize == 32 {
+ iargs[0] = x86_Imm(uint32(int8(imm)))
+ } else if inst.DataSize == 16 {
+ iargs[0] = x86_Imm(uint16(int8(imm)))
+ }
+ }
+
+ case x86_PUSH:
+ if imm, ok := iargs[0].(x86_Imm); ok {
+ iargs[0] = x86_Imm(uint32(imm))
+ }
+ }
+
+ for _, p := range inst.Prefix {
+ if p&x86_PrefixImplicit != 0 {
+ for j, pj := range inst.Prefix {
+ if pj&0xFF == p&0xFF {
+ inst.Prefix[j] |= x86_PrefixImplicit
+ }
+ }
+ }
+ }
+
+ if inst.Op != 0 {
+ for i, p := range inst.Prefix {
+ switch p &^ x86_PrefixIgnored {
+ case x86_PrefixData16, x86_PrefixData32, x86_PrefixCS, x86_PrefixDS, x86_PrefixES, x86_PrefixSS:
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ if p.IsREX() {
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ }
+ }
+
+ if x86_isLoop[inst.Op] || inst.Op == x86_JCXZ || inst.Op == x86_JECXZ || inst.Op == x86_JRCXZ {
+ for i, p := range inst.Prefix {
+ if p == x86_PrefixPT || p == x86_PrefixPN {
+ inst.Prefix[i] |= x86_PrefixImplicit
+ }
+ }
+ }
+
+ switch inst.Op {
+ case x86_AAA, x86_AAS, x86_CBW, x86_CDQE, x86_CLC, x86_CLD, x86_CLI, x86_CLTS, x86_CMC, x86_CPUID, x86_CQO, x86_CWD, x86_DAA, x86_DAS,
+ x86_FDECSTP, x86_FINCSTP, x86_FNCLEX, x86_FNINIT, x86_FNOP, x86_FWAIT, x86_HLT,
+ x86_ICEBP, x86_INSB, x86_INSD, x86_INSW, x86_INT, x86_INTO, x86_INVD, x86_IRET, x86_IRETQ,
+ x86_LAHF, x86_LEAVE, x86_LRET, x86_MONITOR, x86_MWAIT, x86_NOP, x86_OUTSB, x86_OUTSD, x86_OUTSW,
+ x86_PAUSE, x86_POPA, x86_POPF, x86_POPFQ, x86_PUSHA, x86_PUSHF, x86_PUSHFQ,
+ x86_RDMSR, x86_RDPMC, x86_RDTSC, x86_RDTSCP, x86_RET, x86_RSM,
+ x86_SAHF, x86_STC, x86_STD, x86_STI, x86_SYSENTER, x86_SYSEXIT, x86_SYSRET,
+ x86_UD2, x86_WBINVD, x86_WRMSR, x86_XEND, x86_XLATB, x86_XTEST:
+
+ if inst.Op == x86_NOP && inst.Opcode>>24 != 0x90 {
+ break
+ }
+ if inst.Op == x86_RET && inst.Opcode>>24 != 0xC3 {
+ break
+ }
+ if inst.Op == x86_INT && inst.Opcode>>24 != 0xCC {
+ break
+ }
+ if inst.Op == x86_LRET && inst.Opcode>>24 != 0xcb {
+ break
+ }
+ for i, p := range inst.Prefix {
+ if p&0xFF == x86_PrefixDataSize {
+ inst.Prefix[i] &^= x86_PrefixImplicit | x86_PrefixIgnored
+ }
+ }
+
+ case 0:
+ // ok
+ }
+
+ switch inst.Op {
+ case x86_INSB, x86_INSD, x86_INSW, x86_OUTSB, x86_OUTSD, x86_OUTSW, x86_MONITOR, x86_MWAIT, x86_XLATB:
+ iargs = nil
+
+ case x86_STOSB, x86_STOSW, x86_STOSD, x86_STOSQ:
+ iargs = iargs[:1]
+
+ case x86_LODSB, x86_LODSW, x86_LODSD, x86_LODSQ, x86_SCASB, x86_SCASW, x86_SCASD, x86_SCASQ:
+ iargs = iargs[1:]
+ }
+
+ const (
+ haveData16 = 1 << iota
+ haveData32
+ haveAddr16
+ haveAddr32
+ haveXacquire
+ haveXrelease
+ haveLock
+ haveHintTaken
+ haveHintNotTaken
+ haveBnd
+ )
+ var prefixBits uint32
+ prefix := ""
+ for _, p := range inst.Prefix {
+ if p == 0 {
+ break
+ }
+ if p&0xFF == 0xF3 {
+ prefixBits &^= haveBnd
+ }
+ if p&(x86_PrefixImplicit|x86_PrefixIgnored) != 0 {
+ continue
+ }
+ switch p {
+ default:
+ prefix += strings.ToLower(p.String()) + " "
+ case x86_PrefixCS, x86_PrefixDS, x86_PrefixES, x86_PrefixFS, x86_PrefixGS, x86_PrefixSS:
+ if inst.Op == 0 {
+ prefix += strings.ToLower(p.String()) + " "
+ }
+ case x86_PrefixREPN:
+ prefix += "repne "
+ case x86_PrefixLOCK:
+ prefixBits |= haveLock
+ case x86_PrefixData16, x86_PrefixDataSize:
+ prefixBits |= haveData16
+ case x86_PrefixData32:
+ prefixBits |= haveData32
+ case x86_PrefixAddrSize, x86_PrefixAddr16:
+ prefixBits |= haveAddr16
+ case x86_PrefixAddr32:
+ prefixBits |= haveAddr32
+ case x86_PrefixXACQUIRE:
+ prefixBits |= haveXacquire
+ case x86_PrefixXRELEASE:
+ prefixBits |= haveXrelease
+ case x86_PrefixPT:
+ prefixBits |= haveHintTaken
+ case x86_PrefixPN:
+ prefixBits |= haveHintNotTaken
+ case x86_PrefixBND:
+ prefixBits |= haveBnd
+ }
+ }
+ switch inst.Op {
+ case x86_JMP:
+ if inst.Opcode>>24 == 0xEB {
+ prefixBits &^= haveBnd
+ }
+ case x86_RET, x86_LRET:
+ prefixBits &^= haveData16 | haveData32
+ }
+
+ if prefixBits&haveXacquire != 0 {
+ prefix += "xacquire "
+ }
+ if prefixBits&haveXrelease != 0 {
+ prefix += "xrelease "
+ }
+ if prefixBits&haveLock != 0 {
+ prefix += "lock "
+ }
+ if prefixBits&haveBnd != 0 {
+ prefix += "bnd "
+ }
+ if prefixBits&haveHintTaken != 0 {
+ prefix += "hint-taken "
+ }
+ if prefixBits&haveHintNotTaken != 0 {
+ prefix += "hint-not-taken "
+ }
+ if prefixBits&haveAddr16 != 0 {
+ prefix += "addr16 "
+ }
+ if prefixBits&haveAddr32 != 0 {
+ prefix += "addr32 "
+ }
+ if prefixBits&haveData16 != 0 {
+ prefix += "data16 "
+ }
+ if prefixBits&haveData32 != 0 {
+ prefix += "data32 "
+ }
+
+ if inst.Op == 0 {
+ if prefix == "" {
+ return "<no instruction>"
+ }
+ return prefix[:len(prefix)-1]
+ }
+
+ var args []string
+ for _, a := range iargs {
+ if a == nil {
+ break
+ }
+ args = append(args, x86_intelArg(&inst, a))
+ }
+
+ var op string
+ switch inst.Op {
+ case x86_NOP:
+ if inst.Opcode>>24 == 0x0F {
+ if inst.DataSize == 16 {
+ args = append(args, "ax")
+ } else {
+ args = append(args, "eax")
+ }
+ }
+
+ case x86_BLENDVPD, x86_BLENDVPS, x86_PBLENDVB:
+ args = args[:2]
+
+ case x86_INT:
+ if inst.Opcode>>24 == 0xCC {
+ args = nil
+ op = "int3"
+ }
+
+ case x86_LCALL, x86_LJMP:
+ if len(args) == 2 {
+ args[0], args[1] = args[1], args[0]
+ }
+
+ case x86_FCHS, x86_FABS, x86_FTST, x86_FLDPI, x86_FLDL2E, x86_FLDLG2, x86_F2XM1, x86_FXAM, x86_FLD1, x86_FLDL2T, x86_FSQRT, x86_FRNDINT, x86_FCOS, x86_FSIN:
+ if len(args) == 0 {
+ args = append(args, "st0")
+ }
+
+ case x86_FPTAN, x86_FSINCOS, x86_FUCOMPP, x86_FCOMPP, x86_FYL2X, x86_FPATAN, x86_FXTRACT, x86_FPREM1, x86_FPREM, x86_FYL2XP1, x86_FSCALE:
+ if len(args) == 0 {
+ args = []string{"st0", "st1"}
+ }
+
+ case x86_FST, x86_FSTP, x86_FISTTP, x86_FIST, x86_FISTP, x86_FBSTP:
+ if len(args) == 1 {
+ args = append(args, "st0")
+ }
+
+ case x86_FLD, x86_FXCH, x86_FCOM, x86_FCOMP, x86_FIADD, x86_FIMUL, x86_FICOM, x86_FICOMP, x86_FISUBR, x86_FIDIV, x86_FUCOM, x86_FUCOMP, x86_FILD, x86_FBLD, x86_FADD, x86_FMUL, x86_FSUB, x86_FSUBR, x86_FISUB, x86_FDIV, x86_FDIVR, x86_FIDIVR:
+ if len(args) == 1 {
+ args = []string{"st0", args[0]}
+ }
+
+ case x86_MASKMOVDQU, x86_MASKMOVQ, x86_XLATB, x86_OUTSB, x86_OUTSW, x86_OUTSD:
+ FixSegment:
+ for i := len(inst.Prefix) - 1; i >= 0; i-- {
+ p := inst.Prefix[i] & 0xFF
+ switch p {
+ case x86_PrefixCS, x86_PrefixES, x86_PrefixFS, x86_PrefixGS, x86_PrefixSS:
+ if inst.Mode != 64 || p == x86_PrefixFS || p == x86_PrefixGS {
+ args = append(args, strings.ToLower((inst.Prefix[i] & 0xFF).String()))
+ break FixSegment
+ }
+ case x86_PrefixDS:
+ if inst.Mode != 64 {
+ break FixSegment
+ }
+ }
+ }
+ }
+
+ if op == "" {
+ op = x86_intelOp[inst.Op]
+ }
+ if op == "" {
+ op = strings.ToLower(inst.Op.String())
+ }
+ if args != nil {
+ op += " " + strings.Join(args, ", ")
+ }
+ return prefix + op
+}
+
+func x86_intelArg(inst *x86_Inst, arg x86_Arg) string {
+ switch a := arg.(type) {
+ case x86_Imm:
+ if inst.Mode == 32 {
+ return fmt.Sprintf("%#x", uint32(a))
+ }
+ if x86_Imm(int32(a)) == a {
+ return fmt.Sprintf("%#x", int64(a))
+ }
+ return fmt.Sprintf("%#x", uint64(a))
+ case x86_Mem:
+ if a.Base == x86_EIP {
+ a.Base = x86_RIP
+ }
+ prefix := ""
+ switch inst.MemBytes {
+ case 1:
+ prefix = "byte "
+ case 2:
+ prefix = "word "
+ case 4:
+ prefix = "dword "
+ case 8:
+ prefix = "qword "
+ case 16:
+ prefix = "xmmword "
+ }
+ switch inst.Op {
+ case x86_INVLPG:
+ prefix = "byte "
+ case x86_STOSB, x86_MOVSB, x86_CMPSB, x86_LODSB, x86_SCASB:
+ prefix = "byte "
+ case x86_STOSW, x86_MOVSW, x86_CMPSW, x86_LODSW, x86_SCASW:
+ prefix = "word "
+ case x86_STOSD, x86_MOVSD, x86_CMPSD, x86_LODSD, x86_SCASD:
+ prefix = "dword "
+ case x86_STOSQ, x86_MOVSQ, x86_CMPSQ, x86_LODSQ, x86_SCASQ:
+ prefix = "qword "
+ case x86_LAR:
+ prefix = "word "
+ case x86_BOUND:
+ if inst.Mode == 32 {
+ prefix = "qword "
+ } else {
+ prefix = "dword "
+ }
+ case x86_PREFETCHW, x86_PREFETCHNTA, x86_PREFETCHT0, x86_PREFETCHT1, x86_PREFETCHT2, x86_CLFLUSH:
+ prefix = "zmmword "
+ }
+ switch inst.Op {
+ case x86_MOVSB, x86_MOVSW, x86_MOVSD, x86_MOVSQ, x86_CMPSB, x86_CMPSW, x86_CMPSD, x86_CMPSQ, x86_STOSB, x86_STOSW, x86_STOSD, x86_STOSQ, x86_SCASB, x86_SCASW, x86_SCASD, x86_SCASQ, x86_LODSB, x86_LODSW, x86_LODSD, x86_LODSQ:
+ switch a.Base {
+ case x86_DI, x86_EDI, x86_RDI:
+ if a.Segment == x86_ES {
+ a.Segment = 0
+ }
+ case x86_SI, x86_ESI, x86_RSI:
+ if a.Segment == x86_DS {
+ a.Segment = 0
+ }
+ }
+ case x86_LEA:
+ a.Segment = 0
+ default:
+ switch a.Base {
+ case x86_SP, x86_ESP, x86_RSP, x86_BP, x86_EBP, x86_RBP:
+ if a.Segment == x86_SS {
+ a.Segment = 0
+ }
+ default:
+ if a.Segment == x86_DS {
+ a.Segment = 0
+ }
+ }
+ }
+
+ if inst.Mode == 64 && a.Segment != x86_FS && a.Segment != x86_GS {
+ a.Segment = 0
+ }
+
+ prefix += "ptr "
+ if a.Segment != 0 {
+ prefix += strings.ToLower(a.Segment.String()) + ":"
+ }
+ prefix += "["
+ if a.Base != 0 {
+ prefix += x86_intelArg(inst, a.Base)
+ }
+ if a.Scale != 0 && a.Index != 0 {
+ if a.Base != 0 {
+ prefix += "+"
+ }
+ prefix += fmt.Sprintf("%s*%d", x86_intelArg(inst, a.Index), a.Scale)
+ }
+ if a.Disp != 0 {
+ if prefix[len(prefix)-1] == '[' && (a.Disp >= 0 || int64(int32(a.Disp)) != a.Disp) {
+ prefix += fmt.Sprintf("%#x", uint64(a.Disp))
+ } else {
+ prefix += fmt.Sprintf("%+#x", a.Disp)
+ }
+ }
+ prefix += "]"
+ return prefix
+ case x86_Rel:
+ return fmt.Sprintf(".%+#x", int64(a))
+ case x86_Reg:
+ if int(a) < len(x86_intelReg) && x86_intelReg[a] != "" {
+ return x86_intelReg[a]
+ }
+ }
+ return strings.ToLower(arg.String())
+}
+
+var x86_intelOp = map[x86_Op]string{
+ x86_JAE: "jnb",
+ x86_JA: "jnbe",
+ x86_JGE: "jnl",
+ x86_JNE: "jnz",
+ x86_JG: "jnle",
+ x86_JE: "jz",
+ x86_SETAE: "setnb",
+ x86_SETA: "setnbe",
+ x86_SETGE: "setnl",
+ x86_SETNE: "setnz",
+ x86_SETG: "setnle",
+ x86_SETE: "setz",
+ x86_CMOVAE: "cmovnb",
+ x86_CMOVA: "cmovnbe",
+ x86_CMOVGE: "cmovnl",
+ x86_CMOVNE: "cmovnz",
+ x86_CMOVG: "cmovnle",
+ x86_CMOVE: "cmovz",
+ x86_LCALL: "call far",
+ x86_LJMP: "jmp far",
+ x86_LRET: "ret far",
+ x86_ICEBP: "int1",
+ x86_MOVSD_XMM: "movsd",
+ x86_XLATB: "xlat",
+}
+
+var x86_intelReg = [...]string{
+ x86_F0: "st0",
+ x86_F1: "st1",
+ x86_F2: "st2",
+ x86_F3: "st3",
+ x86_F4: "st4",
+ x86_F5: "st5",
+ x86_F6: "st6",
+ x86_F7: "st7",
+ x86_M0: "mmx0",
+ x86_M1: "mmx1",
+ x86_M2: "mmx2",
+ x86_M3: "mmx3",
+ x86_M4: "mmx4",
+ x86_M5: "mmx5",
+ x86_M6: "mmx6",
+ x86_M7: "mmx7",
+ x86_X0: "xmm0",
+ x86_X1: "xmm1",
+ x86_X2: "xmm2",
+ x86_X3: "xmm3",
+ x86_X4: "xmm4",
+ x86_X5: "xmm5",
+ x86_X6: "xmm6",
+ x86_X7: "xmm7",
+ x86_X8: "xmm8",
+ x86_X9: "xmm9",
+ x86_X10: "xmm10",
+ x86_X11: "xmm11",
+ x86_X12: "xmm12",
+ x86_X13: "xmm13",
+ x86_X14: "xmm14",
+ x86_X15: "xmm15",
+
+ // TODO: Maybe the constants are named wrong.
+ x86_SPB: "spl",
+ x86_BPB: "bpl",
+ x86_SIB: "sil",
+ x86_DIB: "dil",
+
+ x86_R8L: "r8d",
+ x86_R9L: "r9d",
+ x86_R10L: "r10d",
+ x86_R11L: "r11d",
+ x86_R12L: "r12d",
+ x86_R13L: "r13d",
+ x86_R14L: "r14d",
+ x86_R15L: "r15d",
+}
+
+/* plan9x.go */
+
+// Copyright 2014 The Go Authors. All rights reserved.
+// Use of this source code is governed by a BSD-style
+// license that can be found in the LICENSE file.
+
+// plan9Syntax returns the Go assembler syntax for the instruction.
+// The syntax was originally defined by Plan 9.
+// The pc is the program counter of the instruction, used for expanding
+// PC-relative addresses into absolute ones.
+// The symname function queries the symbol table for the program
+// being disassembled. Given a target address it returns the name and base
+// address of the symbol containing the target, if any; otherwise it returns "", 0.
+func x86_plan9Syntax(inst x86_Inst, pc uint64, symname func(uint64) (string, uint64)) string {
+ if symname == nil {
+ symname = func(uint64) (string, uint64) { return "", 0 }
+ }
+ var args []string
+ for i := len(inst.Args) - 1; i >= 0; i-- {
+ a := inst.Args[i]
+ if a == nil {
+ continue
+ }
+ args = append(args, x86_plan9Arg(&inst, pc, symname, a))
+ }
+
+ var last x86_Prefix
+ for _, p := range inst.Prefix {
+ if p == 0 || p.IsREX() {
+ break
+ }
+ last = p
+ }
+
+ prefix := ""
+ switch last & 0xFF {
+ case 0, 0x66, 0x67:
+ // ignore
+ case x86_PrefixREPN:
+ prefix += "REPNE "
+ default:
+ prefix += last.String() + " "
+ }
+
+ op := inst.Op.String()
+ if x86_plan9Suffix[inst.Op] {
+ switch inst.DataSize {
+ case 8:
+ op += "B"
+ case 16:
+ op += "W"
+ case 32:
+ op += "L"
+ case 64:
+ op += "Q"
+ }
+ }
+
+ if args != nil {
+ op += " " + strings.Join(args, ", ")
+ }
+
+ return prefix + op
+}
+
+func x86_plan9Arg(inst *x86_Inst, pc uint64, symname func(uint64) (string, uint64), arg x86_Arg) string {
+ switch a := arg.(type) {
+ case x86_Reg:
+ return x86_plan9Reg[a]
+ case x86_Rel:
+ if pc == 0 {
+ break
+ }
+ // If the absolute address is the start of a symbol, use the name.
+ // Otherwise use the raw address, so that things like relative
+ // jumps show up as JMP 0x123 instead of JMP f+10(SB).
+ // It is usually easier to search for 0x123 than to do the mental
+ // arithmetic to find f+10.
+ addr := pc + uint64(inst.Len) + uint64(a)
+ if s, base := symname(addr); s != "" && addr == base {
+ return fmt.Sprintf("%s(SB)", s)
+ }
+ return fmt.Sprintf("%#x", addr)
+
+ case x86_Imm:
+ if s, base := symname(uint64(a)); s != "" {
+ suffix := ""
+ if uint64(a) != base {
+ suffix = fmt.Sprintf("%+d", uint64(a)-base)
+ }
+ return fmt.Sprintf("$%s%s(SB)", s, suffix)
+ }
+ if inst.Mode == 32 {
+ return fmt.Sprintf("$%#x", uint32(a))
+ }
+ if x86_Imm(int32(a)) == a {
+ return fmt.Sprintf("$%#x", int64(a))
+ }
+ return fmt.Sprintf("$%#x", uint64(a))
+ case x86_Mem:
+ if a.Segment == 0 && a.Disp != 0 && a.Base == 0 && (a.Index == 0 || a.Scale == 0) {
+ if s, base := symname(uint64(a.Disp)); s != "" {
+ suffix := ""
+ if uint64(a.Disp) != base {
+ suffix = fmt.Sprintf("%+d", uint64(a.Disp)-base)
+ }
+ return fmt.Sprintf("%s%s(SB)", s, suffix)
+ }
+ }
+ s := ""
+ if a.Segment != 0 {
+ s += fmt.Sprintf("%s:", x86_plan9Reg[a.Segment])
+ }
+ if a.Disp != 0 {
+ s += fmt.Sprintf("%#x", a.Disp)
+ } else {
+ s += "0"
+ }
+ if a.Base != 0 {
+ s += fmt.Sprintf("(%s)", x86_plan9Reg[a.Base])
+ }
+ if a.Index != 0 && a.Scale != 0 {
+ s += fmt.Sprintf("(%s*%d)", x86_plan9Reg[a.Index], a.Scale)
+ }
+ return s
+ }
+ return arg.String()
+}
+
+var x86_plan9Suffix = [x86_maxOp + 1]bool{
+ x86_ADC: true,
+ x86_ADD: true,
+ x86_AND: true,
+ x86_BSF: true,
+ x86_BSR: true,
+ x86_BT: true,
+ x86_BTC: true,
+ x86_BTR: true,
+ x86_BTS: true,
+ x86_CMP: true,
+ x86_CMPXCHG: true,
+ x86_CVTSI2SD: true,
+ x86_CVTSI2SS: true,
+ x86_CVTSD2SI: true,
+ x86_CVTSS2SI: true,
+ x86_CVTTSD2SI: true,
+ x86_CVTTSS2SI: true,
+ x86_DEC: true,
+ x86_DIV: true,
+ x86_FLDENV: true,
+ x86_FRSTOR: true,
+ x86_IDIV: true,
+ x86_IMUL: true,
+ x86_IN: true,
+ x86_INC: true,
+ x86_LEA: true,
+ x86_MOV: true,
+ x86_MOVNTI: true,
+ x86_MUL: true,
+ x86_NEG: true,
+ x86_NOP: true,
+ x86_NOT: true,
+ x86_OR: true,
+ x86_OUT: true,
+ x86_POP: true,
+ x86_POPA: true,
+ x86_PUSH: true,
+ x86_PUSHA: true,
+ x86_RCL: true,
+ x86_RCR: true,
+ x86_ROL: true,
+ x86_ROR: true,
+ x86_SAR: true,
+ x86_SBB: true,
+ x86_SHL: true,
+ x86_SHLD: true,
+ x86_SHR: true,
+ x86_SHRD: true,
+ x86_SUB: true,
+ x86_TEST: true,
+ x86_XADD: true,
+ x86_XCHG: true,
+ x86_XOR: true,
+}
+
+var x86_plan9Reg = [...]string{
+ x86_AL: "AL",
+ x86_CL: "CL",
+ x86_BL: "BL",
+ x86_DL: "DL",
+ x86_AH: "AH",
+ x86_CH: "CH",
+ x86_BH: "BH",
+ x86_DH: "DH",
+ x86_SPB: "SP",
+ x86_BPB: "BP",
+ x86_SIB: "SI",
+ x86_DIB: "DI",
+ x86_R8B: "R8",
+ x86_R9B: "R9",
+ x86_R10B: "R10",
+ x86_R11B: "R11",
+ x86_R12B: "R12",
+ x86_R13B: "R13",
+ x86_R14B: "R14",
+ x86_R15B: "R15",
+ x86_AX: "AX",
+ x86_CX: "CX",
+ x86_BX: "BX",
+ x86_DX: "DX",
+ x86_SP: "SP",
+ x86_BP: "BP",
+ x86_SI: "SI",
+ x86_DI: "DI",
+ x86_R8W: "R8",
+ x86_R9W: "R9",
+ x86_R10W: "R10",
+ x86_R11W: "R11",
+ x86_R12W: "R12",
+ x86_R13W: "R13",
+ x86_R14W: "R14",
+ x86_R15W: "R15",
+ x86_EAX: "AX",
+ x86_ECX: "CX",
+ x86_EDX: "DX",
+ x86_EBX: "BX",
+ x86_ESP: "SP",
+ x86_EBP: "BP",
+ x86_ESI: "SI",
+ x86_EDI: "DI",
+ x86_R8L: "R8",
+ x86_R9L: "R9",
+ x86_R10L: "R10",
+ x86_R11L: "R11",
+ x86_R12L: "R12",
+ x86_R13L: "R13",
+ x86_R14L: "R14",
+ x86_R15L: "R15",
+ x86_RAX: "AX",
+ x86_RCX: "CX",
+ x86_RDX: "DX",
+ x86_RBX: "BX",
+ x86_RSP: "SP",
+ x86_RBP: "BP",
+ x86_RSI: "SI",
+ x86_RDI: "DI",
+ x86_R8: "R8",
+ x86_R9: "R9",
+ x86_R10: "R10",
+ x86_R11: "R11",
+ x86_R12: "R12",
+ x86_R13: "R13",
+ x86_R14: "R14",
+ x86_R15: "R15",
+ x86_IP: "IP",
+ x86_EIP: "IP",
+ x86_RIP: "IP",
+ x86_F0: "F0",
+ x86_F1: "F1",
+ x86_F2: "F2",
+ x86_F3: "F3",
+ x86_F4: "F4",
+ x86_F5: "F5",
+ x86_F6: "F6",
+ x86_F7: "F7",
+ x86_M0: "M0",
+ x86_M1: "M1",
+ x86_M2: "M2",
+ x86_M3: "M3",
+ x86_M4: "M4",
+ x86_M5: "M5",
+ x86_M6: "M6",
+ x86_M7: "M7",
+ x86_X0: "X0",
+ x86_X1: "X1",
+ x86_X2: "X2",
+ x86_X3: "X3",
+ x86_X4: "X4",
+ x86_X5: "X5",
+ x86_X6: "X6",
+ x86_X7: "X7",
+ x86_X8: "X8",
+ x86_X9: "X9",
+ x86_X10: "X10",
+ x86_X11: "X11",
+ x86_X12: "X12",
+ x86_X13: "X13",
+ x86_X14: "X14",
+ x86_X15: "X15",
+ x86_CS: "CS",
+ x86_SS: "SS",
+ x86_DS: "DS",
+ x86_ES: "ES",
+ x86_FS: "FS",
+ x86_GS: "GS",
+ x86_GDTR: "GDTR",
+ x86_IDTR: "IDTR",
+ x86_LDTR: "LDTR",
+ x86_MSW: "MSW",
+ x86_TASK: "TASK",
+ x86_CR0: "CR0",
+ x86_CR1: "CR1",
+ x86_CR2: "CR2",
+ x86_CR3: "CR3",
+ x86_CR4: "CR4",
+ x86_CR5: "CR5",
+ x86_CR6: "CR6",
+ x86_CR7: "CR7",
+ x86_CR8: "CR8",
+ x86_CR9: "CR9",
+ x86_CR10: "CR10",
+ x86_CR11: "CR11",
+ x86_CR12: "CR12",
+ x86_CR13: "CR13",
+ x86_CR14: "CR14",
+ x86_CR15: "CR15",
+ x86_DR0: "DR0",
+ x86_DR1: "DR1",
+ x86_DR2: "DR2",
+ x86_DR3: "DR3",
+ x86_DR4: "DR4",
+ x86_DR5: "DR5",
+ x86_DR6: "DR6",
+ x86_DR7: "DR7",
+ x86_DR8: "DR8",
+ x86_DR9: "DR9",
+ x86_DR10: "DR10",
+ x86_DR11: "DR11",
+ x86_DR12: "DR12",
+ x86_DR13: "DR13",
+ x86_DR14: "DR14",
+ x86_DR15: "DR15",
+ x86_TR0: "TR0",
+ x86_TR1: "TR1",
+ x86_TR2: "TR2",
+ x86_TR3: "TR3",
+ x86_TR4: "TR4",
+ x86_TR5: "TR5",
+ x86_TR6: "TR6",
+ x86_TR7: "TR7",
+}
+
+/* tables.go */
+
+// DO NOT EDIT
+// generated by: x86map -fmt=decoder ../x86.csv
+
+var x86_decoder = [...]uint16{
+ uint16(x86_xFail),
+ /*1*/ uint16(x86_xCondByte), 243,
+ 0x00, 490,
+ 0x01, 496,
+ 0x02, 525,
+ 0x03, 531,
+ 0x04, 560,
+ 0x05, 566,
+ 0x06, 595,
+ 0x07, 602,
+ 0x08, 609,
+ 0x09, 615,
+ 0x0A, 644,
+ 0x0B, 650,
+ 0x0C, 679,
+ 0x0D, 685,
+ 0x0E, 714,
+ 0x0F, 721,
+ 0x10, 8026,
+ 0x11, 8032,
+ 0x12, 8061,
+ 0x13, 8067,
+ 0x14, 8096,
+ 0x15, 8102,
+ 0x16, 8131,
+ 0x17, 8138,
+ 0x18, 8145,
+ 0x19, 8151,
+ 0x1A, 8180,
+ 0x1B, 8186,
+ 0x1C, 8215,
+ 0x1D, 8221,
+ 0x1E, 8250,
+ 0x1F, 8257,
+ 0x20, 8264,
+ 0x21, 8270,
+ 0x22, 8299,
+ 0x23, 8305,
+ 0x24, 8334,
+ 0x25, 8340,
+ 0x27, 8369,
+ 0x28, 8375,
+ 0x29, 8381,
+ 0x2A, 8410,
+ 0x2B, 8416,
+ 0x2C, 8445,
+ 0x2D, 8451,
+ 0x2F, 8480,
+ 0x30, 8486,
+ 0x31, 8492,
+ 0x32, 8521,
+ 0x33, 8527,
+ 0x34, 8556,
+ 0x35, 8562,
+ 0x37, 8591,
+ 0x38, 8597,
+ 0x39, 8603,
+ 0x3A, 8632,
+ 0x3B, 8638,
+ 0x3C, 8667,
+ 0x3D, 8673,
+ 0x3F, 8702,
+ 0x40, 8708,
+ 0x41, 8708,
+ 0x42, 8708,
+ 0x43, 8708,
+ 0x44, 8708,
+ 0x45, 8708,
+ 0x46, 8708,
+ 0x47, 8708,
+ 0x48, 8723,
+ 0x49, 8723,
+ 0x4a, 8723,
+ 0x4b, 8723,
+ 0x4c, 8723,
+ 0x4d, 8723,
+ 0x4e, 8723,
+ 0x4f, 8723,
+ 0x50, 8738,
+ 0x51, 8738,
+ 0x52, 8738,
+ 0x53, 8738,
+ 0x54, 8738,
+ 0x55, 8738,
+ 0x56, 8738,
+ 0x57, 8738,
+ 0x58, 8765,
+ 0x59, 8765,
+ 0x5a, 8765,
+ 0x5b, 8765,
+ 0x5c, 8765,
+ 0x5d, 8765,
+ 0x5e, 8765,
+ 0x5f, 8765,
+ 0x60, 8792,
+ 0x61, 8805,
+ 0x62, 8818,
+ 0x63, 8837,
+ 0x68, 8868,
+ 0x69, 8887,
+ 0x6A, 8922,
+ 0x6B, 8927,
+ 0x6C, 8962,
+ 0x6D, 8965,
+ 0x6E, 8978,
+ 0x6F, 8981,
+ 0x70, 8994,
+ 0x71, 8999,
+ 0x72, 9004,
+ 0x73, 9009,
+ 0x74, 9014,
+ 0x75, 9019,
+ 0x76, 9024,
+ 0x77, 9029,
+ 0x78, 9034,
+ 0x79, 9039,
+ 0x7A, 9044,
+ 0x7B, 9049,
+ 0x7C, 9054,
+ 0x7D, 9059,
+ 0x7E, 9064,
+ 0x7F, 9069,
+ 0x80, 9074,
+ 0x81, 9131,
+ 0x83, 9372,
+ 0x84, 9613,
+ 0x85, 9619,
+ 0x86, 9648,
+ 0x87, 9654,
+ 0x88, 9683,
+ 0x89, 9689,
+ 0x8A, 9711,
+ 0x8B, 9717,
+ 0x8C, 9739,
+ 0x8D, 9768,
+ 0x8E, 9797,
+ 0x8F, 9826,
+ 0x90, 9862,
+ 0x91, 9862,
+ 0x92, 9862,
+ 0x93, 9862,
+ 0x94, 9862,
+ 0x95, 9862,
+ 0x96, 9862,
+ 0x97, 9862,
+ 0x98, 9888,
+ 0x99, 9908,
+ 0x9A, 9928,
+ 0x9B, 9945,
+ 0x9C, 9948,
+ 0x9D, 9971,
+ 0x9E, 9994,
+ 0x9F, 9997,
+ 0xA0, 10000,
+ 0xA1, 10019,
+ 0xA2, 10041,
+ 0xA3, 10060,
+ 0xA4, 10082,
+ 0xA5, 10085,
+ 0xA6, 10105,
+ 0xA7, 10108,
+ 0xA8, 10128,
+ 0xA9, 10134,
+ 0xAA, 10163,
+ 0xAB, 10166,
+ 0xAC, 10186,
+ 0xAD, 10189,
+ 0xAE, 10209,
+ 0xAF, 10212,
+ 0xb0, 10232,
+ 0xb1, 10232,
+ 0xb2, 10232,
+ 0xb3, 10232,
+ 0xb4, 10232,
+ 0xb5, 10232,
+ 0xb6, 10232,
+ 0xb7, 10232,
+ 0xb8, 10238,
+ 0xb9, 10238,
+ 0xba, 10238,
+ 0xbb, 10238,
+ 0xbc, 10238,
+ 0xbd, 10238,
+ 0xbe, 10238,
+ 0xbf, 10238,
+ 0xC0, 10267,
+ 0xC1, 10318,
+ 0xC2, 10516,
+ 0xC3, 10521,
+ 0xC4, 10524,
+ 0xC5, 10543,
+ 0xC6, 10562,
+ 0xC7, 10586,
+ 0xC8, 10647,
+ 0xC9, 10654,
+ 0xCA, 10677,
+ 0xCB, 10682,
+ 0xCC, 10685,
+ 0xCD, 10689,
+ 0xCE, 10694,
+ 0xCF, 10700,
+ 0xD0, 10720,
+ 0xD1, 10764,
+ 0xD2, 10955,
+ 0xD3, 10999,
+ 0xD4, 11190,
+ 0xD5, 11198,
+ 0xD7, 11206,
+ 0xD8, 11219,
+ 0xD9, 11428,
+ 0xDA, 11637,
+ 0xDB, 11769,
+ 0xDC, 11940,
+ 0xDD, 12109,
+ 0xDE, 12248,
+ 0xDF, 12422,
+ 0xE0, 12533,
+ 0xE1, 12538,
+ 0xE2, 12543,
+ 0xE3, 12548,
+ 0xE4, 12574,
+ 0xE5, 12580,
+ 0xE6, 12602,
+ 0xE7, 12608,
+ 0xE8, 12630,
+ 0xE9, 12661,
+ 0xEA, 12692,
+ 0xEB, 12709,
+ 0xEC, 12714,
+ 0xED, 12719,
+ 0xEE, 12738,
+ 0xEF, 12743,
+ 0xF1, 12762,
+ 0xF4, 12765,
+ 0xF5, 12768,
+ 0xF6, 12771,
+ 0xF7, 12810,
+ 0xF8, 12986,
+ 0xF9, 12989,
+ 0xFA, 12992,
+ 0xFB, 12995,
+ 0xFC, 12998,
+ 0xFD, 13001,
+ 0xFE, 13004,
+ 0xFF, 13021,
+ uint16(x86_xFail),
+ /*490*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*492*/ uint16(x86_xReadSlashR),
+ /*493*/ uint16(x86_xArgRM8),
+ /*494*/ uint16(x86_xArgR8),
+ /*495*/ uint16(x86_xMatch),
+ /*496*/ uint16(x86_xCondIs64), 499, 515,
+ /*499*/ uint16(x86_xCondDataSize), 503, 509, 0,
+ /*503*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*505*/ uint16(x86_xReadSlashR),
+ /*506*/ uint16(x86_xArgRM16),
+ /*507*/ uint16(x86_xArgR16),
+ /*508*/ uint16(x86_xMatch),
+ /*509*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*511*/ uint16(x86_xReadSlashR),
+ /*512*/ uint16(x86_xArgRM32),
+ /*513*/ uint16(x86_xArgR32),
+ /*514*/ uint16(x86_xMatch),
+ /*515*/ uint16(x86_xCondDataSize), 503, 509, 519,
+ /*519*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*521*/ uint16(x86_xReadSlashR),
+ /*522*/ uint16(x86_xArgRM64),
+ /*523*/ uint16(x86_xArgR64),
+ /*524*/ uint16(x86_xMatch),
+ /*525*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*527*/ uint16(x86_xReadSlashR),
+ /*528*/ uint16(x86_xArgR8),
+ /*529*/ uint16(x86_xArgRM8),
+ /*530*/ uint16(x86_xMatch),
+ /*531*/ uint16(x86_xCondIs64), 534, 550,
+ /*534*/ uint16(x86_xCondDataSize), 538, 544, 0,
+ /*538*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*540*/ uint16(x86_xReadSlashR),
+ /*541*/ uint16(x86_xArgR16),
+ /*542*/ uint16(x86_xArgRM16),
+ /*543*/ uint16(x86_xMatch),
+ /*544*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*546*/ uint16(x86_xReadSlashR),
+ /*547*/ uint16(x86_xArgR32),
+ /*548*/ uint16(x86_xArgRM32),
+ /*549*/ uint16(x86_xMatch),
+ /*550*/ uint16(x86_xCondDataSize), 538, 544, 554,
+ /*554*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*556*/ uint16(x86_xReadSlashR),
+ /*557*/ uint16(x86_xArgR64),
+ /*558*/ uint16(x86_xArgRM64),
+ /*559*/ uint16(x86_xMatch),
+ /*560*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*562*/ uint16(x86_xReadIb),
+ /*563*/ uint16(x86_xArgAL),
+ /*564*/ uint16(x86_xArgImm8u),
+ /*565*/ uint16(x86_xMatch),
+ /*566*/ uint16(x86_xCondIs64), 569, 585,
+ /*569*/ uint16(x86_xCondDataSize), 573, 579, 0,
+ /*573*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*575*/ uint16(x86_xReadIw),
+ /*576*/ uint16(x86_xArgAX),
+ /*577*/ uint16(x86_xArgImm16),
+ /*578*/ uint16(x86_xMatch),
+ /*579*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*581*/ uint16(x86_xReadId),
+ /*582*/ uint16(x86_xArgEAX),
+ /*583*/ uint16(x86_xArgImm32),
+ /*584*/ uint16(x86_xMatch),
+ /*585*/ uint16(x86_xCondDataSize), 573, 579, 589,
+ /*589*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*591*/ uint16(x86_xReadId),
+ /*592*/ uint16(x86_xArgRAX),
+ /*593*/ uint16(x86_xArgImm32),
+ /*594*/ uint16(x86_xMatch),
+ /*595*/ uint16(x86_xCondIs64), 598, 0,
+ /*598*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*600*/ uint16(x86_xArgES),
+ /*601*/ uint16(x86_xMatch),
+ /*602*/ uint16(x86_xCondIs64), 605, 0,
+ /*605*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*607*/ uint16(x86_xArgES),
+ /*608*/ uint16(x86_xMatch),
+ /*609*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*611*/ uint16(x86_xReadSlashR),
+ /*612*/ uint16(x86_xArgRM8),
+ /*613*/ uint16(x86_xArgR8),
+ /*614*/ uint16(x86_xMatch),
+ /*615*/ uint16(x86_xCondIs64), 618, 634,
+ /*618*/ uint16(x86_xCondDataSize), 622, 628, 0,
+ /*622*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*624*/ uint16(x86_xReadSlashR),
+ /*625*/ uint16(x86_xArgRM16),
+ /*626*/ uint16(x86_xArgR16),
+ /*627*/ uint16(x86_xMatch),
+ /*628*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*630*/ uint16(x86_xReadSlashR),
+ /*631*/ uint16(x86_xArgRM32),
+ /*632*/ uint16(x86_xArgR32),
+ /*633*/ uint16(x86_xMatch),
+ /*634*/ uint16(x86_xCondDataSize), 622, 628, 638,
+ /*638*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*640*/ uint16(x86_xReadSlashR),
+ /*641*/ uint16(x86_xArgRM64),
+ /*642*/ uint16(x86_xArgR64),
+ /*643*/ uint16(x86_xMatch),
+ /*644*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*646*/ uint16(x86_xReadSlashR),
+ /*647*/ uint16(x86_xArgR8),
+ /*648*/ uint16(x86_xArgRM8),
+ /*649*/ uint16(x86_xMatch),
+ /*650*/ uint16(x86_xCondIs64), 653, 669,
+ /*653*/ uint16(x86_xCondDataSize), 657, 663, 0,
+ /*657*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*659*/ uint16(x86_xReadSlashR),
+ /*660*/ uint16(x86_xArgR16),
+ /*661*/ uint16(x86_xArgRM16),
+ /*662*/ uint16(x86_xMatch),
+ /*663*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*665*/ uint16(x86_xReadSlashR),
+ /*666*/ uint16(x86_xArgR32),
+ /*667*/ uint16(x86_xArgRM32),
+ /*668*/ uint16(x86_xMatch),
+ /*669*/ uint16(x86_xCondDataSize), 657, 663, 673,
+ /*673*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*675*/ uint16(x86_xReadSlashR),
+ /*676*/ uint16(x86_xArgR64),
+ /*677*/ uint16(x86_xArgRM64),
+ /*678*/ uint16(x86_xMatch),
+ /*679*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*681*/ uint16(x86_xReadIb),
+ /*682*/ uint16(x86_xArgAL),
+ /*683*/ uint16(x86_xArgImm8u),
+ /*684*/ uint16(x86_xMatch),
+ /*685*/ uint16(x86_xCondIs64), 688, 704,
+ /*688*/ uint16(x86_xCondDataSize), 692, 698, 0,
+ /*692*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*694*/ uint16(x86_xReadIw),
+ /*695*/ uint16(x86_xArgAX),
+ /*696*/ uint16(x86_xArgImm16),
+ /*697*/ uint16(x86_xMatch),
+ /*698*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*700*/ uint16(x86_xReadId),
+ /*701*/ uint16(x86_xArgEAX),
+ /*702*/ uint16(x86_xArgImm32),
+ /*703*/ uint16(x86_xMatch),
+ /*704*/ uint16(x86_xCondDataSize), 692, 698, 708,
+ /*708*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*710*/ uint16(x86_xReadId),
+ /*711*/ uint16(x86_xArgRAX),
+ /*712*/ uint16(x86_xArgImm32),
+ /*713*/ uint16(x86_xMatch),
+ /*714*/ uint16(x86_xCondIs64), 717, 0,
+ /*717*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*719*/ uint16(x86_xArgCS),
+ /*720*/ uint16(x86_xMatch),
+ /*721*/ uint16(x86_xCondByte), 228,
+ 0x00, 1180,
+ 0x01, 1237,
+ 0x02, 1345,
+ 0x03, 1367,
+ 0x05, 1389,
+ 0x06, 1395,
+ 0x07, 1398,
+ 0x08, 1404,
+ 0x09, 1407,
+ 0x0B, 1410,
+ 0x0D, 1413,
+ 0x10, 1426,
+ 0x11, 1460,
+ 0x12, 1494,
+ 0x13, 1537,
+ 0x14, 1555,
+ 0x15, 1573,
+ 0x16, 1591,
+ 0x17, 1626,
+ 0x18, 1644,
+ 0x1F, 1669,
+ 0x20, 1690,
+ 0x21, 1705,
+ 0x22, 1720,
+ 0x23, 1735,
+ 0x24, 1750,
+ 0x26, 1765,
+ 0x28, 1780,
+ 0x29, 1798,
+ 0x2A, 1816,
+ 0x2B, 1903,
+ 0x2C, 1937,
+ 0x2D, 2024,
+ 0x2E, 2111,
+ 0x2F, 2129,
+ 0x30, 2147,
+ 0x31, 2150,
+ 0x32, 2153,
+ 0x33, 2156,
+ 0x34, 2159,
+ 0x35, 2162,
+ 0x38, 2172,
+ 0x3A, 3073,
+ 0x40, 3484,
+ 0x41, 3513,
+ 0x42, 3542,
+ 0x43, 3571,
+ 0x44, 3600,
+ 0x45, 3629,
+ 0x46, 3658,
+ 0x47, 3687,
+ 0x48, 3716,
+ 0x49, 3745,
+ 0x4A, 3774,
+ 0x4B, 3803,
+ 0x4C, 3832,
+ 0x4D, 3861,
+ 0x4E, 3890,
+ 0x4F, 3919,
+ 0x50, 3948,
+ 0x51, 3966,
+ 0x52, 4000,
+ 0x53, 4018,
+ 0x54, 4036,
+ 0x55, 4054,
+ 0x56, 4072,
+ 0x57, 4090,
+ 0x58, 4108,
+ 0x59, 4142,
+ 0x5A, 4176,
+ 0x5B, 4210,
+ 0x5C, 4236,
+ 0x5D, 4270,
+ 0x5E, 4304,
+ 0x5F, 4338,
+ 0x60, 4372,
+ 0x61, 4390,
+ 0x62, 4408,
+ 0x63, 4426,
+ 0x64, 4444,
+ 0x65, 4462,
+ 0x66, 4480,
+ 0x67, 4498,
+ 0x68, 4516,
+ 0x69, 4534,
+ 0x6A, 4552,
+ 0x6B, 4570,
+ 0x6C, 4588,
+ 0x6D, 4598,
+ 0x6E, 4608,
+ 0x6F, 4675,
+ 0x70, 4701,
+ 0x71, 4743,
+ 0x72, 4806,
+ 0x73, 4869,
+ 0x74, 4934,
+ 0x75, 4952,
+ 0x76, 4970,
+ 0x77, 4988,
+ 0x7C, 4991,
+ 0x7D, 5009,
+ 0x7E, 5027,
+ 0x7F, 5104,
+ 0x80, 5130,
+ 0x81, 5161,
+ 0x82, 5192,
+ 0x83, 5223,
+ 0x84, 5254,
+ 0x85, 5285,
+ 0x86, 5316,
+ 0x87, 5347,
+ 0x88, 5378,
+ 0x89, 5409,
+ 0x8A, 5440,
+ 0x8B, 5471,
+ 0x8C, 5502,
+ 0x8D, 5533,
+ 0x8E, 5564,
+ 0x8F, 5595,
+ 0x90, 5626,
+ 0x91, 5631,
+ 0x92, 5636,
+ 0x93, 5641,
+ 0x94, 5646,
+ 0x95, 5651,
+ 0x96, 5656,
+ 0x97, 5661,
+ 0x98, 5666,
+ 0x99, 5671,
+ 0x9A, 5676,
+ 0x9B, 5681,
+ 0x9C, 5686,
+ 0x9D, 5691,
+ 0x9E, 5696,
+ 0x9F, 5701,
+ 0xA0, 5706,
+ 0xA1, 5710,
+ 0xA2, 5737,
+ 0xA3, 5740,
+ 0xA4, 5769,
+ 0xA5, 5804,
+ 0xA8, 5836,
+ 0xA9, 5840,
+ 0xAA, 5867,
+ 0xAB, 5870,
+ 0xAC, 5899,
+ 0xAD, 5934,
+ 0xAE, 5966,
+ 0xAF, 6224,
+ 0xB0, 6253,
+ 0xB1, 6259,
+ 0xB2, 6288,
+ 0xB3, 6317,
+ 0xB4, 6346,
+ 0xB5, 6375,
+ 0xB6, 6404,
+ 0xB7, 6433,
+ 0xB8, 6462,
+ 0xB9, 6499,
+ 0xBA, 6502,
+ 0xBB, 6627,
+ 0xBC, 6656,
+ 0xBD, 6723,
+ 0xBE, 6790,
+ 0xBF, 6819,
+ 0xC0, 6848,
+ 0xC1, 6854,
+ 0xC2, 6883,
+ 0xC3, 6925,
+ 0xC4, 6954,
+ 0xC5, 6976,
+ 0xC6, 6998,
+ 0xC7, 7020,
+ 0xc8, 7149,
+ 0xc9, 7149,
+ 0xca, 7149,
+ 0xcb, 7149,
+ 0xcc, 7149,
+ 0xcd, 7149,
+ 0xce, 7149,
+ 0xcf, 7149,
+ 0xD0, 7172,
+ 0xD1, 7190,
+ 0xD2, 7208,
+ 0xD3, 7226,
+ 0xD4, 7244,
+ 0xD5, 7262,
+ 0xD6, 7280,
+ 0xD7, 7306,
+ 0xD8, 7324,
+ 0xD9, 7342,
+ 0xDA, 7360,
+ 0xDB, 7378,
+ 0xDC, 7396,
+ 0xDD, 7414,
+ 0xDE, 7432,
+ 0xDF, 7450,
+ 0xE0, 7468,
+ 0xE1, 7486,
+ 0xE2, 7504,
+ 0xE3, 7522,
+ 0xE4, 7540,
+ 0xE5, 7558,
+ 0xE6, 7576,
+ 0xE7, 7602,
+ 0xE8, 7620,
+ 0xE9, 7638,
+ 0xEA, 7656,
+ 0xEB, 7674,
+ 0xEC, 7692,
+ 0xED, 7710,
+ 0xEE, 7728,
+ 0xEF, 7746,
+ 0xF0, 7764,
+ 0xF1, 7774,
+ 0xF2, 7792,
+ 0xF3, 7810,
+ 0xF4, 7828,
+ 0xF5, 7846,
+ 0xF6, 7864,
+ 0xF7, 7882,
+ 0xF8, 7900,
+ 0xF9, 7918,
+ 0xFA, 7936,
+ 0xFB, 7954,
+ 0xFC, 7972,
+ 0xFD, 7990,
+ 0xFE, 8008,
+ uint16(x86_xFail),
+ /*1180*/ uint16(x86_xCondSlashR),
+ 1189, // 0
+ 1205, // 1
+ 1221, // 2
+ 1225, // 3
+ 1229, // 4
+ 1233, // 5
+ 0, // 6
+ 0, // 7
+ /*1189*/ uint16(x86_xCondDataSize), 1193, 1197, 1201,
+ /*1193*/ uint16(x86_xSetOp), uint16(x86_SLDT),
+ /*1195*/ uint16(x86_xArgRM16),
+ /*1196*/ uint16(x86_xMatch),
+ /*1197*/ uint16(x86_xSetOp), uint16(x86_SLDT),
+ /*1199*/ uint16(x86_xArgR32M16),
+ /*1200*/ uint16(x86_xMatch),
+ /*1201*/ uint16(x86_xSetOp), uint16(x86_SLDT),
+ /*1203*/ uint16(x86_xArgR64M16),
+ /*1204*/ uint16(x86_xMatch),
+ /*1205*/ uint16(x86_xCondDataSize), 1209, 1213, 1217,
+ /*1209*/ uint16(x86_xSetOp), uint16(x86_STR),
+ /*1211*/ uint16(x86_xArgRM16),
+ /*1212*/ uint16(x86_xMatch),
+ /*1213*/ uint16(x86_xSetOp), uint16(x86_STR),
+ /*1215*/ uint16(x86_xArgR32M16),
+ /*1216*/ uint16(x86_xMatch),
+ /*1217*/ uint16(x86_xSetOp), uint16(x86_STR),
+ /*1219*/ uint16(x86_xArgR64M16),
+ /*1220*/ uint16(x86_xMatch),
+ /*1221*/ uint16(x86_xSetOp), uint16(x86_LLDT),
+ /*1223*/ uint16(x86_xArgRM16),
+ /*1224*/ uint16(x86_xMatch),
+ /*1225*/ uint16(x86_xSetOp), uint16(x86_LTR),
+ /*1227*/ uint16(x86_xArgRM16),
+ /*1228*/ uint16(x86_xMatch),
+ /*1229*/ uint16(x86_xSetOp), uint16(x86_VERR),
+ /*1231*/ uint16(x86_xArgRM16),
+ /*1232*/ uint16(x86_xMatch),
+ /*1233*/ uint16(x86_xSetOp), uint16(x86_VERW),
+ /*1235*/ uint16(x86_xArgRM16),
+ /*1236*/ uint16(x86_xMatch),
+ /*1237*/ uint16(x86_xCondByte), 8,
+ 0xC8, 1318,
+ 0xC9, 1321,
+ 0xD0, 1324,
+ 0xD1, 1327,
+ 0xD5, 1330,
+ 0xD6, 1333,
+ 0xF8, 1336,
+ 0xF9, 1342,
+ /*1255*/ uint16(x86_xCondSlashR),
+ 1264, // 0
+ 1268, // 1
+ 1272, // 2
+ 1283, // 3
+ 1294, // 4
+ 0, // 5
+ 1310, // 6
+ 1314, // 7
+ /*1264*/ uint16(x86_xSetOp), uint16(x86_SGDT),
+ /*1266*/ uint16(x86_xArgM),
+ /*1267*/ uint16(x86_xMatch),
+ /*1268*/ uint16(x86_xSetOp), uint16(x86_SIDT),
+ /*1270*/ uint16(x86_xArgM),
+ /*1271*/ uint16(x86_xMatch),
+ /*1272*/ uint16(x86_xCondIs64), 1275, 1279,
+ /*1275*/ uint16(x86_xSetOp), uint16(x86_LGDT),
+ /*1277*/ uint16(x86_xArgM16and32),
+ /*1278*/ uint16(x86_xMatch),
+ /*1279*/ uint16(x86_xSetOp), uint16(x86_LGDT),
+ /*1281*/ uint16(x86_xArgM16and64),
+ /*1282*/ uint16(x86_xMatch),
+ /*1283*/ uint16(x86_xCondIs64), 1286, 1290,
+ /*1286*/ uint16(x86_xSetOp), uint16(x86_LIDT),
+ /*1288*/ uint16(x86_xArgM16and32),
+ /*1289*/ uint16(x86_xMatch),
+ /*1290*/ uint16(x86_xSetOp), uint16(x86_LIDT),
+ /*1292*/ uint16(x86_xArgM16and64),
+ /*1293*/ uint16(x86_xMatch),
+ /*1294*/ uint16(x86_xCondDataSize), 1298, 1302, 1306,
+ /*1298*/ uint16(x86_xSetOp), uint16(x86_SMSW),
+ /*1300*/ uint16(x86_xArgRM16),
+ /*1301*/ uint16(x86_xMatch),
+ /*1302*/ uint16(x86_xSetOp), uint16(x86_SMSW),
+ /*1304*/ uint16(x86_xArgR32M16),
+ /*1305*/ uint16(x86_xMatch),
+ /*1306*/ uint16(x86_xSetOp), uint16(x86_SMSW),
+ /*1308*/ uint16(x86_xArgR64M16),
+ /*1309*/ uint16(x86_xMatch),
+ /*1310*/ uint16(x86_xSetOp), uint16(x86_LMSW),
+ /*1312*/ uint16(x86_xArgRM16),
+ /*1313*/ uint16(x86_xMatch),
+ /*1314*/ uint16(x86_xSetOp), uint16(x86_INVLPG),
+ /*1316*/ uint16(x86_xArgM),
+ /*1317*/ uint16(x86_xMatch),
+ /*1318*/ uint16(x86_xSetOp), uint16(x86_MONITOR),
+ /*1320*/ uint16(x86_xMatch),
+ /*1321*/ uint16(x86_xSetOp), uint16(x86_MWAIT),
+ /*1323*/ uint16(x86_xMatch),
+ /*1324*/ uint16(x86_xSetOp), uint16(x86_XGETBV),
+ /*1326*/ uint16(x86_xMatch),
+ /*1327*/ uint16(x86_xSetOp), uint16(x86_XSETBV),
+ /*1329*/ uint16(x86_xMatch),
+ /*1330*/ uint16(x86_xSetOp), uint16(x86_XEND),
+ /*1332*/ uint16(x86_xMatch),
+ /*1333*/ uint16(x86_xSetOp), uint16(x86_XTEST),
+ /*1335*/ uint16(x86_xMatch),
+ /*1336*/ uint16(x86_xCondIs64), 0, 1339,
+ /*1339*/ uint16(x86_xSetOp), uint16(x86_SWAPGS),
+ /*1341*/ uint16(x86_xMatch),
+ /*1342*/ uint16(x86_xSetOp), uint16(x86_RDTSCP),
+ /*1344*/ uint16(x86_xMatch),
+ /*1345*/ uint16(x86_xCondDataSize), 1349, 1355, 1361,
+ /*1349*/ uint16(x86_xSetOp), uint16(x86_LAR),
+ /*1351*/ uint16(x86_xReadSlashR),
+ /*1352*/ uint16(x86_xArgR16),
+ /*1353*/ uint16(x86_xArgRM16),
+ /*1354*/ uint16(x86_xMatch),
+ /*1355*/ uint16(x86_xSetOp), uint16(x86_LAR),
+ /*1357*/ uint16(x86_xReadSlashR),
+ /*1358*/ uint16(x86_xArgR32),
+ /*1359*/ uint16(x86_xArgR32M16),
+ /*1360*/ uint16(x86_xMatch),
+ /*1361*/ uint16(x86_xSetOp), uint16(x86_LAR),
+ /*1363*/ uint16(x86_xReadSlashR),
+ /*1364*/ uint16(x86_xArgR64),
+ /*1365*/ uint16(x86_xArgR64M16),
+ /*1366*/ uint16(x86_xMatch),
+ /*1367*/ uint16(x86_xCondDataSize), 1371, 1377, 1383,
+ /*1371*/ uint16(x86_xSetOp), uint16(x86_LSL),
+ /*1373*/ uint16(x86_xReadSlashR),
+ /*1374*/ uint16(x86_xArgR16),
+ /*1375*/ uint16(x86_xArgRM16),
+ /*1376*/ uint16(x86_xMatch),
+ /*1377*/ uint16(x86_xSetOp), uint16(x86_LSL),
+ /*1379*/ uint16(x86_xReadSlashR),
+ /*1380*/ uint16(x86_xArgR32),
+ /*1381*/ uint16(x86_xArgR32M16),
+ /*1382*/ uint16(x86_xMatch),
+ /*1383*/ uint16(x86_xSetOp), uint16(x86_LSL),
+ /*1385*/ uint16(x86_xReadSlashR),
+ /*1386*/ uint16(x86_xArgR64),
+ /*1387*/ uint16(x86_xArgR32M16),
+ /*1388*/ uint16(x86_xMatch),
+ /*1389*/ uint16(x86_xCondIs64), 0, 1392,
+ /*1392*/ uint16(x86_xSetOp), uint16(x86_SYSCALL),
+ /*1394*/ uint16(x86_xMatch),
+ /*1395*/ uint16(x86_xSetOp), uint16(x86_CLTS),
+ /*1397*/ uint16(x86_xMatch),
+ /*1398*/ uint16(x86_xCondIs64), 0, 1401,
+ /*1401*/ uint16(x86_xSetOp), uint16(x86_SYSRET),
+ /*1403*/ uint16(x86_xMatch),
+ /*1404*/ uint16(x86_xSetOp), uint16(x86_INVD),
+ /*1406*/ uint16(x86_xMatch),
+ /*1407*/ uint16(x86_xSetOp), uint16(x86_WBINVD),
+ /*1409*/ uint16(x86_xMatch),
+ /*1410*/ uint16(x86_xSetOp), uint16(x86_UD2),
+ /*1412*/ uint16(x86_xMatch),
+ /*1413*/ uint16(x86_xCondSlashR),
+ 0, // 0
+ 1422, // 1
+ 0, // 2
+ 0, // 3
+ 0, // 4
+ 0, // 5
+ 0, // 6
+ 0, // 7
+ /*1422*/ uint16(x86_xSetOp), uint16(x86_PREFETCHW),
+ /*1424*/ uint16(x86_xArgM8),
+ /*1425*/ uint16(x86_xMatch),
+ /*1426*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 1454,
+ 0xF2, 1448,
+ 0x66, 1442,
+ 0x0, 1436,
+ /*1436*/ uint16(x86_xSetOp), uint16(x86_MOVUPS),
+ /*1438*/ uint16(x86_xReadSlashR),
+ /*1439*/ uint16(x86_xArgXmm1),
+ /*1440*/ uint16(x86_xArgXmm2M128),
+ /*1441*/ uint16(x86_xMatch),
+ /*1442*/ uint16(x86_xSetOp), uint16(x86_MOVUPD),
+ /*1444*/ uint16(x86_xReadSlashR),
+ /*1445*/ uint16(x86_xArgXmm1),
+ /*1446*/ uint16(x86_xArgXmm2M128),
+ /*1447*/ uint16(x86_xMatch),
+ /*1448*/ uint16(x86_xSetOp), uint16(x86_MOVSD_XMM),
+ /*1450*/ uint16(x86_xReadSlashR),
+ /*1451*/ uint16(x86_xArgXmm1),
+ /*1452*/ uint16(x86_xArgXmm2M64),
+ /*1453*/ uint16(x86_xMatch),
+ /*1454*/ uint16(x86_xSetOp), uint16(x86_MOVSS),
+ /*1456*/ uint16(x86_xReadSlashR),
+ /*1457*/ uint16(x86_xArgXmm1),
+ /*1458*/ uint16(x86_xArgXmm2M32),
+ /*1459*/ uint16(x86_xMatch),
+ /*1460*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 1488,
+ 0xF2, 1482,
+ 0x66, 1476,
+ 0x0, 1470,
+ /*1470*/ uint16(x86_xSetOp), uint16(x86_MOVUPS),
+ /*1472*/ uint16(x86_xReadSlashR),
+ /*1473*/ uint16(x86_xArgXmm2M128),
+ /*1474*/ uint16(x86_xArgXmm1),
+ /*1475*/ uint16(x86_xMatch),
+ /*1476*/ uint16(x86_xSetOp), uint16(x86_MOVUPD),
+ /*1478*/ uint16(x86_xReadSlashR),
+ /*1479*/ uint16(x86_xArgXmm2M128),
+ /*1480*/ uint16(x86_xArgXmm),
+ /*1481*/ uint16(x86_xMatch),
+ /*1482*/ uint16(x86_xSetOp), uint16(x86_MOVSD_XMM),
+ /*1484*/ uint16(x86_xReadSlashR),
+ /*1485*/ uint16(x86_xArgXmm2M64),
+ /*1486*/ uint16(x86_xArgXmm1),
+ /*1487*/ uint16(x86_xMatch),
+ /*1488*/ uint16(x86_xSetOp), uint16(x86_MOVSS),
+ /*1490*/ uint16(x86_xReadSlashR),
+ /*1491*/ uint16(x86_xArgXmm2M32),
+ /*1492*/ uint16(x86_xArgXmm),
+ /*1493*/ uint16(x86_xMatch),
+ /*1494*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 1531,
+ 0xF2, 1525,
+ 0x66, 1519,
+ 0x0, 1504,
+ /*1504*/ uint16(x86_xCondIsMem), 1507, 1513,
+ /*1507*/ uint16(x86_xSetOp), uint16(x86_MOVHLPS),
+ /*1509*/ uint16(x86_xReadSlashR),
+ /*1510*/ uint16(x86_xArgXmm1),
+ /*1511*/ uint16(x86_xArgXmm2),
+ /*1512*/ uint16(x86_xMatch),
+ /*1513*/ uint16(x86_xSetOp), uint16(x86_MOVLPS),
+ /*1515*/ uint16(x86_xReadSlashR),
+ /*1516*/ uint16(x86_xArgXmm),
+ /*1517*/ uint16(x86_xArgM64),
+ /*1518*/ uint16(x86_xMatch),
+ /*1519*/ uint16(x86_xSetOp), uint16(x86_MOVLPD),
+ /*1521*/ uint16(x86_xReadSlashR),
+ /*1522*/ uint16(x86_xArgXmm),
+ /*1523*/ uint16(x86_xArgXmm2M64),
+ /*1524*/ uint16(x86_xMatch),
+ /*1525*/ uint16(x86_xSetOp), uint16(x86_MOVDDUP),
+ /*1527*/ uint16(x86_xReadSlashR),
+ /*1528*/ uint16(x86_xArgXmm1),
+ /*1529*/ uint16(x86_xArgXmm2M64),
+ /*1530*/ uint16(x86_xMatch),
+ /*1531*/ uint16(x86_xSetOp), uint16(x86_MOVSLDUP),
+ /*1533*/ uint16(x86_xReadSlashR),
+ /*1534*/ uint16(x86_xArgXmm1),
+ /*1535*/ uint16(x86_xArgXmm2M128),
+ /*1536*/ uint16(x86_xMatch),
+ /*1537*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 1549,
+ 0x0, 1543,
+ /*1543*/ uint16(x86_xSetOp), uint16(x86_MOVLPS),
+ /*1545*/ uint16(x86_xReadSlashR),
+ /*1546*/ uint16(x86_xArgM64),
+ /*1547*/ uint16(x86_xArgXmm),
+ /*1548*/ uint16(x86_xMatch),
+ /*1549*/ uint16(x86_xSetOp), uint16(x86_MOVLPD),
+ /*1551*/ uint16(x86_xReadSlashR),
+ /*1552*/ uint16(x86_xArgXmm2M64),
+ /*1553*/ uint16(x86_xArgXmm),
+ /*1554*/ uint16(x86_xMatch),
+ /*1555*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 1567,
+ 0x0, 1561,
+ /*1561*/ uint16(x86_xSetOp), uint16(x86_UNPCKLPS),
+ /*1563*/ uint16(x86_xReadSlashR),
+ /*1564*/ uint16(x86_xArgXmm1),
+ /*1565*/ uint16(x86_xArgXmm2M128),
+ /*1566*/ uint16(x86_xMatch),
+ /*1567*/ uint16(x86_xSetOp), uint16(x86_UNPCKLPD),
+ /*1569*/ uint16(x86_xReadSlashR),
+ /*1570*/ uint16(x86_xArgXmm1),
+ /*1571*/ uint16(x86_xArgXmm2M128),
+ /*1572*/ uint16(x86_xMatch),
+ /*1573*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 1585,
+ 0x0, 1579,
+ /*1579*/ uint16(x86_xSetOp), uint16(x86_UNPCKHPS),
+ /*1581*/ uint16(x86_xReadSlashR),
+ /*1582*/ uint16(x86_xArgXmm1),
+ /*1583*/ uint16(x86_xArgXmm2M128),
+ /*1584*/ uint16(x86_xMatch),
+ /*1585*/ uint16(x86_xSetOp), uint16(x86_UNPCKHPD),
+ /*1587*/ uint16(x86_xReadSlashR),
+ /*1588*/ uint16(x86_xArgXmm1),
+ /*1589*/ uint16(x86_xArgXmm2M128),
+ /*1590*/ uint16(x86_xMatch),
+ /*1591*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 1620,
+ 0x66, 1614,
+ 0x0, 1599,
+ /*1599*/ uint16(x86_xCondIsMem), 1602, 1608,
+ /*1602*/ uint16(x86_xSetOp), uint16(x86_MOVLHPS),
+ /*1604*/ uint16(x86_xReadSlashR),
+ /*1605*/ uint16(x86_xArgXmm1),
+ /*1606*/ uint16(x86_xArgXmm2),
+ /*1607*/ uint16(x86_xMatch),
+ /*1608*/ uint16(x86_xSetOp), uint16(x86_MOVHPS),
+ /*1610*/ uint16(x86_xReadSlashR),
+ /*1611*/ uint16(x86_xArgXmm),
+ /*1612*/ uint16(x86_xArgM64),
+ /*1613*/ uint16(x86_xMatch),
+ /*1614*/ uint16(x86_xSetOp), uint16(x86_MOVHPD),
+ /*1616*/ uint16(x86_xReadSlashR),
+ /*1617*/ uint16(x86_xArgXmm),
+ /*1618*/ uint16(x86_xArgXmm2M64),
+ /*1619*/ uint16(x86_xMatch),
+ /*1620*/ uint16(x86_xSetOp), uint16(x86_MOVSHDUP),
+ /*1622*/ uint16(x86_xReadSlashR),
+ /*1623*/ uint16(x86_xArgXmm1),
+ /*1624*/ uint16(x86_xArgXmm2M128),
+ /*1625*/ uint16(x86_xMatch),
+ /*1626*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 1638,
+ 0x0, 1632,
+ /*1632*/ uint16(x86_xSetOp), uint16(x86_MOVHPS),
+ /*1634*/ uint16(x86_xReadSlashR),
+ /*1635*/ uint16(x86_xArgM64),
+ /*1636*/ uint16(x86_xArgXmm),
+ /*1637*/ uint16(x86_xMatch),
+ /*1638*/ uint16(x86_xSetOp), uint16(x86_MOVHPD),
+ /*1640*/ uint16(x86_xReadSlashR),
+ /*1641*/ uint16(x86_xArgXmm2M64),
+ /*1642*/ uint16(x86_xArgXmm),
+ /*1643*/ uint16(x86_xMatch),
+ /*1644*/ uint16(x86_xCondSlashR),
+ 1653, // 0
+ 1657, // 1
+ 1661, // 2
+ 1665, // 3
+ 0, // 4
+ 0, // 5
+ 0, // 6
+ 0, // 7
+ /*1653*/ uint16(x86_xSetOp), uint16(x86_PREFETCHNTA),
+ /*1655*/ uint16(x86_xArgM8),
+ /*1656*/ uint16(x86_xMatch),
+ /*1657*/ uint16(x86_xSetOp), uint16(x86_PREFETCHT0),
+ /*1659*/ uint16(x86_xArgM8),
+ /*1660*/ uint16(x86_xMatch),
+ /*1661*/ uint16(x86_xSetOp), uint16(x86_PREFETCHT1),
+ /*1663*/ uint16(x86_xArgM8),
+ /*1664*/ uint16(x86_xMatch),
+ /*1665*/ uint16(x86_xSetOp), uint16(x86_PREFETCHT2),
+ /*1667*/ uint16(x86_xArgM8),
+ /*1668*/ uint16(x86_xMatch),
+ /*1669*/ uint16(x86_xCondSlashR),
+ 1678, // 0
+ 0, // 1
+ 0, // 2
+ 0, // 3
+ 0, // 4
+ 0, // 5
+ 0, // 6
+ 0, // 7
+ /*1678*/ uint16(x86_xCondDataSize), 1682, 1686, 0,
+ /*1682*/ uint16(x86_xSetOp), uint16(x86_NOP),
+ /*1684*/ uint16(x86_xArgRM16),
+ /*1685*/ uint16(x86_xMatch),
+ /*1686*/ uint16(x86_xSetOp), uint16(x86_NOP),
+ /*1688*/ uint16(x86_xArgRM32),
+ /*1689*/ uint16(x86_xMatch),
+ /*1690*/ uint16(x86_xCondIs64), 1693, 1699,
+ /*1693*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1695*/ uint16(x86_xReadSlashR),
+ /*1696*/ uint16(x86_xArgRmf32),
+ /*1697*/ uint16(x86_xArgCR0dashCR7),
+ /*1698*/ uint16(x86_xMatch),
+ /*1699*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1701*/ uint16(x86_xReadSlashR),
+ /*1702*/ uint16(x86_xArgRmf64),
+ /*1703*/ uint16(x86_xArgCR0dashCR7),
+ /*1704*/ uint16(x86_xMatch),
+ /*1705*/ uint16(x86_xCondIs64), 1708, 1714,
+ /*1708*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1710*/ uint16(x86_xReadSlashR),
+ /*1711*/ uint16(x86_xArgRmf32),
+ /*1712*/ uint16(x86_xArgDR0dashDR7),
+ /*1713*/ uint16(x86_xMatch),
+ /*1714*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1716*/ uint16(x86_xReadSlashR),
+ /*1717*/ uint16(x86_xArgRmf64),
+ /*1718*/ uint16(x86_xArgDR0dashDR7),
+ /*1719*/ uint16(x86_xMatch),
+ /*1720*/ uint16(x86_xCondIs64), 1723, 1729,
+ /*1723*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1725*/ uint16(x86_xReadSlashR),
+ /*1726*/ uint16(x86_xArgCR0dashCR7),
+ /*1727*/ uint16(x86_xArgRmf32),
+ /*1728*/ uint16(x86_xMatch),
+ /*1729*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1731*/ uint16(x86_xReadSlashR),
+ /*1732*/ uint16(x86_xArgCR0dashCR7),
+ /*1733*/ uint16(x86_xArgRmf64),
+ /*1734*/ uint16(x86_xMatch),
+ /*1735*/ uint16(x86_xCondIs64), 1738, 1744,
+ /*1738*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1740*/ uint16(x86_xReadSlashR),
+ /*1741*/ uint16(x86_xArgDR0dashDR7),
+ /*1742*/ uint16(x86_xArgRmf32),
+ /*1743*/ uint16(x86_xMatch),
+ /*1744*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1746*/ uint16(x86_xReadSlashR),
+ /*1747*/ uint16(x86_xArgDR0dashDR7),
+ /*1748*/ uint16(x86_xArgRmf64),
+ /*1749*/ uint16(x86_xMatch),
+ /*1750*/ uint16(x86_xCondIs64), 1753, 1759,
+ /*1753*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1755*/ uint16(x86_xReadSlashR),
+ /*1756*/ uint16(x86_xArgRmf32),
+ /*1757*/ uint16(x86_xArgTR0dashTR7),
+ /*1758*/ uint16(x86_xMatch),
+ /*1759*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1761*/ uint16(x86_xReadSlashR),
+ /*1762*/ uint16(x86_xArgRmf64),
+ /*1763*/ uint16(x86_xArgTR0dashTR7),
+ /*1764*/ uint16(x86_xMatch),
+ /*1765*/ uint16(x86_xCondIs64), 1768, 1774,
+ /*1768*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1770*/ uint16(x86_xReadSlashR),
+ /*1771*/ uint16(x86_xArgTR0dashTR7),
+ /*1772*/ uint16(x86_xArgRmf32),
+ /*1773*/ uint16(x86_xMatch),
+ /*1774*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*1776*/ uint16(x86_xReadSlashR),
+ /*1777*/ uint16(x86_xArgTR0dashTR7),
+ /*1778*/ uint16(x86_xArgRmf64),
+ /*1779*/ uint16(x86_xMatch),
+ /*1780*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 1792,
+ 0x0, 1786,
+ /*1786*/ uint16(x86_xSetOp), uint16(x86_MOVAPS),
+ /*1788*/ uint16(x86_xReadSlashR),
+ /*1789*/ uint16(x86_xArgXmm1),
+ /*1790*/ uint16(x86_xArgXmm2M128),
+ /*1791*/ uint16(x86_xMatch),
+ /*1792*/ uint16(x86_xSetOp), uint16(x86_MOVAPD),
+ /*1794*/ uint16(x86_xReadSlashR),
+ /*1795*/ uint16(x86_xArgXmm1),
+ /*1796*/ uint16(x86_xArgXmm2M128),
+ /*1797*/ uint16(x86_xMatch),
+ /*1798*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 1810,
+ 0x0, 1804,
+ /*1804*/ uint16(x86_xSetOp), uint16(x86_MOVAPS),
+ /*1806*/ uint16(x86_xReadSlashR),
+ /*1807*/ uint16(x86_xArgXmm2M128),
+ /*1808*/ uint16(x86_xArgXmm1),
+ /*1809*/ uint16(x86_xMatch),
+ /*1810*/ uint16(x86_xSetOp), uint16(x86_MOVAPD),
+ /*1812*/ uint16(x86_xReadSlashR),
+ /*1813*/ uint16(x86_xArgXmm2M128),
+ /*1814*/ uint16(x86_xArgXmm1),
+ /*1815*/ uint16(x86_xMatch),
+ /*1816*/ uint16(x86_xCondIs64), 1819, 1873,
+ /*1819*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 1857,
+ 0xF2, 1841,
+ 0x66, 1835,
+ 0x0, 1829,
+ /*1829*/ uint16(x86_xSetOp), uint16(x86_CVTPI2PS),
+ /*1831*/ uint16(x86_xReadSlashR),
+ /*1832*/ uint16(x86_xArgXmm),
+ /*1833*/ uint16(x86_xArgMmM64),
+ /*1834*/ uint16(x86_xMatch),
+ /*1835*/ uint16(x86_xSetOp), uint16(x86_CVTPI2PD),
+ /*1837*/ uint16(x86_xReadSlashR),
+ /*1838*/ uint16(x86_xArgXmm),
+ /*1839*/ uint16(x86_xArgMmM64),
+ /*1840*/ uint16(x86_xMatch),
+ /*1841*/ uint16(x86_xCondDataSize), 1845, 1851, 0,
+ /*1845*/ uint16(x86_xSetOp), uint16(x86_CVTSI2SD),
+ /*1847*/ uint16(x86_xReadSlashR),
+ /*1848*/ uint16(x86_xArgXmm),
+ /*1849*/ uint16(x86_xArgRM32),
+ /*1850*/ uint16(x86_xMatch),
+ /*1851*/ uint16(x86_xSetOp), uint16(x86_CVTSI2SD),
+ /*1853*/ uint16(x86_xReadSlashR),
+ /*1854*/ uint16(x86_xArgXmm),
+ /*1855*/ uint16(x86_xArgRM32),
+ /*1856*/ uint16(x86_xMatch),
+ /*1857*/ uint16(x86_xCondDataSize), 1861, 1867, 0,
+ /*1861*/ uint16(x86_xSetOp), uint16(x86_CVTSI2SS),
+ /*1863*/ uint16(x86_xReadSlashR),
+ /*1864*/ uint16(x86_xArgXmm),
+ /*1865*/ uint16(x86_xArgRM32),
+ /*1866*/ uint16(x86_xMatch),
+ /*1867*/ uint16(x86_xSetOp), uint16(x86_CVTSI2SS),
+ /*1869*/ uint16(x86_xReadSlashR),
+ /*1870*/ uint16(x86_xArgXmm),
+ /*1871*/ uint16(x86_xArgRM32),
+ /*1872*/ uint16(x86_xMatch),
+ /*1873*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 1893,
+ 0xF2, 1883,
+ 0x66, 1835,
+ 0x0, 1829,
+ /*1883*/ uint16(x86_xCondDataSize), 1845, 1851, 1887,
+ /*1887*/ uint16(x86_xSetOp), uint16(x86_CVTSI2SD),
+ /*1889*/ uint16(x86_xReadSlashR),
+ /*1890*/ uint16(x86_xArgXmm),
+ /*1891*/ uint16(x86_xArgRM64),
+ /*1892*/ uint16(x86_xMatch),
+ /*1893*/ uint16(x86_xCondDataSize), 1861, 1867, 1897,
+ /*1897*/ uint16(x86_xSetOp), uint16(x86_CVTSI2SS),
+ /*1899*/ uint16(x86_xReadSlashR),
+ /*1900*/ uint16(x86_xArgXmm),
+ /*1901*/ uint16(x86_xArgRM64),
+ /*1902*/ uint16(x86_xMatch),
+ /*1903*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 1931,
+ 0xF2, 1925,
+ 0x66, 1919,
+ 0x0, 1913,
+ /*1913*/ uint16(x86_xSetOp), uint16(x86_MOVNTPS),
+ /*1915*/ uint16(x86_xReadSlashR),
+ /*1916*/ uint16(x86_xArgM128),
+ /*1917*/ uint16(x86_xArgXmm),
+ /*1918*/ uint16(x86_xMatch),
+ /*1919*/ uint16(x86_xSetOp), uint16(x86_MOVNTPD),
+ /*1921*/ uint16(x86_xReadSlashR),
+ /*1922*/ uint16(x86_xArgM128),
+ /*1923*/ uint16(x86_xArgXmm),
+ /*1924*/ uint16(x86_xMatch),
+ /*1925*/ uint16(x86_xSetOp), uint16(x86_MOVNTSD),
+ /*1927*/ uint16(x86_xReadSlashR),
+ /*1928*/ uint16(x86_xArgM64),
+ /*1929*/ uint16(x86_xArgXmm),
+ /*1930*/ uint16(x86_xMatch),
+ /*1931*/ uint16(x86_xSetOp), uint16(x86_MOVNTSS),
+ /*1933*/ uint16(x86_xReadSlashR),
+ /*1934*/ uint16(x86_xArgM32),
+ /*1935*/ uint16(x86_xArgXmm),
+ /*1936*/ uint16(x86_xMatch),
+ /*1937*/ uint16(x86_xCondIs64), 1940, 1994,
+ /*1940*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 1978,
+ 0xF2, 1962,
+ 0x66, 1956,
+ 0x0, 1950,
+ /*1950*/ uint16(x86_xSetOp), uint16(x86_CVTTPS2PI),
+ /*1952*/ uint16(x86_xReadSlashR),
+ /*1953*/ uint16(x86_xArgMm),
+ /*1954*/ uint16(x86_xArgXmmM64),
+ /*1955*/ uint16(x86_xMatch),
+ /*1956*/ uint16(x86_xSetOp), uint16(x86_CVTTPD2PI),
+ /*1958*/ uint16(x86_xReadSlashR),
+ /*1959*/ uint16(x86_xArgMm),
+ /*1960*/ uint16(x86_xArgXmmM128),
+ /*1961*/ uint16(x86_xMatch),
+ /*1962*/ uint16(x86_xCondDataSize), 1966, 1972, 0,
+ /*1966*/ uint16(x86_xSetOp), uint16(x86_CVTTSD2SI),
+ /*1968*/ uint16(x86_xReadSlashR),
+ /*1969*/ uint16(x86_xArgR32),
+ /*1970*/ uint16(x86_xArgXmmM64),
+ /*1971*/ uint16(x86_xMatch),
+ /*1972*/ uint16(x86_xSetOp), uint16(x86_CVTTSD2SI),
+ /*1974*/ uint16(x86_xReadSlashR),
+ /*1975*/ uint16(x86_xArgR32),
+ /*1976*/ uint16(x86_xArgXmmM64),
+ /*1977*/ uint16(x86_xMatch),
+ /*1978*/ uint16(x86_xCondDataSize), 1982, 1988, 0,
+ /*1982*/ uint16(x86_xSetOp), uint16(x86_CVTTSS2SI),
+ /*1984*/ uint16(x86_xReadSlashR),
+ /*1985*/ uint16(x86_xArgR32),
+ /*1986*/ uint16(x86_xArgXmmM32),
+ /*1987*/ uint16(x86_xMatch),
+ /*1988*/ uint16(x86_xSetOp), uint16(x86_CVTTSS2SI),
+ /*1990*/ uint16(x86_xReadSlashR),
+ /*1991*/ uint16(x86_xArgR32),
+ /*1992*/ uint16(x86_xArgXmmM32),
+ /*1993*/ uint16(x86_xMatch),
+ /*1994*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 2014,
+ 0xF2, 2004,
+ 0x66, 1956,
+ 0x0, 1950,
+ /*2004*/ uint16(x86_xCondDataSize), 1966, 1972, 2008,
+ /*2008*/ uint16(x86_xSetOp), uint16(x86_CVTTSD2SI),
+ /*2010*/ uint16(x86_xReadSlashR),
+ /*2011*/ uint16(x86_xArgR64),
+ /*2012*/ uint16(x86_xArgXmmM64),
+ /*2013*/ uint16(x86_xMatch),
+ /*2014*/ uint16(x86_xCondDataSize), 1982, 1988, 2018,
+ /*2018*/ uint16(x86_xSetOp), uint16(x86_CVTTSS2SI),
+ /*2020*/ uint16(x86_xReadSlashR),
+ /*2021*/ uint16(x86_xArgR64),
+ /*2022*/ uint16(x86_xArgXmmM32),
+ /*2023*/ uint16(x86_xMatch),
+ /*2024*/ uint16(x86_xCondIs64), 2027, 2081,
+ /*2027*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 2065,
+ 0xF2, 2049,
+ 0x66, 2043,
+ 0x0, 2037,
+ /*2037*/ uint16(x86_xSetOp), uint16(x86_CVTPS2PI),
+ /*2039*/ uint16(x86_xReadSlashR),
+ /*2040*/ uint16(x86_xArgMm),
+ /*2041*/ uint16(x86_xArgXmmM64),
+ /*2042*/ uint16(x86_xMatch),
+ /*2043*/ uint16(x86_xSetOp), uint16(x86_CVTPD2PI),
+ /*2045*/ uint16(x86_xReadSlashR),
+ /*2046*/ uint16(x86_xArgMm),
+ /*2047*/ uint16(x86_xArgXmmM128),
+ /*2048*/ uint16(x86_xMatch),
+ /*2049*/ uint16(x86_xCondDataSize), 2053, 2059, 0,
+ /*2053*/ uint16(x86_xSetOp), uint16(x86_CVTSD2SI),
+ /*2055*/ uint16(x86_xReadSlashR),
+ /*2056*/ uint16(x86_xArgR32),
+ /*2057*/ uint16(x86_xArgXmmM64),
+ /*2058*/ uint16(x86_xMatch),
+ /*2059*/ uint16(x86_xSetOp), uint16(x86_CVTSD2SI),
+ /*2061*/ uint16(x86_xReadSlashR),
+ /*2062*/ uint16(x86_xArgR32),
+ /*2063*/ uint16(x86_xArgXmmM64),
+ /*2064*/ uint16(x86_xMatch),
+ /*2065*/ uint16(x86_xCondDataSize), 2069, 2075, 0,
+ /*2069*/ uint16(x86_xSetOp), uint16(x86_CVTSS2SI),
+ /*2071*/ uint16(x86_xReadSlashR),
+ /*2072*/ uint16(x86_xArgR32),
+ /*2073*/ uint16(x86_xArgXmmM32),
+ /*2074*/ uint16(x86_xMatch),
+ /*2075*/ uint16(x86_xSetOp), uint16(x86_CVTSS2SI),
+ /*2077*/ uint16(x86_xReadSlashR),
+ /*2078*/ uint16(x86_xArgR32),
+ /*2079*/ uint16(x86_xArgXmmM32),
+ /*2080*/ uint16(x86_xMatch),
+ /*2081*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 2101,
+ 0xF2, 2091,
+ 0x66, 2043,
+ 0x0, 2037,
+ /*2091*/ uint16(x86_xCondDataSize), 2053, 2059, 2095,
+ /*2095*/ uint16(x86_xSetOp), uint16(x86_CVTSD2SI),
+ /*2097*/ uint16(x86_xReadSlashR),
+ /*2098*/ uint16(x86_xArgR64),
+ /*2099*/ uint16(x86_xArgXmmM64),
+ /*2100*/ uint16(x86_xMatch),
+ /*2101*/ uint16(x86_xCondDataSize), 2069, 2075, 2105,
+ /*2105*/ uint16(x86_xSetOp), uint16(x86_CVTSS2SI),
+ /*2107*/ uint16(x86_xReadSlashR),
+ /*2108*/ uint16(x86_xArgR64),
+ /*2109*/ uint16(x86_xArgXmmM32),
+ /*2110*/ uint16(x86_xMatch),
+ /*2111*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2123,
+ 0x0, 2117,
+ /*2117*/ uint16(x86_xSetOp), uint16(x86_UCOMISS),
+ /*2119*/ uint16(x86_xReadSlashR),
+ /*2120*/ uint16(x86_xArgXmm1),
+ /*2121*/ uint16(x86_xArgXmm2M32),
+ /*2122*/ uint16(x86_xMatch),
+ /*2123*/ uint16(x86_xSetOp), uint16(x86_UCOMISD),
+ /*2125*/ uint16(x86_xReadSlashR),
+ /*2126*/ uint16(x86_xArgXmm1),
+ /*2127*/ uint16(x86_xArgXmm2M64),
+ /*2128*/ uint16(x86_xMatch),
+ /*2129*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2141,
+ 0x0, 2135,
+ /*2135*/ uint16(x86_xSetOp), uint16(x86_COMISS),
+ /*2137*/ uint16(x86_xReadSlashR),
+ /*2138*/ uint16(x86_xArgXmm1),
+ /*2139*/ uint16(x86_xArgXmm2M32),
+ /*2140*/ uint16(x86_xMatch),
+ /*2141*/ uint16(x86_xSetOp), uint16(x86_COMISD),
+ /*2143*/ uint16(x86_xReadSlashR),
+ /*2144*/ uint16(x86_xArgXmm1),
+ /*2145*/ uint16(x86_xArgXmm2M64),
+ /*2146*/ uint16(x86_xMatch),
+ /*2147*/ uint16(x86_xSetOp), uint16(x86_WRMSR),
+ /*2149*/ uint16(x86_xMatch),
+ /*2150*/ uint16(x86_xSetOp), uint16(x86_RDTSC),
+ /*2152*/ uint16(x86_xMatch),
+ /*2153*/ uint16(x86_xSetOp), uint16(x86_RDMSR),
+ /*2155*/ uint16(x86_xMatch),
+ /*2156*/ uint16(x86_xSetOp), uint16(x86_RDPMC),
+ /*2158*/ uint16(x86_xMatch),
+ /*2159*/ uint16(x86_xSetOp), uint16(x86_SYSENTER),
+ /*2161*/ uint16(x86_xMatch),
+ /*2162*/ uint16(x86_xCondDataSize), 2166, 2166, 2169,
+ /*2166*/ uint16(x86_xSetOp), uint16(x86_SYSEXIT),
+ /*2168*/ uint16(x86_xMatch),
+ /*2169*/ uint16(x86_xSetOp), uint16(x86_SYSEXIT),
+ /*2171*/ uint16(x86_xMatch),
+ /*2172*/ uint16(x86_xCondByte), 54,
+ 0x00, 2283,
+ 0x01, 2301,
+ 0x02, 2319,
+ 0x03, 2337,
+ 0x04, 2355,
+ 0x05, 2373,
+ 0x06, 2391,
+ 0x07, 2409,
+ 0x08, 2427,
+ 0x09, 2445,
+ 0x0A, 2463,
+ 0x0B, 2481,
+ 0x10, 2499,
+ 0x14, 2510,
+ 0x15, 2521,
+ 0x17, 2532,
+ 0x1C, 2542,
+ 0x1D, 2560,
+ 0x1E, 2578,
+ 0x20, 2596,
+ 0x21, 2606,
+ 0x22, 2616,
+ 0x23, 2626,
+ 0x24, 2636,
+ 0x25, 2646,
+ 0x28, 2656,
+ 0x29, 2666,
+ 0x2A, 2676,
+ 0x2B, 2686,
+ 0x30, 2696,
+ 0x31, 2706,
+ 0x32, 2716,
+ 0x33, 2726,
+ 0x34, 2736,
+ 0x35, 2746,
+ 0x37, 2756,
+ 0x38, 2766,
+ 0x39, 2776,
+ 0x3A, 2786,
+ 0x3B, 2796,
+ 0x3C, 2806,
+ 0x3D, 2816,
+ 0x3E, 2826,
+ 0x3F, 2836,
+ 0x40, 2846,
+ 0x41, 2856,
+ 0x82, 2866,
+ 0xDB, 2889,
+ 0xDC, 2899,
+ 0xDD, 2909,
+ 0xDE, 2919,
+ 0xDF, 2929,
+ 0xF0, 2939,
+ 0xF1, 3006,
+ uint16(x86_xFail),
+ /*2283*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2295,
+ 0x0, 2289,
+ /*2289*/ uint16(x86_xSetOp), uint16(x86_PSHUFB),
+ /*2291*/ uint16(x86_xReadSlashR),
+ /*2292*/ uint16(x86_xArgMm1),
+ /*2293*/ uint16(x86_xArgMm2M64),
+ /*2294*/ uint16(x86_xMatch),
+ /*2295*/ uint16(x86_xSetOp), uint16(x86_PSHUFB),
+ /*2297*/ uint16(x86_xReadSlashR),
+ /*2298*/ uint16(x86_xArgXmm1),
+ /*2299*/ uint16(x86_xArgXmm2M128),
+ /*2300*/ uint16(x86_xMatch),
+ /*2301*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2313,
+ 0x0, 2307,
+ /*2307*/ uint16(x86_xSetOp), uint16(x86_PHADDW),
+ /*2309*/ uint16(x86_xReadSlashR),
+ /*2310*/ uint16(x86_xArgMm1),
+ /*2311*/ uint16(x86_xArgMm2M64),
+ /*2312*/ uint16(x86_xMatch),
+ /*2313*/ uint16(x86_xSetOp), uint16(x86_PHADDW),
+ /*2315*/ uint16(x86_xReadSlashR),
+ /*2316*/ uint16(x86_xArgXmm1),
+ /*2317*/ uint16(x86_xArgXmm2M128),
+ /*2318*/ uint16(x86_xMatch),
+ /*2319*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2331,
+ 0x0, 2325,
+ /*2325*/ uint16(x86_xSetOp), uint16(x86_PHADDD),
+ /*2327*/ uint16(x86_xReadSlashR),
+ /*2328*/ uint16(x86_xArgMm1),
+ /*2329*/ uint16(x86_xArgMm2M64),
+ /*2330*/ uint16(x86_xMatch),
+ /*2331*/ uint16(x86_xSetOp), uint16(x86_PHADDD),
+ /*2333*/ uint16(x86_xReadSlashR),
+ /*2334*/ uint16(x86_xArgXmm1),
+ /*2335*/ uint16(x86_xArgXmm2M128),
+ /*2336*/ uint16(x86_xMatch),
+ /*2337*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2349,
+ 0x0, 2343,
+ /*2343*/ uint16(x86_xSetOp), uint16(x86_PHADDSW),
+ /*2345*/ uint16(x86_xReadSlashR),
+ /*2346*/ uint16(x86_xArgMm1),
+ /*2347*/ uint16(x86_xArgMm2M64),
+ /*2348*/ uint16(x86_xMatch),
+ /*2349*/ uint16(x86_xSetOp), uint16(x86_PHADDSW),
+ /*2351*/ uint16(x86_xReadSlashR),
+ /*2352*/ uint16(x86_xArgXmm1),
+ /*2353*/ uint16(x86_xArgXmm2M128),
+ /*2354*/ uint16(x86_xMatch),
+ /*2355*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2367,
+ 0x0, 2361,
+ /*2361*/ uint16(x86_xSetOp), uint16(x86_PMADDUBSW),
+ /*2363*/ uint16(x86_xReadSlashR),
+ /*2364*/ uint16(x86_xArgMm1),
+ /*2365*/ uint16(x86_xArgMm2M64),
+ /*2366*/ uint16(x86_xMatch),
+ /*2367*/ uint16(x86_xSetOp), uint16(x86_PMADDUBSW),
+ /*2369*/ uint16(x86_xReadSlashR),
+ /*2370*/ uint16(x86_xArgXmm1),
+ /*2371*/ uint16(x86_xArgXmm2M128),
+ /*2372*/ uint16(x86_xMatch),
+ /*2373*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2385,
+ 0x0, 2379,
+ /*2379*/ uint16(x86_xSetOp), uint16(x86_PHSUBW),
+ /*2381*/ uint16(x86_xReadSlashR),
+ /*2382*/ uint16(x86_xArgMm1),
+ /*2383*/ uint16(x86_xArgMm2M64),
+ /*2384*/ uint16(x86_xMatch),
+ /*2385*/ uint16(x86_xSetOp), uint16(x86_PHSUBW),
+ /*2387*/ uint16(x86_xReadSlashR),
+ /*2388*/ uint16(x86_xArgXmm1),
+ /*2389*/ uint16(x86_xArgXmm2M128),
+ /*2390*/ uint16(x86_xMatch),
+ /*2391*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2403,
+ 0x0, 2397,
+ /*2397*/ uint16(x86_xSetOp), uint16(x86_PHSUBD),
+ /*2399*/ uint16(x86_xReadSlashR),
+ /*2400*/ uint16(x86_xArgMm1),
+ /*2401*/ uint16(x86_xArgMm2M64),
+ /*2402*/ uint16(x86_xMatch),
+ /*2403*/ uint16(x86_xSetOp), uint16(x86_PHSUBD),
+ /*2405*/ uint16(x86_xReadSlashR),
+ /*2406*/ uint16(x86_xArgXmm1),
+ /*2407*/ uint16(x86_xArgXmm2M128),
+ /*2408*/ uint16(x86_xMatch),
+ /*2409*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2421,
+ 0x0, 2415,
+ /*2415*/ uint16(x86_xSetOp), uint16(x86_PHSUBSW),
+ /*2417*/ uint16(x86_xReadSlashR),
+ /*2418*/ uint16(x86_xArgMm1),
+ /*2419*/ uint16(x86_xArgMm2M64),
+ /*2420*/ uint16(x86_xMatch),
+ /*2421*/ uint16(x86_xSetOp), uint16(x86_PHSUBSW),
+ /*2423*/ uint16(x86_xReadSlashR),
+ /*2424*/ uint16(x86_xArgXmm1),
+ /*2425*/ uint16(x86_xArgXmm2M128),
+ /*2426*/ uint16(x86_xMatch),
+ /*2427*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2439,
+ 0x0, 2433,
+ /*2433*/ uint16(x86_xSetOp), uint16(x86_PSIGNB),
+ /*2435*/ uint16(x86_xReadSlashR),
+ /*2436*/ uint16(x86_xArgMm1),
+ /*2437*/ uint16(x86_xArgMm2M64),
+ /*2438*/ uint16(x86_xMatch),
+ /*2439*/ uint16(x86_xSetOp), uint16(x86_PSIGNB),
+ /*2441*/ uint16(x86_xReadSlashR),
+ /*2442*/ uint16(x86_xArgXmm1),
+ /*2443*/ uint16(x86_xArgXmm2M128),
+ /*2444*/ uint16(x86_xMatch),
+ /*2445*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2457,
+ 0x0, 2451,
+ /*2451*/ uint16(x86_xSetOp), uint16(x86_PSIGNW),
+ /*2453*/ uint16(x86_xReadSlashR),
+ /*2454*/ uint16(x86_xArgMm1),
+ /*2455*/ uint16(x86_xArgMm2M64),
+ /*2456*/ uint16(x86_xMatch),
+ /*2457*/ uint16(x86_xSetOp), uint16(x86_PSIGNW),
+ /*2459*/ uint16(x86_xReadSlashR),
+ /*2460*/ uint16(x86_xArgXmm1),
+ /*2461*/ uint16(x86_xArgXmm2M128),
+ /*2462*/ uint16(x86_xMatch),
+ /*2463*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2475,
+ 0x0, 2469,
+ /*2469*/ uint16(x86_xSetOp), uint16(x86_PSIGND),
+ /*2471*/ uint16(x86_xReadSlashR),
+ /*2472*/ uint16(x86_xArgMm1),
+ /*2473*/ uint16(x86_xArgMm2M64),
+ /*2474*/ uint16(x86_xMatch),
+ /*2475*/ uint16(x86_xSetOp), uint16(x86_PSIGND),
+ /*2477*/ uint16(x86_xReadSlashR),
+ /*2478*/ uint16(x86_xArgXmm1),
+ /*2479*/ uint16(x86_xArgXmm2M128),
+ /*2480*/ uint16(x86_xMatch),
+ /*2481*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2493,
+ 0x0, 2487,
+ /*2487*/ uint16(x86_xSetOp), uint16(x86_PMULHRSW),
+ /*2489*/ uint16(x86_xReadSlashR),
+ /*2490*/ uint16(x86_xArgMm1),
+ /*2491*/ uint16(x86_xArgMm2M64),
+ /*2492*/ uint16(x86_xMatch),
+ /*2493*/ uint16(x86_xSetOp), uint16(x86_PMULHRSW),
+ /*2495*/ uint16(x86_xReadSlashR),
+ /*2496*/ uint16(x86_xArgXmm1),
+ /*2497*/ uint16(x86_xArgXmm2M128),
+ /*2498*/ uint16(x86_xMatch),
+ /*2499*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2503,
+ /*2503*/ uint16(x86_xSetOp), uint16(x86_PBLENDVB),
+ /*2505*/ uint16(x86_xReadSlashR),
+ /*2506*/ uint16(x86_xArgXmm1),
+ /*2507*/ uint16(x86_xArgXmm2M128),
+ /*2508*/ uint16(x86_xArgXMM0),
+ /*2509*/ uint16(x86_xMatch),
+ /*2510*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2514,
+ /*2514*/ uint16(x86_xSetOp), uint16(x86_BLENDVPS),
+ /*2516*/ uint16(x86_xReadSlashR),
+ /*2517*/ uint16(x86_xArgXmm1),
+ /*2518*/ uint16(x86_xArgXmm2M128),
+ /*2519*/ uint16(x86_xArgXMM0),
+ /*2520*/ uint16(x86_xMatch),
+ /*2521*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2525,
+ /*2525*/ uint16(x86_xSetOp), uint16(x86_BLENDVPD),
+ /*2527*/ uint16(x86_xReadSlashR),
+ /*2528*/ uint16(x86_xArgXmm1),
+ /*2529*/ uint16(x86_xArgXmm2M128),
+ /*2530*/ uint16(x86_xArgXMM0),
+ /*2531*/ uint16(x86_xMatch),
+ /*2532*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2536,
+ /*2536*/ uint16(x86_xSetOp), uint16(x86_PTEST),
+ /*2538*/ uint16(x86_xReadSlashR),
+ /*2539*/ uint16(x86_xArgXmm1),
+ /*2540*/ uint16(x86_xArgXmm2M128),
+ /*2541*/ uint16(x86_xMatch),
+ /*2542*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2554,
+ 0x0, 2548,
+ /*2548*/ uint16(x86_xSetOp), uint16(x86_PABSB),
+ /*2550*/ uint16(x86_xReadSlashR),
+ /*2551*/ uint16(x86_xArgMm1),
+ /*2552*/ uint16(x86_xArgMm2M64),
+ /*2553*/ uint16(x86_xMatch),
+ /*2554*/ uint16(x86_xSetOp), uint16(x86_PABSB),
+ /*2556*/ uint16(x86_xReadSlashR),
+ /*2557*/ uint16(x86_xArgXmm1),
+ /*2558*/ uint16(x86_xArgXmm2M128),
+ /*2559*/ uint16(x86_xMatch),
+ /*2560*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2572,
+ 0x0, 2566,
+ /*2566*/ uint16(x86_xSetOp), uint16(x86_PABSW),
+ /*2568*/ uint16(x86_xReadSlashR),
+ /*2569*/ uint16(x86_xArgMm1),
+ /*2570*/ uint16(x86_xArgMm2M64),
+ /*2571*/ uint16(x86_xMatch),
+ /*2572*/ uint16(x86_xSetOp), uint16(x86_PABSW),
+ /*2574*/ uint16(x86_xReadSlashR),
+ /*2575*/ uint16(x86_xArgXmm1),
+ /*2576*/ uint16(x86_xArgXmm2M128),
+ /*2577*/ uint16(x86_xMatch),
+ /*2578*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 2590,
+ 0x0, 2584,
+ /*2584*/ uint16(x86_xSetOp), uint16(x86_PABSD),
+ /*2586*/ uint16(x86_xReadSlashR),
+ /*2587*/ uint16(x86_xArgMm1),
+ /*2588*/ uint16(x86_xArgMm2M64),
+ /*2589*/ uint16(x86_xMatch),
+ /*2590*/ uint16(x86_xSetOp), uint16(x86_PABSD),
+ /*2592*/ uint16(x86_xReadSlashR),
+ /*2593*/ uint16(x86_xArgXmm1),
+ /*2594*/ uint16(x86_xArgXmm2M128),
+ /*2595*/ uint16(x86_xMatch),
+ /*2596*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2600,
+ /*2600*/ uint16(x86_xSetOp), uint16(x86_PMOVSXBW),
+ /*2602*/ uint16(x86_xReadSlashR),
+ /*2603*/ uint16(x86_xArgXmm1),
+ /*2604*/ uint16(x86_xArgXmm2M64),
+ /*2605*/ uint16(x86_xMatch),
+ /*2606*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2610,
+ /*2610*/ uint16(x86_xSetOp), uint16(x86_PMOVSXBD),
+ /*2612*/ uint16(x86_xReadSlashR),
+ /*2613*/ uint16(x86_xArgXmm1),
+ /*2614*/ uint16(x86_xArgXmm2M32),
+ /*2615*/ uint16(x86_xMatch),
+ /*2616*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2620,
+ /*2620*/ uint16(x86_xSetOp), uint16(x86_PMOVSXBQ),
+ /*2622*/ uint16(x86_xReadSlashR),
+ /*2623*/ uint16(x86_xArgXmm1),
+ /*2624*/ uint16(x86_xArgXmm2M16),
+ /*2625*/ uint16(x86_xMatch),
+ /*2626*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2630,
+ /*2630*/ uint16(x86_xSetOp), uint16(x86_PMOVSXWD),
+ /*2632*/ uint16(x86_xReadSlashR),
+ /*2633*/ uint16(x86_xArgXmm1),
+ /*2634*/ uint16(x86_xArgXmm2M64),
+ /*2635*/ uint16(x86_xMatch),
+ /*2636*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2640,
+ /*2640*/ uint16(x86_xSetOp), uint16(x86_PMOVSXWQ),
+ /*2642*/ uint16(x86_xReadSlashR),
+ /*2643*/ uint16(x86_xArgXmm1),
+ /*2644*/ uint16(x86_xArgXmm2M32),
+ /*2645*/ uint16(x86_xMatch),
+ /*2646*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2650,
+ /*2650*/ uint16(x86_xSetOp), uint16(x86_PMOVSXDQ),
+ /*2652*/ uint16(x86_xReadSlashR),
+ /*2653*/ uint16(x86_xArgXmm1),
+ /*2654*/ uint16(x86_xArgXmm2M64),
+ /*2655*/ uint16(x86_xMatch),
+ /*2656*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2660,
+ /*2660*/ uint16(x86_xSetOp), uint16(x86_PMULDQ),
+ /*2662*/ uint16(x86_xReadSlashR),
+ /*2663*/ uint16(x86_xArgXmm1),
+ /*2664*/ uint16(x86_xArgXmm2M128),
+ /*2665*/ uint16(x86_xMatch),
+ /*2666*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2670,
+ /*2670*/ uint16(x86_xSetOp), uint16(x86_PCMPEQQ),
+ /*2672*/ uint16(x86_xReadSlashR),
+ /*2673*/ uint16(x86_xArgXmm1),
+ /*2674*/ uint16(x86_xArgXmm2M128),
+ /*2675*/ uint16(x86_xMatch),
+ /*2676*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2680,
+ /*2680*/ uint16(x86_xSetOp), uint16(x86_MOVNTDQA),
+ /*2682*/ uint16(x86_xReadSlashR),
+ /*2683*/ uint16(x86_xArgXmm1),
+ /*2684*/ uint16(x86_xArgM128),
+ /*2685*/ uint16(x86_xMatch),
+ /*2686*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2690,
+ /*2690*/ uint16(x86_xSetOp), uint16(x86_PACKUSDW),
+ /*2692*/ uint16(x86_xReadSlashR),
+ /*2693*/ uint16(x86_xArgXmm1),
+ /*2694*/ uint16(x86_xArgXmm2M128),
+ /*2695*/ uint16(x86_xMatch),
+ /*2696*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2700,
+ /*2700*/ uint16(x86_xSetOp), uint16(x86_PMOVZXBW),
+ /*2702*/ uint16(x86_xReadSlashR),
+ /*2703*/ uint16(x86_xArgXmm1),
+ /*2704*/ uint16(x86_xArgXmm2M64),
+ /*2705*/ uint16(x86_xMatch),
+ /*2706*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2710,
+ /*2710*/ uint16(x86_xSetOp), uint16(x86_PMOVZXBD),
+ /*2712*/ uint16(x86_xReadSlashR),
+ /*2713*/ uint16(x86_xArgXmm1),
+ /*2714*/ uint16(x86_xArgXmm2M32),
+ /*2715*/ uint16(x86_xMatch),
+ /*2716*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2720,
+ /*2720*/ uint16(x86_xSetOp), uint16(x86_PMOVZXBQ),
+ /*2722*/ uint16(x86_xReadSlashR),
+ /*2723*/ uint16(x86_xArgXmm1),
+ /*2724*/ uint16(x86_xArgXmm2M16),
+ /*2725*/ uint16(x86_xMatch),
+ /*2726*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2730,
+ /*2730*/ uint16(x86_xSetOp), uint16(x86_PMOVZXWD),
+ /*2732*/ uint16(x86_xReadSlashR),
+ /*2733*/ uint16(x86_xArgXmm1),
+ /*2734*/ uint16(x86_xArgXmm2M64),
+ /*2735*/ uint16(x86_xMatch),
+ /*2736*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2740,
+ /*2740*/ uint16(x86_xSetOp), uint16(x86_PMOVZXWQ),
+ /*2742*/ uint16(x86_xReadSlashR),
+ /*2743*/ uint16(x86_xArgXmm1),
+ /*2744*/ uint16(x86_xArgXmm2M32),
+ /*2745*/ uint16(x86_xMatch),
+ /*2746*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2750,
+ /*2750*/ uint16(x86_xSetOp), uint16(x86_PMOVZXDQ),
+ /*2752*/ uint16(x86_xReadSlashR),
+ /*2753*/ uint16(x86_xArgXmm1),
+ /*2754*/ uint16(x86_xArgXmm2M64),
+ /*2755*/ uint16(x86_xMatch),
+ /*2756*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2760,
+ /*2760*/ uint16(x86_xSetOp), uint16(x86_PCMPGTQ),
+ /*2762*/ uint16(x86_xReadSlashR),
+ /*2763*/ uint16(x86_xArgXmm1),
+ /*2764*/ uint16(x86_xArgXmm2M128),
+ /*2765*/ uint16(x86_xMatch),
+ /*2766*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2770,
+ /*2770*/ uint16(x86_xSetOp), uint16(x86_PMINSB),
+ /*2772*/ uint16(x86_xReadSlashR),
+ /*2773*/ uint16(x86_xArgXmm1),
+ /*2774*/ uint16(x86_xArgXmm2M128),
+ /*2775*/ uint16(x86_xMatch),
+ /*2776*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2780,
+ /*2780*/ uint16(x86_xSetOp), uint16(x86_PMINSD),
+ /*2782*/ uint16(x86_xReadSlashR),
+ /*2783*/ uint16(x86_xArgXmm1),
+ /*2784*/ uint16(x86_xArgXmm2M128),
+ /*2785*/ uint16(x86_xMatch),
+ /*2786*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2790,
+ /*2790*/ uint16(x86_xSetOp), uint16(x86_PMINUW),
+ /*2792*/ uint16(x86_xReadSlashR),
+ /*2793*/ uint16(x86_xArgXmm1),
+ /*2794*/ uint16(x86_xArgXmm2M128),
+ /*2795*/ uint16(x86_xMatch),
+ /*2796*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2800,
+ /*2800*/ uint16(x86_xSetOp), uint16(x86_PMINUD),
+ /*2802*/ uint16(x86_xReadSlashR),
+ /*2803*/ uint16(x86_xArgXmm1),
+ /*2804*/ uint16(x86_xArgXmm2M128),
+ /*2805*/ uint16(x86_xMatch),
+ /*2806*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2810,
+ /*2810*/ uint16(x86_xSetOp), uint16(x86_PMAXSB),
+ /*2812*/ uint16(x86_xReadSlashR),
+ /*2813*/ uint16(x86_xArgXmm1),
+ /*2814*/ uint16(x86_xArgXmm2M128),
+ /*2815*/ uint16(x86_xMatch),
+ /*2816*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2820,
+ /*2820*/ uint16(x86_xSetOp), uint16(x86_PMAXSD),
+ /*2822*/ uint16(x86_xReadSlashR),
+ /*2823*/ uint16(x86_xArgXmm1),
+ /*2824*/ uint16(x86_xArgXmm2M128),
+ /*2825*/ uint16(x86_xMatch),
+ /*2826*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2830,
+ /*2830*/ uint16(x86_xSetOp), uint16(x86_PMAXUW),
+ /*2832*/ uint16(x86_xReadSlashR),
+ /*2833*/ uint16(x86_xArgXmm1),
+ /*2834*/ uint16(x86_xArgXmm2M128),
+ /*2835*/ uint16(x86_xMatch),
+ /*2836*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2840,
+ /*2840*/ uint16(x86_xSetOp), uint16(x86_PMAXUD),
+ /*2842*/ uint16(x86_xReadSlashR),
+ /*2843*/ uint16(x86_xArgXmm1),
+ /*2844*/ uint16(x86_xArgXmm2M128),
+ /*2845*/ uint16(x86_xMatch),
+ /*2846*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2850,
+ /*2850*/ uint16(x86_xSetOp), uint16(x86_PMULLD),
+ /*2852*/ uint16(x86_xReadSlashR),
+ /*2853*/ uint16(x86_xArgXmm1),
+ /*2854*/ uint16(x86_xArgXmm2M128),
+ /*2855*/ uint16(x86_xMatch),
+ /*2856*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2860,
+ /*2860*/ uint16(x86_xSetOp), uint16(x86_PHMINPOSUW),
+ /*2862*/ uint16(x86_xReadSlashR),
+ /*2863*/ uint16(x86_xArgXmm1),
+ /*2864*/ uint16(x86_xArgXmm2M128),
+ /*2865*/ uint16(x86_xMatch),
+ /*2866*/ uint16(x86_xCondIs64), 2869, 2879,
+ /*2869*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2873,
+ /*2873*/ uint16(x86_xSetOp), uint16(x86_INVPCID),
+ /*2875*/ uint16(x86_xReadSlashR),
+ /*2876*/ uint16(x86_xArgR32),
+ /*2877*/ uint16(x86_xArgM128),
+ /*2878*/ uint16(x86_xMatch),
+ /*2879*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2883,
+ /*2883*/ uint16(x86_xSetOp), uint16(x86_INVPCID),
+ /*2885*/ uint16(x86_xReadSlashR),
+ /*2886*/ uint16(x86_xArgR64),
+ /*2887*/ uint16(x86_xArgM128),
+ /*2888*/ uint16(x86_xMatch),
+ /*2889*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2893,
+ /*2893*/ uint16(x86_xSetOp), uint16(x86_AESIMC),
+ /*2895*/ uint16(x86_xReadSlashR),
+ /*2896*/ uint16(x86_xArgXmm1),
+ /*2897*/ uint16(x86_xArgXmm2M128),
+ /*2898*/ uint16(x86_xMatch),
+ /*2899*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2903,
+ /*2903*/ uint16(x86_xSetOp), uint16(x86_AESENC),
+ /*2905*/ uint16(x86_xReadSlashR),
+ /*2906*/ uint16(x86_xArgXmm1),
+ /*2907*/ uint16(x86_xArgXmm2M128),
+ /*2908*/ uint16(x86_xMatch),
+ /*2909*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2913,
+ /*2913*/ uint16(x86_xSetOp), uint16(x86_AESENCLAST),
+ /*2915*/ uint16(x86_xReadSlashR),
+ /*2916*/ uint16(x86_xArgXmm1),
+ /*2917*/ uint16(x86_xArgXmm2M128),
+ /*2918*/ uint16(x86_xMatch),
+ /*2919*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2923,
+ /*2923*/ uint16(x86_xSetOp), uint16(x86_AESDEC),
+ /*2925*/ uint16(x86_xReadSlashR),
+ /*2926*/ uint16(x86_xArgXmm1),
+ /*2927*/ uint16(x86_xArgXmm2M128),
+ /*2928*/ uint16(x86_xMatch),
+ /*2929*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 2933,
+ /*2933*/ uint16(x86_xSetOp), uint16(x86_AESDECLAST),
+ /*2935*/ uint16(x86_xReadSlashR),
+ /*2936*/ uint16(x86_xArgXmm1),
+ /*2937*/ uint16(x86_xArgXmm2M128),
+ /*2938*/ uint16(x86_xMatch),
+ /*2939*/ uint16(x86_xCondIs64), 2942, 2980,
+ /*2942*/ uint16(x86_xCondPrefix), 2,
+ 0xF2, 2964,
+ 0x0, 2948,
+ /*2948*/ uint16(x86_xCondDataSize), 2952, 2958, 0,
+ /*2952*/ uint16(x86_xSetOp), uint16(x86_MOVBE),
+ /*2954*/ uint16(x86_xReadSlashR),
+ /*2955*/ uint16(x86_xArgR16),
+ /*2956*/ uint16(x86_xArgM16),
+ /*2957*/ uint16(x86_xMatch),
+ /*2958*/ uint16(x86_xSetOp), uint16(x86_MOVBE),
+ /*2960*/ uint16(x86_xReadSlashR),
+ /*2961*/ uint16(x86_xArgR32),
+ /*2962*/ uint16(x86_xArgM32),
+ /*2963*/ uint16(x86_xMatch),
+ /*2964*/ uint16(x86_xCondDataSize), 2968, 2974, 0,
+ /*2968*/ uint16(x86_xSetOp), uint16(x86_CRC32),
+ /*2970*/ uint16(x86_xReadSlashR),
+ /*2971*/ uint16(x86_xArgR32),
+ /*2972*/ uint16(x86_xArgRM8),
+ /*2973*/ uint16(x86_xMatch),
+ /*2974*/ uint16(x86_xSetOp), uint16(x86_CRC32),
+ /*2976*/ uint16(x86_xReadSlashR),
+ /*2977*/ uint16(x86_xArgR32),
+ /*2978*/ uint16(x86_xArgRM8),
+ /*2979*/ uint16(x86_xMatch),
+ /*2980*/ uint16(x86_xCondPrefix), 2,
+ 0xF2, 2996,
+ 0x0, 2986,
+ /*2986*/ uint16(x86_xCondDataSize), 2952, 2958, 2990,
+ /*2990*/ uint16(x86_xSetOp), uint16(x86_MOVBE),
+ /*2992*/ uint16(x86_xReadSlashR),
+ /*2993*/ uint16(x86_xArgR64),
+ /*2994*/ uint16(x86_xArgM64),
+ /*2995*/ uint16(x86_xMatch),
+ /*2996*/ uint16(x86_xCondDataSize), 2968, 2974, 3000,
+ /*3000*/ uint16(x86_xSetOp), uint16(x86_CRC32),
+ /*3002*/ uint16(x86_xReadSlashR),
+ /*3003*/ uint16(x86_xArgR64),
+ /*3004*/ uint16(x86_xArgRM8),
+ /*3005*/ uint16(x86_xMatch),
+ /*3006*/ uint16(x86_xCondIs64), 3009, 3047,
+ /*3009*/ uint16(x86_xCondPrefix), 2,
+ 0xF2, 3031,
+ 0x0, 3015,
+ /*3015*/ uint16(x86_xCondDataSize), 3019, 3025, 0,
+ /*3019*/ uint16(x86_xSetOp), uint16(x86_MOVBE),
+ /*3021*/ uint16(x86_xReadSlashR),
+ /*3022*/ uint16(x86_xArgM16),
+ /*3023*/ uint16(x86_xArgR16),
+ /*3024*/ uint16(x86_xMatch),
+ /*3025*/ uint16(x86_xSetOp), uint16(x86_MOVBE),
+ /*3027*/ uint16(x86_xReadSlashR),
+ /*3028*/ uint16(x86_xArgM32),
+ /*3029*/ uint16(x86_xArgR32),
+ /*3030*/ uint16(x86_xMatch),
+ /*3031*/ uint16(x86_xCondDataSize), 3035, 3041, 0,
+ /*3035*/ uint16(x86_xSetOp), uint16(x86_CRC32),
+ /*3037*/ uint16(x86_xReadSlashR),
+ /*3038*/ uint16(x86_xArgR32),
+ /*3039*/ uint16(x86_xArgRM16),
+ /*3040*/ uint16(x86_xMatch),
+ /*3041*/ uint16(x86_xSetOp), uint16(x86_CRC32),
+ /*3043*/ uint16(x86_xReadSlashR),
+ /*3044*/ uint16(x86_xArgR32),
+ /*3045*/ uint16(x86_xArgRM32),
+ /*3046*/ uint16(x86_xMatch),
+ /*3047*/ uint16(x86_xCondPrefix), 2,
+ 0xF2, 3063,
+ 0x0, 3053,
+ /*3053*/ uint16(x86_xCondDataSize), 3019, 3025, 3057,
+ /*3057*/ uint16(x86_xSetOp), uint16(x86_MOVBE),
+ /*3059*/ uint16(x86_xReadSlashR),
+ /*3060*/ uint16(x86_xArgM64),
+ /*3061*/ uint16(x86_xArgR64),
+ /*3062*/ uint16(x86_xMatch),
+ /*3063*/ uint16(x86_xCondDataSize), 3035, 3041, 3067,
+ /*3067*/ uint16(x86_xSetOp), uint16(x86_CRC32),
+ /*3069*/ uint16(x86_xReadSlashR),
+ /*3070*/ uint16(x86_xArgR64),
+ /*3071*/ uint16(x86_xArgRM64),
+ /*3072*/ uint16(x86_xMatch),
+ /*3073*/ uint16(x86_xCondByte), 24,
+ 0x08, 3124,
+ 0x09, 3136,
+ 0x0A, 3148,
+ 0x0B, 3160,
+ 0x0C, 3172,
+ 0x0D, 3184,
+ 0x0E, 3196,
+ 0x0F, 3208,
+ 0x14, 3230,
+ 0x15, 3242,
+ 0x16, 3254,
+ 0x17, 3297,
+ 0x20, 3309,
+ 0x21, 3321,
+ 0x22, 3333,
+ 0x40, 3376,
+ 0x41, 3388,
+ 0x42, 3400,
+ 0x44, 3412,
+ 0x60, 3424,
+ 0x61, 3436,
+ 0x62, 3448,
+ 0x63, 3460,
+ 0xDF, 3472,
+ uint16(x86_xFail),
+ /*3124*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3128,
+ /*3128*/ uint16(x86_xSetOp), uint16(x86_ROUNDPS),
+ /*3130*/ uint16(x86_xReadSlashR),
+ /*3131*/ uint16(x86_xReadIb),
+ /*3132*/ uint16(x86_xArgXmm1),
+ /*3133*/ uint16(x86_xArgXmm2M128),
+ /*3134*/ uint16(x86_xArgImm8u),
+ /*3135*/ uint16(x86_xMatch),
+ /*3136*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3140,
+ /*3140*/ uint16(x86_xSetOp), uint16(x86_ROUNDPD),
+ /*3142*/ uint16(x86_xReadSlashR),
+ /*3143*/ uint16(x86_xReadIb),
+ /*3144*/ uint16(x86_xArgXmm1),
+ /*3145*/ uint16(x86_xArgXmm2M128),
+ /*3146*/ uint16(x86_xArgImm8u),
+ /*3147*/ uint16(x86_xMatch),
+ /*3148*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3152,
+ /*3152*/ uint16(x86_xSetOp), uint16(x86_ROUNDSS),
+ /*3154*/ uint16(x86_xReadSlashR),
+ /*3155*/ uint16(x86_xReadIb),
+ /*3156*/ uint16(x86_xArgXmm1),
+ /*3157*/ uint16(x86_xArgXmm2M32),
+ /*3158*/ uint16(x86_xArgImm8u),
+ /*3159*/ uint16(x86_xMatch),
+ /*3160*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3164,
+ /*3164*/ uint16(x86_xSetOp), uint16(x86_ROUNDSD),
+ /*3166*/ uint16(x86_xReadSlashR),
+ /*3167*/ uint16(x86_xReadIb),
+ /*3168*/ uint16(x86_xArgXmm1),
+ /*3169*/ uint16(x86_xArgXmm2M64),
+ /*3170*/ uint16(x86_xArgImm8u),
+ /*3171*/ uint16(x86_xMatch),
+ /*3172*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3176,
+ /*3176*/ uint16(x86_xSetOp), uint16(x86_BLENDPS),
+ /*3178*/ uint16(x86_xReadSlashR),
+ /*3179*/ uint16(x86_xReadIb),
+ /*3180*/ uint16(x86_xArgXmm1),
+ /*3181*/ uint16(x86_xArgXmm2M128),
+ /*3182*/ uint16(x86_xArgImm8u),
+ /*3183*/ uint16(x86_xMatch),
+ /*3184*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3188,
+ /*3188*/ uint16(x86_xSetOp), uint16(x86_BLENDPD),
+ /*3190*/ uint16(x86_xReadSlashR),
+ /*3191*/ uint16(x86_xReadIb),
+ /*3192*/ uint16(x86_xArgXmm1),
+ /*3193*/ uint16(x86_xArgXmm2M128),
+ /*3194*/ uint16(x86_xArgImm8u),
+ /*3195*/ uint16(x86_xMatch),
+ /*3196*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3200,
+ /*3200*/ uint16(x86_xSetOp), uint16(x86_PBLENDW),
+ /*3202*/ uint16(x86_xReadSlashR),
+ /*3203*/ uint16(x86_xReadIb),
+ /*3204*/ uint16(x86_xArgXmm1),
+ /*3205*/ uint16(x86_xArgXmm2M128),
+ /*3206*/ uint16(x86_xArgImm8u),
+ /*3207*/ uint16(x86_xMatch),
+ /*3208*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 3222,
+ 0x0, 3214,
+ /*3214*/ uint16(x86_xSetOp), uint16(x86_PALIGNR),
+ /*3216*/ uint16(x86_xReadSlashR),
+ /*3217*/ uint16(x86_xReadIb),
+ /*3218*/ uint16(x86_xArgMm1),
+ /*3219*/ uint16(x86_xArgMm2M64),
+ /*3220*/ uint16(x86_xArgImm8u),
+ /*3221*/ uint16(x86_xMatch),
+ /*3222*/ uint16(x86_xSetOp), uint16(x86_PALIGNR),
+ /*3224*/ uint16(x86_xReadSlashR),
+ /*3225*/ uint16(x86_xReadIb),
+ /*3226*/ uint16(x86_xArgXmm1),
+ /*3227*/ uint16(x86_xArgXmm2M128),
+ /*3228*/ uint16(x86_xArgImm8u),
+ /*3229*/ uint16(x86_xMatch),
+ /*3230*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3234,
+ /*3234*/ uint16(x86_xSetOp), uint16(x86_PEXTRB),
+ /*3236*/ uint16(x86_xReadSlashR),
+ /*3237*/ uint16(x86_xReadIb),
+ /*3238*/ uint16(x86_xArgR32M8),
+ /*3239*/ uint16(x86_xArgXmm1),
+ /*3240*/ uint16(x86_xArgImm8u),
+ /*3241*/ uint16(x86_xMatch),
+ /*3242*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3246,
+ /*3246*/ uint16(x86_xSetOp), uint16(x86_PEXTRW),
+ /*3248*/ uint16(x86_xReadSlashR),
+ /*3249*/ uint16(x86_xReadIb),
+ /*3250*/ uint16(x86_xArgR32M16),
+ /*3251*/ uint16(x86_xArgXmm1),
+ /*3252*/ uint16(x86_xArgImm8u),
+ /*3253*/ uint16(x86_xMatch),
+ /*3254*/ uint16(x86_xCondIs64), 3257, 3281,
+ /*3257*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3261,
+ /*3261*/ uint16(x86_xCondDataSize), 3265, 3273, 0,
+ /*3265*/ uint16(x86_xSetOp), uint16(x86_PEXTRD),
+ /*3267*/ uint16(x86_xReadSlashR),
+ /*3268*/ uint16(x86_xReadIb),
+ /*3269*/ uint16(x86_xArgRM32),
+ /*3270*/ uint16(x86_xArgXmm1),
+ /*3271*/ uint16(x86_xArgImm8u),
+ /*3272*/ uint16(x86_xMatch),
+ /*3273*/ uint16(x86_xSetOp), uint16(x86_PEXTRD),
+ /*3275*/ uint16(x86_xReadSlashR),
+ /*3276*/ uint16(x86_xReadIb),
+ /*3277*/ uint16(x86_xArgRM32),
+ /*3278*/ uint16(x86_xArgXmm1),
+ /*3279*/ uint16(x86_xArgImm8u),
+ /*3280*/ uint16(x86_xMatch),
+ /*3281*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3285,
+ /*3285*/ uint16(x86_xCondDataSize), 3265, 3273, 3289,
+ /*3289*/ uint16(x86_xSetOp), uint16(x86_PEXTRQ),
+ /*3291*/ uint16(x86_xReadSlashR),
+ /*3292*/ uint16(x86_xReadIb),
+ /*3293*/ uint16(x86_xArgRM64),
+ /*3294*/ uint16(x86_xArgXmm1),
+ /*3295*/ uint16(x86_xArgImm8u),
+ /*3296*/ uint16(x86_xMatch),
+ /*3297*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3301,
+ /*3301*/ uint16(x86_xSetOp), uint16(x86_EXTRACTPS),
+ /*3303*/ uint16(x86_xReadSlashR),
+ /*3304*/ uint16(x86_xReadIb),
+ /*3305*/ uint16(x86_xArgRM32),
+ /*3306*/ uint16(x86_xArgXmm1),
+ /*3307*/ uint16(x86_xArgImm8u),
+ /*3308*/ uint16(x86_xMatch),
+ /*3309*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3313,
+ /*3313*/ uint16(x86_xSetOp), uint16(x86_PINSRB),
+ /*3315*/ uint16(x86_xReadSlashR),
+ /*3316*/ uint16(x86_xReadIb),
+ /*3317*/ uint16(x86_xArgXmm1),
+ /*3318*/ uint16(x86_xArgR32M8),
+ /*3319*/ uint16(x86_xArgImm8u),
+ /*3320*/ uint16(x86_xMatch),
+ /*3321*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3325,
+ /*3325*/ uint16(x86_xSetOp), uint16(x86_INSERTPS),
+ /*3327*/ uint16(x86_xReadSlashR),
+ /*3328*/ uint16(x86_xReadIb),
+ /*3329*/ uint16(x86_xArgXmm1),
+ /*3330*/ uint16(x86_xArgXmm2M32),
+ /*3331*/ uint16(x86_xArgImm8u),
+ /*3332*/ uint16(x86_xMatch),
+ /*3333*/ uint16(x86_xCondIs64), 3336, 3360,
+ /*3336*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3340,
+ /*3340*/ uint16(x86_xCondDataSize), 3344, 3352, 0,
+ /*3344*/ uint16(x86_xSetOp), uint16(x86_PINSRD),
+ /*3346*/ uint16(x86_xReadSlashR),
+ /*3347*/ uint16(x86_xReadIb),
+ /*3348*/ uint16(x86_xArgXmm1),
+ /*3349*/ uint16(x86_xArgRM32),
+ /*3350*/ uint16(x86_xArgImm8u),
+ /*3351*/ uint16(x86_xMatch),
+ /*3352*/ uint16(x86_xSetOp), uint16(x86_PINSRD),
+ /*3354*/ uint16(x86_xReadSlashR),
+ /*3355*/ uint16(x86_xReadIb),
+ /*3356*/ uint16(x86_xArgXmm1),
+ /*3357*/ uint16(x86_xArgRM32),
+ /*3358*/ uint16(x86_xArgImm8u),
+ /*3359*/ uint16(x86_xMatch),
+ /*3360*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3364,
+ /*3364*/ uint16(x86_xCondDataSize), 3344, 3352, 3368,
+ /*3368*/ uint16(x86_xSetOp), uint16(x86_PINSRQ),
+ /*3370*/ uint16(x86_xReadSlashR),
+ /*3371*/ uint16(x86_xReadIb),
+ /*3372*/ uint16(x86_xArgXmm1),
+ /*3373*/ uint16(x86_xArgRM64),
+ /*3374*/ uint16(x86_xArgImm8u),
+ /*3375*/ uint16(x86_xMatch),
+ /*3376*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3380,
+ /*3380*/ uint16(x86_xSetOp), uint16(x86_DPPS),
+ /*3382*/ uint16(x86_xReadSlashR),
+ /*3383*/ uint16(x86_xReadIb),
+ /*3384*/ uint16(x86_xArgXmm1),
+ /*3385*/ uint16(x86_xArgXmm2M128),
+ /*3386*/ uint16(x86_xArgImm8u),
+ /*3387*/ uint16(x86_xMatch),
+ /*3388*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3392,
+ /*3392*/ uint16(x86_xSetOp), uint16(x86_DPPD),
+ /*3394*/ uint16(x86_xReadSlashR),
+ /*3395*/ uint16(x86_xReadIb),
+ /*3396*/ uint16(x86_xArgXmm1),
+ /*3397*/ uint16(x86_xArgXmm2M128),
+ /*3398*/ uint16(x86_xArgImm8u),
+ /*3399*/ uint16(x86_xMatch),
+ /*3400*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3404,
+ /*3404*/ uint16(x86_xSetOp), uint16(x86_MPSADBW),
+ /*3406*/ uint16(x86_xReadSlashR),
+ /*3407*/ uint16(x86_xReadIb),
+ /*3408*/ uint16(x86_xArgXmm1),
+ /*3409*/ uint16(x86_xArgXmm2M128),
+ /*3410*/ uint16(x86_xArgImm8u),
+ /*3411*/ uint16(x86_xMatch),
+ /*3412*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3416,
+ /*3416*/ uint16(x86_xSetOp), uint16(x86_PCLMULQDQ),
+ /*3418*/ uint16(x86_xReadSlashR),
+ /*3419*/ uint16(x86_xReadIb),
+ /*3420*/ uint16(x86_xArgXmm1),
+ /*3421*/ uint16(x86_xArgXmm2M128),
+ /*3422*/ uint16(x86_xArgImm8u),
+ /*3423*/ uint16(x86_xMatch),
+ /*3424*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3428,
+ /*3428*/ uint16(x86_xSetOp), uint16(x86_PCMPESTRM),
+ /*3430*/ uint16(x86_xReadSlashR),
+ /*3431*/ uint16(x86_xReadIb),
+ /*3432*/ uint16(x86_xArgXmm1),
+ /*3433*/ uint16(x86_xArgXmm2M128),
+ /*3434*/ uint16(x86_xArgImm8u),
+ /*3435*/ uint16(x86_xMatch),
+ /*3436*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3440,
+ /*3440*/ uint16(x86_xSetOp), uint16(x86_PCMPESTRI),
+ /*3442*/ uint16(x86_xReadSlashR),
+ /*3443*/ uint16(x86_xReadIb),
+ /*3444*/ uint16(x86_xArgXmm1),
+ /*3445*/ uint16(x86_xArgXmm2M128),
+ /*3446*/ uint16(x86_xArgImm8u),
+ /*3447*/ uint16(x86_xMatch),
+ /*3448*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3452,
+ /*3452*/ uint16(x86_xSetOp), uint16(x86_PCMPISTRM),
+ /*3454*/ uint16(x86_xReadSlashR),
+ /*3455*/ uint16(x86_xReadIb),
+ /*3456*/ uint16(x86_xArgXmm1),
+ /*3457*/ uint16(x86_xArgXmm2M128),
+ /*3458*/ uint16(x86_xArgImm8u),
+ /*3459*/ uint16(x86_xMatch),
+ /*3460*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3464,
+ /*3464*/ uint16(x86_xSetOp), uint16(x86_PCMPISTRI),
+ /*3466*/ uint16(x86_xReadSlashR),
+ /*3467*/ uint16(x86_xReadIb),
+ /*3468*/ uint16(x86_xArgXmm1),
+ /*3469*/ uint16(x86_xArgXmm2M128),
+ /*3470*/ uint16(x86_xArgImm8u),
+ /*3471*/ uint16(x86_xMatch),
+ /*3472*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 3476,
+ /*3476*/ uint16(x86_xSetOp), uint16(x86_AESKEYGENASSIST),
+ /*3478*/ uint16(x86_xReadSlashR),
+ /*3479*/ uint16(x86_xReadIb),
+ /*3480*/ uint16(x86_xArgXmm1),
+ /*3481*/ uint16(x86_xArgXmm2M128),
+ /*3482*/ uint16(x86_xArgImm8u),
+ /*3483*/ uint16(x86_xMatch),
+ /*3484*/ uint16(x86_xCondIs64), 3487, 3503,
+ /*3487*/ uint16(x86_xCondDataSize), 3491, 3497, 0,
+ /*3491*/ uint16(x86_xSetOp), uint16(x86_CMOVO),
+ /*3493*/ uint16(x86_xReadSlashR),
+ /*3494*/ uint16(x86_xArgR16),
+ /*3495*/ uint16(x86_xArgRM16),
+ /*3496*/ uint16(x86_xMatch),
+ /*3497*/ uint16(x86_xSetOp), uint16(x86_CMOVO),
+ /*3499*/ uint16(x86_xReadSlashR),
+ /*3500*/ uint16(x86_xArgR32),
+ /*3501*/ uint16(x86_xArgRM32),
+ /*3502*/ uint16(x86_xMatch),
+ /*3503*/ uint16(x86_xCondDataSize), 3491, 3497, 3507,
+ /*3507*/ uint16(x86_xSetOp), uint16(x86_CMOVO),
+ /*3509*/ uint16(x86_xReadSlashR),
+ /*3510*/ uint16(x86_xArgR64),
+ /*3511*/ uint16(x86_xArgRM64),
+ /*3512*/ uint16(x86_xMatch),
+ /*3513*/ uint16(x86_xCondIs64), 3516, 3532,
+ /*3516*/ uint16(x86_xCondDataSize), 3520, 3526, 0,
+ /*3520*/ uint16(x86_xSetOp), uint16(x86_CMOVNO),
+ /*3522*/ uint16(x86_xReadSlashR),
+ /*3523*/ uint16(x86_xArgR16),
+ /*3524*/ uint16(x86_xArgRM16),
+ /*3525*/ uint16(x86_xMatch),
+ /*3526*/ uint16(x86_xSetOp), uint16(x86_CMOVNO),
+ /*3528*/ uint16(x86_xReadSlashR),
+ /*3529*/ uint16(x86_xArgR32),
+ /*3530*/ uint16(x86_xArgRM32),
+ /*3531*/ uint16(x86_xMatch),
+ /*3532*/ uint16(x86_xCondDataSize), 3520, 3526, 3536,
+ /*3536*/ uint16(x86_xSetOp), uint16(x86_CMOVNO),
+ /*3538*/ uint16(x86_xReadSlashR),
+ /*3539*/ uint16(x86_xArgR64),
+ /*3540*/ uint16(x86_xArgRM64),
+ /*3541*/ uint16(x86_xMatch),
+ /*3542*/ uint16(x86_xCondIs64), 3545, 3561,
+ /*3545*/ uint16(x86_xCondDataSize), 3549, 3555, 0,
+ /*3549*/ uint16(x86_xSetOp), uint16(x86_CMOVB),
+ /*3551*/ uint16(x86_xReadSlashR),
+ /*3552*/ uint16(x86_xArgR16),
+ /*3553*/ uint16(x86_xArgRM16),
+ /*3554*/ uint16(x86_xMatch),
+ /*3555*/ uint16(x86_xSetOp), uint16(x86_CMOVB),
+ /*3557*/ uint16(x86_xReadSlashR),
+ /*3558*/ uint16(x86_xArgR32),
+ /*3559*/ uint16(x86_xArgRM32),
+ /*3560*/ uint16(x86_xMatch),
+ /*3561*/ uint16(x86_xCondDataSize), 3549, 3555, 3565,
+ /*3565*/ uint16(x86_xSetOp), uint16(x86_CMOVB),
+ /*3567*/ uint16(x86_xReadSlashR),
+ /*3568*/ uint16(x86_xArgR64),
+ /*3569*/ uint16(x86_xArgRM64),
+ /*3570*/ uint16(x86_xMatch),
+ /*3571*/ uint16(x86_xCondIs64), 3574, 3590,
+ /*3574*/ uint16(x86_xCondDataSize), 3578, 3584, 0,
+ /*3578*/ uint16(x86_xSetOp), uint16(x86_CMOVAE),
+ /*3580*/ uint16(x86_xReadSlashR),
+ /*3581*/ uint16(x86_xArgR16),
+ /*3582*/ uint16(x86_xArgRM16),
+ /*3583*/ uint16(x86_xMatch),
+ /*3584*/ uint16(x86_xSetOp), uint16(x86_CMOVAE),
+ /*3586*/ uint16(x86_xReadSlashR),
+ /*3587*/ uint16(x86_xArgR32),
+ /*3588*/ uint16(x86_xArgRM32),
+ /*3589*/ uint16(x86_xMatch),
+ /*3590*/ uint16(x86_xCondDataSize), 3578, 3584, 3594,
+ /*3594*/ uint16(x86_xSetOp), uint16(x86_CMOVAE),
+ /*3596*/ uint16(x86_xReadSlashR),
+ /*3597*/ uint16(x86_xArgR64),
+ /*3598*/ uint16(x86_xArgRM64),
+ /*3599*/ uint16(x86_xMatch),
+ /*3600*/ uint16(x86_xCondIs64), 3603, 3619,
+ /*3603*/ uint16(x86_xCondDataSize), 3607, 3613, 0,
+ /*3607*/ uint16(x86_xSetOp), uint16(x86_CMOVE),
+ /*3609*/ uint16(x86_xReadSlashR),
+ /*3610*/ uint16(x86_xArgR16),
+ /*3611*/ uint16(x86_xArgRM16),
+ /*3612*/ uint16(x86_xMatch),
+ /*3613*/ uint16(x86_xSetOp), uint16(x86_CMOVE),
+ /*3615*/ uint16(x86_xReadSlashR),
+ /*3616*/ uint16(x86_xArgR32),
+ /*3617*/ uint16(x86_xArgRM32),
+ /*3618*/ uint16(x86_xMatch),
+ /*3619*/ uint16(x86_xCondDataSize), 3607, 3613, 3623,
+ /*3623*/ uint16(x86_xSetOp), uint16(x86_CMOVE),
+ /*3625*/ uint16(x86_xReadSlashR),
+ /*3626*/ uint16(x86_xArgR64),
+ /*3627*/ uint16(x86_xArgRM64),
+ /*3628*/ uint16(x86_xMatch),
+ /*3629*/ uint16(x86_xCondIs64), 3632, 3648,
+ /*3632*/ uint16(x86_xCondDataSize), 3636, 3642, 0,
+ /*3636*/ uint16(x86_xSetOp), uint16(x86_CMOVNE),
+ /*3638*/ uint16(x86_xReadSlashR),
+ /*3639*/ uint16(x86_xArgR16),
+ /*3640*/ uint16(x86_xArgRM16),
+ /*3641*/ uint16(x86_xMatch),
+ /*3642*/ uint16(x86_xSetOp), uint16(x86_CMOVNE),
+ /*3644*/ uint16(x86_xReadSlashR),
+ /*3645*/ uint16(x86_xArgR32),
+ /*3646*/ uint16(x86_xArgRM32),
+ /*3647*/ uint16(x86_xMatch),
+ /*3648*/ uint16(x86_xCondDataSize), 3636, 3642, 3652,
+ /*3652*/ uint16(x86_xSetOp), uint16(x86_CMOVNE),
+ /*3654*/ uint16(x86_xReadSlashR),
+ /*3655*/ uint16(x86_xArgR64),
+ /*3656*/ uint16(x86_xArgRM64),
+ /*3657*/ uint16(x86_xMatch),
+ /*3658*/ uint16(x86_xCondIs64), 3661, 3677,
+ /*3661*/ uint16(x86_xCondDataSize), 3665, 3671, 0,
+ /*3665*/ uint16(x86_xSetOp), uint16(x86_CMOVBE),
+ /*3667*/ uint16(x86_xReadSlashR),
+ /*3668*/ uint16(x86_xArgR16),
+ /*3669*/ uint16(x86_xArgRM16),
+ /*3670*/ uint16(x86_xMatch),
+ /*3671*/ uint16(x86_xSetOp), uint16(x86_CMOVBE),
+ /*3673*/ uint16(x86_xReadSlashR),
+ /*3674*/ uint16(x86_xArgR32),
+ /*3675*/ uint16(x86_xArgRM32),
+ /*3676*/ uint16(x86_xMatch),
+ /*3677*/ uint16(x86_xCondDataSize), 3665, 3671, 3681,
+ /*3681*/ uint16(x86_xSetOp), uint16(x86_CMOVBE),
+ /*3683*/ uint16(x86_xReadSlashR),
+ /*3684*/ uint16(x86_xArgR64),
+ /*3685*/ uint16(x86_xArgRM64),
+ /*3686*/ uint16(x86_xMatch),
+ /*3687*/ uint16(x86_xCondIs64), 3690, 3706,
+ /*3690*/ uint16(x86_xCondDataSize), 3694, 3700, 0,
+ /*3694*/ uint16(x86_xSetOp), uint16(x86_CMOVA),
+ /*3696*/ uint16(x86_xReadSlashR),
+ /*3697*/ uint16(x86_xArgR16),
+ /*3698*/ uint16(x86_xArgRM16),
+ /*3699*/ uint16(x86_xMatch),
+ /*3700*/ uint16(x86_xSetOp), uint16(x86_CMOVA),
+ /*3702*/ uint16(x86_xReadSlashR),
+ /*3703*/ uint16(x86_xArgR32),
+ /*3704*/ uint16(x86_xArgRM32),
+ /*3705*/ uint16(x86_xMatch),
+ /*3706*/ uint16(x86_xCondDataSize), 3694, 3700, 3710,
+ /*3710*/ uint16(x86_xSetOp), uint16(x86_CMOVA),
+ /*3712*/ uint16(x86_xReadSlashR),
+ /*3713*/ uint16(x86_xArgR64),
+ /*3714*/ uint16(x86_xArgRM64),
+ /*3715*/ uint16(x86_xMatch),
+ /*3716*/ uint16(x86_xCondIs64), 3719, 3735,
+ /*3719*/ uint16(x86_xCondDataSize), 3723, 3729, 0,
+ /*3723*/ uint16(x86_xSetOp), uint16(x86_CMOVS),
+ /*3725*/ uint16(x86_xReadSlashR),
+ /*3726*/ uint16(x86_xArgR16),
+ /*3727*/ uint16(x86_xArgRM16),
+ /*3728*/ uint16(x86_xMatch),
+ /*3729*/ uint16(x86_xSetOp), uint16(x86_CMOVS),
+ /*3731*/ uint16(x86_xReadSlashR),
+ /*3732*/ uint16(x86_xArgR32),
+ /*3733*/ uint16(x86_xArgRM32),
+ /*3734*/ uint16(x86_xMatch),
+ /*3735*/ uint16(x86_xCondDataSize), 3723, 3729, 3739,
+ /*3739*/ uint16(x86_xSetOp), uint16(x86_CMOVS),
+ /*3741*/ uint16(x86_xReadSlashR),
+ /*3742*/ uint16(x86_xArgR64),
+ /*3743*/ uint16(x86_xArgRM64),
+ /*3744*/ uint16(x86_xMatch),
+ /*3745*/ uint16(x86_xCondIs64), 3748, 3764,
+ /*3748*/ uint16(x86_xCondDataSize), 3752, 3758, 0,
+ /*3752*/ uint16(x86_xSetOp), uint16(x86_CMOVNS),
+ /*3754*/ uint16(x86_xReadSlashR),
+ /*3755*/ uint16(x86_xArgR16),
+ /*3756*/ uint16(x86_xArgRM16),
+ /*3757*/ uint16(x86_xMatch),
+ /*3758*/ uint16(x86_xSetOp), uint16(x86_CMOVNS),
+ /*3760*/ uint16(x86_xReadSlashR),
+ /*3761*/ uint16(x86_xArgR32),
+ /*3762*/ uint16(x86_xArgRM32),
+ /*3763*/ uint16(x86_xMatch),
+ /*3764*/ uint16(x86_xCondDataSize), 3752, 3758, 3768,
+ /*3768*/ uint16(x86_xSetOp), uint16(x86_CMOVNS),
+ /*3770*/ uint16(x86_xReadSlashR),
+ /*3771*/ uint16(x86_xArgR64),
+ /*3772*/ uint16(x86_xArgRM64),
+ /*3773*/ uint16(x86_xMatch),
+ /*3774*/ uint16(x86_xCondIs64), 3777, 3793,
+ /*3777*/ uint16(x86_xCondDataSize), 3781, 3787, 0,
+ /*3781*/ uint16(x86_xSetOp), uint16(x86_CMOVP),
+ /*3783*/ uint16(x86_xReadSlashR),
+ /*3784*/ uint16(x86_xArgR16),
+ /*3785*/ uint16(x86_xArgRM16),
+ /*3786*/ uint16(x86_xMatch),
+ /*3787*/ uint16(x86_xSetOp), uint16(x86_CMOVP),
+ /*3789*/ uint16(x86_xReadSlashR),
+ /*3790*/ uint16(x86_xArgR32),
+ /*3791*/ uint16(x86_xArgRM32),
+ /*3792*/ uint16(x86_xMatch),
+ /*3793*/ uint16(x86_xCondDataSize), 3781, 3787, 3797,
+ /*3797*/ uint16(x86_xSetOp), uint16(x86_CMOVP),
+ /*3799*/ uint16(x86_xReadSlashR),
+ /*3800*/ uint16(x86_xArgR64),
+ /*3801*/ uint16(x86_xArgRM64),
+ /*3802*/ uint16(x86_xMatch),
+ /*3803*/ uint16(x86_xCondIs64), 3806, 3822,
+ /*3806*/ uint16(x86_xCondDataSize), 3810, 3816, 0,
+ /*3810*/ uint16(x86_xSetOp), uint16(x86_CMOVNP),
+ /*3812*/ uint16(x86_xReadSlashR),
+ /*3813*/ uint16(x86_xArgR16),
+ /*3814*/ uint16(x86_xArgRM16),
+ /*3815*/ uint16(x86_xMatch),
+ /*3816*/ uint16(x86_xSetOp), uint16(x86_CMOVNP),
+ /*3818*/ uint16(x86_xReadSlashR),
+ /*3819*/ uint16(x86_xArgR32),
+ /*3820*/ uint16(x86_xArgRM32),
+ /*3821*/ uint16(x86_xMatch),
+ /*3822*/ uint16(x86_xCondDataSize), 3810, 3816, 3826,
+ /*3826*/ uint16(x86_xSetOp), uint16(x86_CMOVNP),
+ /*3828*/ uint16(x86_xReadSlashR),
+ /*3829*/ uint16(x86_xArgR64),
+ /*3830*/ uint16(x86_xArgRM64),
+ /*3831*/ uint16(x86_xMatch),
+ /*3832*/ uint16(x86_xCondIs64), 3835, 3851,
+ /*3835*/ uint16(x86_xCondDataSize), 3839, 3845, 0,
+ /*3839*/ uint16(x86_xSetOp), uint16(x86_CMOVL),
+ /*3841*/ uint16(x86_xReadSlashR),
+ /*3842*/ uint16(x86_xArgR16),
+ /*3843*/ uint16(x86_xArgRM16),
+ /*3844*/ uint16(x86_xMatch),
+ /*3845*/ uint16(x86_xSetOp), uint16(x86_CMOVL),
+ /*3847*/ uint16(x86_xReadSlashR),
+ /*3848*/ uint16(x86_xArgR32),
+ /*3849*/ uint16(x86_xArgRM32),
+ /*3850*/ uint16(x86_xMatch),
+ /*3851*/ uint16(x86_xCondDataSize), 3839, 3845, 3855,
+ /*3855*/ uint16(x86_xSetOp), uint16(x86_CMOVL),
+ /*3857*/ uint16(x86_xReadSlashR),
+ /*3858*/ uint16(x86_xArgR64),
+ /*3859*/ uint16(x86_xArgRM64),
+ /*3860*/ uint16(x86_xMatch),
+ /*3861*/ uint16(x86_xCondIs64), 3864, 3880,
+ /*3864*/ uint16(x86_xCondDataSize), 3868, 3874, 0,
+ /*3868*/ uint16(x86_xSetOp), uint16(x86_CMOVGE),
+ /*3870*/ uint16(x86_xReadSlashR),
+ /*3871*/ uint16(x86_xArgR16),
+ /*3872*/ uint16(x86_xArgRM16),
+ /*3873*/ uint16(x86_xMatch),
+ /*3874*/ uint16(x86_xSetOp), uint16(x86_CMOVGE),
+ /*3876*/ uint16(x86_xReadSlashR),
+ /*3877*/ uint16(x86_xArgR32),
+ /*3878*/ uint16(x86_xArgRM32),
+ /*3879*/ uint16(x86_xMatch),
+ /*3880*/ uint16(x86_xCondDataSize), 3868, 3874, 3884,
+ /*3884*/ uint16(x86_xSetOp), uint16(x86_CMOVGE),
+ /*3886*/ uint16(x86_xReadSlashR),
+ /*3887*/ uint16(x86_xArgR64),
+ /*3888*/ uint16(x86_xArgRM64),
+ /*3889*/ uint16(x86_xMatch),
+ /*3890*/ uint16(x86_xCondIs64), 3893, 3909,
+ /*3893*/ uint16(x86_xCondDataSize), 3897, 3903, 0,
+ /*3897*/ uint16(x86_xSetOp), uint16(x86_CMOVLE),
+ /*3899*/ uint16(x86_xReadSlashR),
+ /*3900*/ uint16(x86_xArgR16),
+ /*3901*/ uint16(x86_xArgRM16),
+ /*3902*/ uint16(x86_xMatch),
+ /*3903*/ uint16(x86_xSetOp), uint16(x86_CMOVLE),
+ /*3905*/ uint16(x86_xReadSlashR),
+ /*3906*/ uint16(x86_xArgR32),
+ /*3907*/ uint16(x86_xArgRM32),
+ /*3908*/ uint16(x86_xMatch),
+ /*3909*/ uint16(x86_xCondDataSize), 3897, 3903, 3913,
+ /*3913*/ uint16(x86_xSetOp), uint16(x86_CMOVLE),
+ /*3915*/ uint16(x86_xReadSlashR),
+ /*3916*/ uint16(x86_xArgR64),
+ /*3917*/ uint16(x86_xArgRM64),
+ /*3918*/ uint16(x86_xMatch),
+ /*3919*/ uint16(x86_xCondIs64), 3922, 3938,
+ /*3922*/ uint16(x86_xCondDataSize), 3926, 3932, 0,
+ /*3926*/ uint16(x86_xSetOp), uint16(x86_CMOVG),
+ /*3928*/ uint16(x86_xReadSlashR),
+ /*3929*/ uint16(x86_xArgR16),
+ /*3930*/ uint16(x86_xArgRM16),
+ /*3931*/ uint16(x86_xMatch),
+ /*3932*/ uint16(x86_xSetOp), uint16(x86_CMOVG),
+ /*3934*/ uint16(x86_xReadSlashR),
+ /*3935*/ uint16(x86_xArgR32),
+ /*3936*/ uint16(x86_xArgRM32),
+ /*3937*/ uint16(x86_xMatch),
+ /*3938*/ uint16(x86_xCondDataSize), 3926, 3932, 3942,
+ /*3942*/ uint16(x86_xSetOp), uint16(x86_CMOVG),
+ /*3944*/ uint16(x86_xReadSlashR),
+ /*3945*/ uint16(x86_xArgR64),
+ /*3946*/ uint16(x86_xArgRM64),
+ /*3947*/ uint16(x86_xMatch),
+ /*3948*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 3960,
+ 0x0, 3954,
+ /*3954*/ uint16(x86_xSetOp), uint16(x86_MOVMSKPS),
+ /*3956*/ uint16(x86_xReadSlashR),
+ /*3957*/ uint16(x86_xArgR32),
+ /*3958*/ uint16(x86_xArgXmm2),
+ /*3959*/ uint16(x86_xMatch),
+ /*3960*/ uint16(x86_xSetOp), uint16(x86_MOVMSKPD),
+ /*3962*/ uint16(x86_xReadSlashR),
+ /*3963*/ uint16(x86_xArgR32),
+ /*3964*/ uint16(x86_xArgXmm2),
+ /*3965*/ uint16(x86_xMatch),
+ /*3966*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 3994,
+ 0xF2, 3988,
+ 0x66, 3982,
+ 0x0, 3976,
+ /*3976*/ uint16(x86_xSetOp), uint16(x86_SQRTPS),
+ /*3978*/ uint16(x86_xReadSlashR),
+ /*3979*/ uint16(x86_xArgXmm1),
+ /*3980*/ uint16(x86_xArgXmm2M128),
+ /*3981*/ uint16(x86_xMatch),
+ /*3982*/ uint16(x86_xSetOp), uint16(x86_SQRTPD),
+ /*3984*/ uint16(x86_xReadSlashR),
+ /*3985*/ uint16(x86_xArgXmm1),
+ /*3986*/ uint16(x86_xArgXmm2M128),
+ /*3987*/ uint16(x86_xMatch),
+ /*3988*/ uint16(x86_xSetOp), uint16(x86_SQRTSD),
+ /*3990*/ uint16(x86_xReadSlashR),
+ /*3991*/ uint16(x86_xArgXmm1),
+ /*3992*/ uint16(x86_xArgXmm2M64),
+ /*3993*/ uint16(x86_xMatch),
+ /*3994*/ uint16(x86_xSetOp), uint16(x86_SQRTSS),
+ /*3996*/ uint16(x86_xReadSlashR),
+ /*3997*/ uint16(x86_xArgXmm1),
+ /*3998*/ uint16(x86_xArgXmm2M32),
+ /*3999*/ uint16(x86_xMatch),
+ /*4000*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 4012,
+ 0x0, 4006,
+ /*4006*/ uint16(x86_xSetOp), uint16(x86_RSQRTPS),
+ /*4008*/ uint16(x86_xReadSlashR),
+ /*4009*/ uint16(x86_xArgXmm1),
+ /*4010*/ uint16(x86_xArgXmm2M128),
+ /*4011*/ uint16(x86_xMatch),
+ /*4012*/ uint16(x86_xSetOp), uint16(x86_RSQRTSS),
+ /*4014*/ uint16(x86_xReadSlashR),
+ /*4015*/ uint16(x86_xArgXmm1),
+ /*4016*/ uint16(x86_xArgXmm2M32),
+ /*4017*/ uint16(x86_xMatch),
+ /*4018*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 4030,
+ 0x0, 4024,
+ /*4024*/ uint16(x86_xSetOp), uint16(x86_RCPPS),
+ /*4026*/ uint16(x86_xReadSlashR),
+ /*4027*/ uint16(x86_xArgXmm1),
+ /*4028*/ uint16(x86_xArgXmm2M128),
+ /*4029*/ uint16(x86_xMatch),
+ /*4030*/ uint16(x86_xSetOp), uint16(x86_RCPSS),
+ /*4032*/ uint16(x86_xReadSlashR),
+ /*4033*/ uint16(x86_xArgXmm1),
+ /*4034*/ uint16(x86_xArgXmm2M32),
+ /*4035*/ uint16(x86_xMatch),
+ /*4036*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4048,
+ 0x0, 4042,
+ /*4042*/ uint16(x86_xSetOp), uint16(x86_ANDPS),
+ /*4044*/ uint16(x86_xReadSlashR),
+ /*4045*/ uint16(x86_xArgXmm1),
+ /*4046*/ uint16(x86_xArgXmm2M128),
+ /*4047*/ uint16(x86_xMatch),
+ /*4048*/ uint16(x86_xSetOp), uint16(x86_ANDPD),
+ /*4050*/ uint16(x86_xReadSlashR),
+ /*4051*/ uint16(x86_xArgXmm1),
+ /*4052*/ uint16(x86_xArgXmm2M128),
+ /*4053*/ uint16(x86_xMatch),
+ /*4054*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4066,
+ 0x0, 4060,
+ /*4060*/ uint16(x86_xSetOp), uint16(x86_ANDNPS),
+ /*4062*/ uint16(x86_xReadSlashR),
+ /*4063*/ uint16(x86_xArgXmm1),
+ /*4064*/ uint16(x86_xArgXmm2M128),
+ /*4065*/ uint16(x86_xMatch),
+ /*4066*/ uint16(x86_xSetOp), uint16(x86_ANDNPD),
+ /*4068*/ uint16(x86_xReadSlashR),
+ /*4069*/ uint16(x86_xArgXmm1),
+ /*4070*/ uint16(x86_xArgXmm2M128),
+ /*4071*/ uint16(x86_xMatch),
+ /*4072*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4084,
+ 0x0, 4078,
+ /*4078*/ uint16(x86_xSetOp), uint16(x86_ORPS),
+ /*4080*/ uint16(x86_xReadSlashR),
+ /*4081*/ uint16(x86_xArgXmm1),
+ /*4082*/ uint16(x86_xArgXmm2M128),
+ /*4083*/ uint16(x86_xMatch),
+ /*4084*/ uint16(x86_xSetOp), uint16(x86_ORPD),
+ /*4086*/ uint16(x86_xReadSlashR),
+ /*4087*/ uint16(x86_xArgXmm1),
+ /*4088*/ uint16(x86_xArgXmm2M128),
+ /*4089*/ uint16(x86_xMatch),
+ /*4090*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4102,
+ 0x0, 4096,
+ /*4096*/ uint16(x86_xSetOp), uint16(x86_XORPS),
+ /*4098*/ uint16(x86_xReadSlashR),
+ /*4099*/ uint16(x86_xArgXmm1),
+ /*4100*/ uint16(x86_xArgXmm2M128),
+ /*4101*/ uint16(x86_xMatch),
+ /*4102*/ uint16(x86_xSetOp), uint16(x86_XORPD),
+ /*4104*/ uint16(x86_xReadSlashR),
+ /*4105*/ uint16(x86_xArgXmm1),
+ /*4106*/ uint16(x86_xArgXmm2M128),
+ /*4107*/ uint16(x86_xMatch),
+ /*4108*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4136,
+ 0xF2, 4130,
+ 0x66, 4124,
+ 0x0, 4118,
+ /*4118*/ uint16(x86_xSetOp), uint16(x86_ADDPS),
+ /*4120*/ uint16(x86_xReadSlashR),
+ /*4121*/ uint16(x86_xArgXmm1),
+ /*4122*/ uint16(x86_xArgXmm2M128),
+ /*4123*/ uint16(x86_xMatch),
+ /*4124*/ uint16(x86_xSetOp), uint16(x86_ADDPD),
+ /*4126*/ uint16(x86_xReadSlashR),
+ /*4127*/ uint16(x86_xArgXmm1),
+ /*4128*/ uint16(x86_xArgXmm2M128),
+ /*4129*/ uint16(x86_xMatch),
+ /*4130*/ uint16(x86_xSetOp), uint16(x86_ADDSD),
+ /*4132*/ uint16(x86_xReadSlashR),
+ /*4133*/ uint16(x86_xArgXmm1),
+ /*4134*/ uint16(x86_xArgXmm2M64),
+ /*4135*/ uint16(x86_xMatch),
+ /*4136*/ uint16(x86_xSetOp), uint16(x86_ADDSS),
+ /*4138*/ uint16(x86_xReadSlashR),
+ /*4139*/ uint16(x86_xArgXmm1),
+ /*4140*/ uint16(x86_xArgXmm2M32),
+ /*4141*/ uint16(x86_xMatch),
+ /*4142*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4170,
+ 0xF2, 4164,
+ 0x66, 4158,
+ 0x0, 4152,
+ /*4152*/ uint16(x86_xSetOp), uint16(x86_MULPS),
+ /*4154*/ uint16(x86_xReadSlashR),
+ /*4155*/ uint16(x86_xArgXmm1),
+ /*4156*/ uint16(x86_xArgXmm2M128),
+ /*4157*/ uint16(x86_xMatch),
+ /*4158*/ uint16(x86_xSetOp), uint16(x86_MULPD),
+ /*4160*/ uint16(x86_xReadSlashR),
+ /*4161*/ uint16(x86_xArgXmm1),
+ /*4162*/ uint16(x86_xArgXmm2M128),
+ /*4163*/ uint16(x86_xMatch),
+ /*4164*/ uint16(x86_xSetOp), uint16(x86_MULSD),
+ /*4166*/ uint16(x86_xReadSlashR),
+ /*4167*/ uint16(x86_xArgXmm1),
+ /*4168*/ uint16(x86_xArgXmm2M64),
+ /*4169*/ uint16(x86_xMatch),
+ /*4170*/ uint16(x86_xSetOp), uint16(x86_MULSS),
+ /*4172*/ uint16(x86_xReadSlashR),
+ /*4173*/ uint16(x86_xArgXmm1),
+ /*4174*/ uint16(x86_xArgXmm2M32),
+ /*4175*/ uint16(x86_xMatch),
+ /*4176*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4204,
+ 0xF2, 4198,
+ 0x66, 4192,
+ 0x0, 4186,
+ /*4186*/ uint16(x86_xSetOp), uint16(x86_CVTPS2PD),
+ /*4188*/ uint16(x86_xReadSlashR),
+ /*4189*/ uint16(x86_xArgXmm1),
+ /*4190*/ uint16(x86_xArgXmm2M64),
+ /*4191*/ uint16(x86_xMatch),
+ /*4192*/ uint16(x86_xSetOp), uint16(x86_CVTPD2PS),
+ /*4194*/ uint16(x86_xReadSlashR),
+ /*4195*/ uint16(x86_xArgXmm1),
+ /*4196*/ uint16(x86_xArgXmm2M128),
+ /*4197*/ uint16(x86_xMatch),
+ /*4198*/ uint16(x86_xSetOp), uint16(x86_CVTSD2SS),
+ /*4200*/ uint16(x86_xReadSlashR),
+ /*4201*/ uint16(x86_xArgXmm1),
+ /*4202*/ uint16(x86_xArgXmm2M64),
+ /*4203*/ uint16(x86_xMatch),
+ /*4204*/ uint16(x86_xSetOp), uint16(x86_CVTSS2SD),
+ /*4206*/ uint16(x86_xReadSlashR),
+ /*4207*/ uint16(x86_xArgXmm1),
+ /*4208*/ uint16(x86_xArgXmm2M32),
+ /*4209*/ uint16(x86_xMatch),
+ /*4210*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 4230,
+ 0x66, 4224,
+ 0x0, 4218,
+ /*4218*/ uint16(x86_xSetOp), uint16(x86_CVTDQ2PS),
+ /*4220*/ uint16(x86_xReadSlashR),
+ /*4221*/ uint16(x86_xArgXmm1),
+ /*4222*/ uint16(x86_xArgXmm2M128),
+ /*4223*/ uint16(x86_xMatch),
+ /*4224*/ uint16(x86_xSetOp), uint16(x86_CVTPS2DQ),
+ /*4226*/ uint16(x86_xReadSlashR),
+ /*4227*/ uint16(x86_xArgXmm1),
+ /*4228*/ uint16(x86_xArgXmm2M128),
+ /*4229*/ uint16(x86_xMatch),
+ /*4230*/ uint16(x86_xSetOp), uint16(x86_CVTTPS2DQ),
+ /*4232*/ uint16(x86_xReadSlashR),
+ /*4233*/ uint16(x86_xArgXmm1),
+ /*4234*/ uint16(x86_xArgXmm2M128),
+ /*4235*/ uint16(x86_xMatch),
+ /*4236*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4264,
+ 0xF2, 4258,
+ 0x66, 4252,
+ 0x0, 4246,
+ /*4246*/ uint16(x86_xSetOp), uint16(x86_SUBPS),
+ /*4248*/ uint16(x86_xReadSlashR),
+ /*4249*/ uint16(x86_xArgXmm1),
+ /*4250*/ uint16(x86_xArgXmm2M128),
+ /*4251*/ uint16(x86_xMatch),
+ /*4252*/ uint16(x86_xSetOp), uint16(x86_SUBPD),
+ /*4254*/ uint16(x86_xReadSlashR),
+ /*4255*/ uint16(x86_xArgXmm1),
+ /*4256*/ uint16(x86_xArgXmm2M128),
+ /*4257*/ uint16(x86_xMatch),
+ /*4258*/ uint16(x86_xSetOp), uint16(x86_SUBSD),
+ /*4260*/ uint16(x86_xReadSlashR),
+ /*4261*/ uint16(x86_xArgXmm1),
+ /*4262*/ uint16(x86_xArgXmm2M64),
+ /*4263*/ uint16(x86_xMatch),
+ /*4264*/ uint16(x86_xSetOp), uint16(x86_SUBSS),
+ /*4266*/ uint16(x86_xReadSlashR),
+ /*4267*/ uint16(x86_xArgXmm1),
+ /*4268*/ uint16(x86_xArgXmm2M32),
+ /*4269*/ uint16(x86_xMatch),
+ /*4270*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4298,
+ 0xF2, 4292,
+ 0x66, 4286,
+ 0x0, 4280,
+ /*4280*/ uint16(x86_xSetOp), uint16(x86_MINPS),
+ /*4282*/ uint16(x86_xReadSlashR),
+ /*4283*/ uint16(x86_xArgXmm1),
+ /*4284*/ uint16(x86_xArgXmm2M128),
+ /*4285*/ uint16(x86_xMatch),
+ /*4286*/ uint16(x86_xSetOp), uint16(x86_MINPD),
+ /*4288*/ uint16(x86_xReadSlashR),
+ /*4289*/ uint16(x86_xArgXmm1),
+ /*4290*/ uint16(x86_xArgXmm2M128),
+ /*4291*/ uint16(x86_xMatch),
+ /*4292*/ uint16(x86_xSetOp), uint16(x86_MINSD),
+ /*4294*/ uint16(x86_xReadSlashR),
+ /*4295*/ uint16(x86_xArgXmm1),
+ /*4296*/ uint16(x86_xArgXmm2M64),
+ /*4297*/ uint16(x86_xMatch),
+ /*4298*/ uint16(x86_xSetOp), uint16(x86_MINSS),
+ /*4300*/ uint16(x86_xReadSlashR),
+ /*4301*/ uint16(x86_xArgXmm1),
+ /*4302*/ uint16(x86_xArgXmm2M32),
+ /*4303*/ uint16(x86_xMatch),
+ /*4304*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4332,
+ 0xF2, 4326,
+ 0x66, 4320,
+ 0x0, 4314,
+ /*4314*/ uint16(x86_xSetOp), uint16(x86_DIVPS),
+ /*4316*/ uint16(x86_xReadSlashR),
+ /*4317*/ uint16(x86_xArgXmm1),
+ /*4318*/ uint16(x86_xArgXmm2M128),
+ /*4319*/ uint16(x86_xMatch),
+ /*4320*/ uint16(x86_xSetOp), uint16(x86_DIVPD),
+ /*4322*/ uint16(x86_xReadSlashR),
+ /*4323*/ uint16(x86_xArgXmm1),
+ /*4324*/ uint16(x86_xArgXmm2M128),
+ /*4325*/ uint16(x86_xMatch),
+ /*4326*/ uint16(x86_xSetOp), uint16(x86_DIVSD),
+ /*4328*/ uint16(x86_xReadSlashR),
+ /*4329*/ uint16(x86_xArgXmm1),
+ /*4330*/ uint16(x86_xArgXmm2M64),
+ /*4331*/ uint16(x86_xMatch),
+ /*4332*/ uint16(x86_xSetOp), uint16(x86_DIVSS),
+ /*4334*/ uint16(x86_xReadSlashR),
+ /*4335*/ uint16(x86_xArgXmm1),
+ /*4336*/ uint16(x86_xArgXmm2M32),
+ /*4337*/ uint16(x86_xMatch),
+ /*4338*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4366,
+ 0xF2, 4360,
+ 0x66, 4354,
+ 0x0, 4348,
+ /*4348*/ uint16(x86_xSetOp), uint16(x86_MAXPS),
+ /*4350*/ uint16(x86_xReadSlashR),
+ /*4351*/ uint16(x86_xArgXmm1),
+ /*4352*/ uint16(x86_xArgXmm2M128),
+ /*4353*/ uint16(x86_xMatch),
+ /*4354*/ uint16(x86_xSetOp), uint16(x86_MAXPD),
+ /*4356*/ uint16(x86_xReadSlashR),
+ /*4357*/ uint16(x86_xArgXmm1),
+ /*4358*/ uint16(x86_xArgXmm2M128),
+ /*4359*/ uint16(x86_xMatch),
+ /*4360*/ uint16(x86_xSetOp), uint16(x86_MAXSD),
+ /*4362*/ uint16(x86_xReadSlashR),
+ /*4363*/ uint16(x86_xArgXmm1),
+ /*4364*/ uint16(x86_xArgXmm2M64),
+ /*4365*/ uint16(x86_xMatch),
+ /*4366*/ uint16(x86_xSetOp), uint16(x86_MAXSS),
+ /*4368*/ uint16(x86_xReadSlashR),
+ /*4369*/ uint16(x86_xArgXmm1),
+ /*4370*/ uint16(x86_xArgXmm2M32),
+ /*4371*/ uint16(x86_xMatch),
+ /*4372*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4384,
+ 0x0, 4378,
+ /*4378*/ uint16(x86_xSetOp), uint16(x86_PUNPCKLBW),
+ /*4380*/ uint16(x86_xReadSlashR),
+ /*4381*/ uint16(x86_xArgMm),
+ /*4382*/ uint16(x86_xArgMmM32),
+ /*4383*/ uint16(x86_xMatch),
+ /*4384*/ uint16(x86_xSetOp), uint16(x86_PUNPCKLBW),
+ /*4386*/ uint16(x86_xReadSlashR),
+ /*4387*/ uint16(x86_xArgXmm1),
+ /*4388*/ uint16(x86_xArgXmm2M128),
+ /*4389*/ uint16(x86_xMatch),
+ /*4390*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4402,
+ 0x0, 4396,
+ /*4396*/ uint16(x86_xSetOp), uint16(x86_PUNPCKLWD),
+ /*4398*/ uint16(x86_xReadSlashR),
+ /*4399*/ uint16(x86_xArgMm),
+ /*4400*/ uint16(x86_xArgMmM32),
+ /*4401*/ uint16(x86_xMatch),
+ /*4402*/ uint16(x86_xSetOp), uint16(x86_PUNPCKLWD),
+ /*4404*/ uint16(x86_xReadSlashR),
+ /*4405*/ uint16(x86_xArgXmm1),
+ /*4406*/ uint16(x86_xArgXmm2M128),
+ /*4407*/ uint16(x86_xMatch),
+ /*4408*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4420,
+ 0x0, 4414,
+ /*4414*/ uint16(x86_xSetOp), uint16(x86_PUNPCKLDQ),
+ /*4416*/ uint16(x86_xReadSlashR),
+ /*4417*/ uint16(x86_xArgMm),
+ /*4418*/ uint16(x86_xArgMmM32),
+ /*4419*/ uint16(x86_xMatch),
+ /*4420*/ uint16(x86_xSetOp), uint16(x86_PUNPCKLDQ),
+ /*4422*/ uint16(x86_xReadSlashR),
+ /*4423*/ uint16(x86_xArgXmm1),
+ /*4424*/ uint16(x86_xArgXmm2M128),
+ /*4425*/ uint16(x86_xMatch),
+ /*4426*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4438,
+ 0x0, 4432,
+ /*4432*/ uint16(x86_xSetOp), uint16(x86_PACKSSWB),
+ /*4434*/ uint16(x86_xReadSlashR),
+ /*4435*/ uint16(x86_xArgMm1),
+ /*4436*/ uint16(x86_xArgMm2M64),
+ /*4437*/ uint16(x86_xMatch),
+ /*4438*/ uint16(x86_xSetOp), uint16(x86_PACKSSWB),
+ /*4440*/ uint16(x86_xReadSlashR),
+ /*4441*/ uint16(x86_xArgXmm1),
+ /*4442*/ uint16(x86_xArgXmm2M128),
+ /*4443*/ uint16(x86_xMatch),
+ /*4444*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4456,
+ 0x0, 4450,
+ /*4450*/ uint16(x86_xSetOp), uint16(x86_PCMPGTB),
+ /*4452*/ uint16(x86_xReadSlashR),
+ /*4453*/ uint16(x86_xArgMm),
+ /*4454*/ uint16(x86_xArgMmM64),
+ /*4455*/ uint16(x86_xMatch),
+ /*4456*/ uint16(x86_xSetOp), uint16(x86_PCMPGTB),
+ /*4458*/ uint16(x86_xReadSlashR),
+ /*4459*/ uint16(x86_xArgXmm1),
+ /*4460*/ uint16(x86_xArgXmm2M128),
+ /*4461*/ uint16(x86_xMatch),
+ /*4462*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4474,
+ 0x0, 4468,
+ /*4468*/ uint16(x86_xSetOp), uint16(x86_PCMPGTW),
+ /*4470*/ uint16(x86_xReadSlashR),
+ /*4471*/ uint16(x86_xArgMm),
+ /*4472*/ uint16(x86_xArgMmM64),
+ /*4473*/ uint16(x86_xMatch),
+ /*4474*/ uint16(x86_xSetOp), uint16(x86_PCMPGTW),
+ /*4476*/ uint16(x86_xReadSlashR),
+ /*4477*/ uint16(x86_xArgXmm1),
+ /*4478*/ uint16(x86_xArgXmm2M128),
+ /*4479*/ uint16(x86_xMatch),
+ /*4480*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4492,
+ 0x0, 4486,
+ /*4486*/ uint16(x86_xSetOp), uint16(x86_PCMPGTD),
+ /*4488*/ uint16(x86_xReadSlashR),
+ /*4489*/ uint16(x86_xArgMm),
+ /*4490*/ uint16(x86_xArgMmM64),
+ /*4491*/ uint16(x86_xMatch),
+ /*4492*/ uint16(x86_xSetOp), uint16(x86_PCMPGTD),
+ /*4494*/ uint16(x86_xReadSlashR),
+ /*4495*/ uint16(x86_xArgXmm1),
+ /*4496*/ uint16(x86_xArgXmm2M128),
+ /*4497*/ uint16(x86_xMatch),
+ /*4498*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4510,
+ 0x0, 4504,
+ /*4504*/ uint16(x86_xSetOp), uint16(x86_PACKUSWB),
+ /*4506*/ uint16(x86_xReadSlashR),
+ /*4507*/ uint16(x86_xArgMm),
+ /*4508*/ uint16(x86_xArgMmM64),
+ /*4509*/ uint16(x86_xMatch),
+ /*4510*/ uint16(x86_xSetOp), uint16(x86_PACKUSWB),
+ /*4512*/ uint16(x86_xReadSlashR),
+ /*4513*/ uint16(x86_xArgXmm1),
+ /*4514*/ uint16(x86_xArgXmm2M128),
+ /*4515*/ uint16(x86_xMatch),
+ /*4516*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4528,
+ 0x0, 4522,
+ /*4522*/ uint16(x86_xSetOp), uint16(x86_PUNPCKHBW),
+ /*4524*/ uint16(x86_xReadSlashR),
+ /*4525*/ uint16(x86_xArgMm),
+ /*4526*/ uint16(x86_xArgMmM64),
+ /*4527*/ uint16(x86_xMatch),
+ /*4528*/ uint16(x86_xSetOp), uint16(x86_PUNPCKHBW),
+ /*4530*/ uint16(x86_xReadSlashR),
+ /*4531*/ uint16(x86_xArgXmm1),
+ /*4532*/ uint16(x86_xArgXmm2M128),
+ /*4533*/ uint16(x86_xMatch),
+ /*4534*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4546,
+ 0x0, 4540,
+ /*4540*/ uint16(x86_xSetOp), uint16(x86_PUNPCKHWD),
+ /*4542*/ uint16(x86_xReadSlashR),
+ /*4543*/ uint16(x86_xArgMm),
+ /*4544*/ uint16(x86_xArgMmM64),
+ /*4545*/ uint16(x86_xMatch),
+ /*4546*/ uint16(x86_xSetOp), uint16(x86_PUNPCKHWD),
+ /*4548*/ uint16(x86_xReadSlashR),
+ /*4549*/ uint16(x86_xArgXmm1),
+ /*4550*/ uint16(x86_xArgXmm2M128),
+ /*4551*/ uint16(x86_xMatch),
+ /*4552*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4564,
+ 0x0, 4558,
+ /*4558*/ uint16(x86_xSetOp), uint16(x86_PUNPCKHDQ),
+ /*4560*/ uint16(x86_xReadSlashR),
+ /*4561*/ uint16(x86_xArgMm),
+ /*4562*/ uint16(x86_xArgMmM64),
+ /*4563*/ uint16(x86_xMatch),
+ /*4564*/ uint16(x86_xSetOp), uint16(x86_PUNPCKHDQ),
+ /*4566*/ uint16(x86_xReadSlashR),
+ /*4567*/ uint16(x86_xArgXmm1),
+ /*4568*/ uint16(x86_xArgXmm2M128),
+ /*4569*/ uint16(x86_xMatch),
+ /*4570*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4582,
+ 0x0, 4576,
+ /*4576*/ uint16(x86_xSetOp), uint16(x86_PACKSSDW),
+ /*4578*/ uint16(x86_xReadSlashR),
+ /*4579*/ uint16(x86_xArgMm1),
+ /*4580*/ uint16(x86_xArgMm2M64),
+ /*4581*/ uint16(x86_xMatch),
+ /*4582*/ uint16(x86_xSetOp), uint16(x86_PACKSSDW),
+ /*4584*/ uint16(x86_xReadSlashR),
+ /*4585*/ uint16(x86_xArgXmm1),
+ /*4586*/ uint16(x86_xArgXmm2M128),
+ /*4587*/ uint16(x86_xMatch),
+ /*4588*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 4592,
+ /*4592*/ uint16(x86_xSetOp), uint16(x86_PUNPCKLQDQ),
+ /*4594*/ uint16(x86_xReadSlashR),
+ /*4595*/ uint16(x86_xArgXmm1),
+ /*4596*/ uint16(x86_xArgXmm2M128),
+ /*4597*/ uint16(x86_xMatch),
+ /*4598*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 4602,
+ /*4602*/ uint16(x86_xSetOp), uint16(x86_PUNPCKHQDQ),
+ /*4604*/ uint16(x86_xReadSlashR),
+ /*4605*/ uint16(x86_xArgXmm1),
+ /*4606*/ uint16(x86_xArgXmm2M128),
+ /*4607*/ uint16(x86_xMatch),
+ /*4608*/ uint16(x86_xCondIs64), 4611, 4649,
+ /*4611*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4633,
+ 0x0, 4617,
+ /*4617*/ uint16(x86_xCondDataSize), 4621, 4627, 0,
+ /*4621*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*4623*/ uint16(x86_xReadSlashR),
+ /*4624*/ uint16(x86_xArgMm),
+ /*4625*/ uint16(x86_xArgRM32),
+ /*4626*/ uint16(x86_xMatch),
+ /*4627*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*4629*/ uint16(x86_xReadSlashR),
+ /*4630*/ uint16(x86_xArgMm),
+ /*4631*/ uint16(x86_xArgRM32),
+ /*4632*/ uint16(x86_xMatch),
+ /*4633*/ uint16(x86_xCondDataSize), 4637, 4643, 0,
+ /*4637*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*4639*/ uint16(x86_xReadSlashR),
+ /*4640*/ uint16(x86_xArgXmm),
+ /*4641*/ uint16(x86_xArgRM32),
+ /*4642*/ uint16(x86_xMatch),
+ /*4643*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*4645*/ uint16(x86_xReadSlashR),
+ /*4646*/ uint16(x86_xArgXmm),
+ /*4647*/ uint16(x86_xArgRM32),
+ /*4648*/ uint16(x86_xMatch),
+ /*4649*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4665,
+ 0x0, 4655,
+ /*4655*/ uint16(x86_xCondDataSize), 4621, 4627, 4659,
+ /*4659*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*4661*/ uint16(x86_xReadSlashR),
+ /*4662*/ uint16(x86_xArgMm),
+ /*4663*/ uint16(x86_xArgRM64),
+ /*4664*/ uint16(x86_xMatch),
+ /*4665*/ uint16(x86_xCondDataSize), 4637, 4643, 4669,
+ /*4669*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*4671*/ uint16(x86_xReadSlashR),
+ /*4672*/ uint16(x86_xArgXmm),
+ /*4673*/ uint16(x86_xArgRM64),
+ /*4674*/ uint16(x86_xMatch),
+ /*4675*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 4695,
+ 0x66, 4689,
+ 0x0, 4683,
+ /*4683*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*4685*/ uint16(x86_xReadSlashR),
+ /*4686*/ uint16(x86_xArgMm),
+ /*4687*/ uint16(x86_xArgMmM64),
+ /*4688*/ uint16(x86_xMatch),
+ /*4689*/ uint16(x86_xSetOp), uint16(x86_MOVDQA),
+ /*4691*/ uint16(x86_xReadSlashR),
+ /*4692*/ uint16(x86_xArgXmm1),
+ /*4693*/ uint16(x86_xArgXmm2M128),
+ /*4694*/ uint16(x86_xMatch),
+ /*4695*/ uint16(x86_xSetOp), uint16(x86_MOVDQU),
+ /*4697*/ uint16(x86_xReadSlashR),
+ /*4698*/ uint16(x86_xArgXmm1),
+ /*4699*/ uint16(x86_xArgXmm2M128),
+ /*4700*/ uint16(x86_xMatch),
+ /*4701*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 4735,
+ 0xF2, 4727,
+ 0x66, 4719,
+ 0x0, 4711,
+ /*4711*/ uint16(x86_xSetOp), uint16(x86_PSHUFW),
+ /*4713*/ uint16(x86_xReadSlashR),
+ /*4714*/ uint16(x86_xReadIb),
+ /*4715*/ uint16(x86_xArgMm1),
+ /*4716*/ uint16(x86_xArgMm2M64),
+ /*4717*/ uint16(x86_xArgImm8u),
+ /*4718*/ uint16(x86_xMatch),
+ /*4719*/ uint16(x86_xSetOp), uint16(x86_PSHUFD),
+ /*4721*/ uint16(x86_xReadSlashR),
+ /*4722*/ uint16(x86_xReadIb),
+ /*4723*/ uint16(x86_xArgXmm1),
+ /*4724*/ uint16(x86_xArgXmm2M128),
+ /*4725*/ uint16(x86_xArgImm8u),
+ /*4726*/ uint16(x86_xMatch),
+ /*4727*/ uint16(x86_xSetOp), uint16(x86_PSHUFLW),
+ /*4729*/ uint16(x86_xReadSlashR),
+ /*4730*/ uint16(x86_xReadIb),
+ /*4731*/ uint16(x86_xArgXmm1),
+ /*4732*/ uint16(x86_xArgXmm2M128),
+ /*4733*/ uint16(x86_xArgImm8u),
+ /*4734*/ uint16(x86_xMatch),
+ /*4735*/ uint16(x86_xSetOp), uint16(x86_PSHUFHW),
+ /*4737*/ uint16(x86_xReadSlashR),
+ /*4738*/ uint16(x86_xReadIb),
+ /*4739*/ uint16(x86_xArgXmm1),
+ /*4740*/ uint16(x86_xArgXmm2M128),
+ /*4741*/ uint16(x86_xArgImm8u),
+ /*4742*/ uint16(x86_xMatch),
+ /*4743*/ uint16(x86_xCondSlashR),
+ 0, // 0
+ 0, // 1
+ 4752, // 2
+ 0, // 3
+ 4770, // 4
+ 0, // 5
+ 4788, // 6
+ 0, // 7
+ /*4752*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4764,
+ 0x0, 4758,
+ /*4758*/ uint16(x86_xSetOp), uint16(x86_PSRLW),
+ /*4760*/ uint16(x86_xReadIb),
+ /*4761*/ uint16(x86_xArgMm2),
+ /*4762*/ uint16(x86_xArgImm8u),
+ /*4763*/ uint16(x86_xMatch),
+ /*4764*/ uint16(x86_xSetOp), uint16(x86_PSRLW),
+ /*4766*/ uint16(x86_xReadIb),
+ /*4767*/ uint16(x86_xArgXmm2),
+ /*4768*/ uint16(x86_xArgImm8u),
+ /*4769*/ uint16(x86_xMatch),
+ /*4770*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4782,
+ 0x0, 4776,
+ /*4776*/ uint16(x86_xSetOp), uint16(x86_PSRAW),
+ /*4778*/ uint16(x86_xReadIb),
+ /*4779*/ uint16(x86_xArgMm2),
+ /*4780*/ uint16(x86_xArgImm8u),
+ /*4781*/ uint16(x86_xMatch),
+ /*4782*/ uint16(x86_xSetOp), uint16(x86_PSRAW),
+ /*4784*/ uint16(x86_xReadIb),
+ /*4785*/ uint16(x86_xArgXmm2),
+ /*4786*/ uint16(x86_xArgImm8u),
+ /*4787*/ uint16(x86_xMatch),
+ /*4788*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4800,
+ 0x0, 4794,
+ /*4794*/ uint16(x86_xSetOp), uint16(x86_PSLLW),
+ /*4796*/ uint16(x86_xReadIb),
+ /*4797*/ uint16(x86_xArgMm2),
+ /*4798*/ uint16(x86_xArgImm8u),
+ /*4799*/ uint16(x86_xMatch),
+ /*4800*/ uint16(x86_xSetOp), uint16(x86_PSLLW),
+ /*4802*/ uint16(x86_xReadIb),
+ /*4803*/ uint16(x86_xArgXmm2),
+ /*4804*/ uint16(x86_xArgImm8u),
+ /*4805*/ uint16(x86_xMatch),
+ /*4806*/ uint16(x86_xCondSlashR),
+ 0, // 0
+ 0, // 1
+ 4815, // 2
+ 0, // 3
+ 4833, // 4
+ 0, // 5
+ 4851, // 6
+ 0, // 7
+ /*4815*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4827,
+ 0x0, 4821,
+ /*4821*/ uint16(x86_xSetOp), uint16(x86_PSRLD),
+ /*4823*/ uint16(x86_xReadIb),
+ /*4824*/ uint16(x86_xArgMm2),
+ /*4825*/ uint16(x86_xArgImm8u),
+ /*4826*/ uint16(x86_xMatch),
+ /*4827*/ uint16(x86_xSetOp), uint16(x86_PSRLD),
+ /*4829*/ uint16(x86_xReadIb),
+ /*4830*/ uint16(x86_xArgXmm2),
+ /*4831*/ uint16(x86_xArgImm8u),
+ /*4832*/ uint16(x86_xMatch),
+ /*4833*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4845,
+ 0x0, 4839,
+ /*4839*/ uint16(x86_xSetOp), uint16(x86_PSRAD),
+ /*4841*/ uint16(x86_xReadIb),
+ /*4842*/ uint16(x86_xArgMm2),
+ /*4843*/ uint16(x86_xArgImm8u),
+ /*4844*/ uint16(x86_xMatch),
+ /*4845*/ uint16(x86_xSetOp), uint16(x86_PSRAD),
+ /*4847*/ uint16(x86_xReadIb),
+ /*4848*/ uint16(x86_xArgXmm2),
+ /*4849*/ uint16(x86_xArgImm8u),
+ /*4850*/ uint16(x86_xMatch),
+ /*4851*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4863,
+ 0x0, 4857,
+ /*4857*/ uint16(x86_xSetOp), uint16(x86_PSLLD),
+ /*4859*/ uint16(x86_xReadIb),
+ /*4860*/ uint16(x86_xArgMm2),
+ /*4861*/ uint16(x86_xArgImm8u),
+ /*4862*/ uint16(x86_xMatch),
+ /*4863*/ uint16(x86_xSetOp), uint16(x86_PSLLD),
+ /*4865*/ uint16(x86_xReadIb),
+ /*4866*/ uint16(x86_xArgXmm2),
+ /*4867*/ uint16(x86_xArgImm8u),
+ /*4868*/ uint16(x86_xMatch),
+ /*4869*/ uint16(x86_xCondSlashR),
+ 0, // 0
+ 0, // 1
+ 4878, // 2
+ 4896, // 3
+ 0, // 4
+ 0, // 5
+ 4906, // 6
+ 4924, // 7
+ /*4878*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4890,
+ 0x0, 4884,
+ /*4884*/ uint16(x86_xSetOp), uint16(x86_PSRLQ),
+ /*4886*/ uint16(x86_xReadIb),
+ /*4887*/ uint16(x86_xArgMm2),
+ /*4888*/ uint16(x86_xArgImm8u),
+ /*4889*/ uint16(x86_xMatch),
+ /*4890*/ uint16(x86_xSetOp), uint16(x86_PSRLQ),
+ /*4892*/ uint16(x86_xReadIb),
+ /*4893*/ uint16(x86_xArgXmm2),
+ /*4894*/ uint16(x86_xArgImm8u),
+ /*4895*/ uint16(x86_xMatch),
+ /*4896*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 4900,
+ /*4900*/ uint16(x86_xSetOp), uint16(x86_PSRLDQ),
+ /*4902*/ uint16(x86_xReadIb),
+ /*4903*/ uint16(x86_xArgXmm2),
+ /*4904*/ uint16(x86_xArgImm8u),
+ /*4905*/ uint16(x86_xMatch),
+ /*4906*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4918,
+ 0x0, 4912,
+ /*4912*/ uint16(x86_xSetOp), uint16(x86_PSLLQ),
+ /*4914*/ uint16(x86_xReadIb),
+ /*4915*/ uint16(x86_xArgMm2),
+ /*4916*/ uint16(x86_xArgImm8u),
+ /*4917*/ uint16(x86_xMatch),
+ /*4918*/ uint16(x86_xSetOp), uint16(x86_PSLLQ),
+ /*4920*/ uint16(x86_xReadIb),
+ /*4921*/ uint16(x86_xArgXmm2),
+ /*4922*/ uint16(x86_xArgImm8u),
+ /*4923*/ uint16(x86_xMatch),
+ /*4924*/ uint16(x86_xCondPrefix), 1,
+ 0x66, 4928,
+ /*4928*/ uint16(x86_xSetOp), uint16(x86_PSLLDQ),
+ /*4930*/ uint16(x86_xReadIb),
+ /*4931*/ uint16(x86_xArgXmm2),
+ /*4932*/ uint16(x86_xArgImm8u),
+ /*4933*/ uint16(x86_xMatch),
+ /*4934*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4946,
+ 0x0, 4940,
+ /*4940*/ uint16(x86_xSetOp), uint16(x86_PCMPEQB),
+ /*4942*/ uint16(x86_xReadSlashR),
+ /*4943*/ uint16(x86_xArgMm),
+ /*4944*/ uint16(x86_xArgMmM64),
+ /*4945*/ uint16(x86_xMatch),
+ /*4946*/ uint16(x86_xSetOp), uint16(x86_PCMPEQB),
+ /*4948*/ uint16(x86_xReadSlashR),
+ /*4949*/ uint16(x86_xArgXmm1),
+ /*4950*/ uint16(x86_xArgXmm2M128),
+ /*4951*/ uint16(x86_xMatch),
+ /*4952*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4964,
+ 0x0, 4958,
+ /*4958*/ uint16(x86_xSetOp), uint16(x86_PCMPEQW),
+ /*4960*/ uint16(x86_xReadSlashR),
+ /*4961*/ uint16(x86_xArgMm),
+ /*4962*/ uint16(x86_xArgMmM64),
+ /*4963*/ uint16(x86_xMatch),
+ /*4964*/ uint16(x86_xSetOp), uint16(x86_PCMPEQW),
+ /*4966*/ uint16(x86_xReadSlashR),
+ /*4967*/ uint16(x86_xArgXmm1),
+ /*4968*/ uint16(x86_xArgXmm2M128),
+ /*4969*/ uint16(x86_xMatch),
+ /*4970*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 4982,
+ 0x0, 4976,
+ /*4976*/ uint16(x86_xSetOp), uint16(x86_PCMPEQD),
+ /*4978*/ uint16(x86_xReadSlashR),
+ /*4979*/ uint16(x86_xArgMm),
+ /*4980*/ uint16(x86_xArgMmM64),
+ /*4981*/ uint16(x86_xMatch),
+ /*4982*/ uint16(x86_xSetOp), uint16(x86_PCMPEQD),
+ /*4984*/ uint16(x86_xReadSlashR),
+ /*4985*/ uint16(x86_xArgXmm1),
+ /*4986*/ uint16(x86_xArgXmm2M128),
+ /*4987*/ uint16(x86_xMatch),
+ /*4988*/ uint16(x86_xSetOp), uint16(x86_EMMS),
+ /*4990*/ uint16(x86_xMatch),
+ /*4991*/ uint16(x86_xCondPrefix), 2,
+ 0xF2, 5003,
+ 0x66, 4997,
+ /*4997*/ uint16(x86_xSetOp), uint16(x86_HADDPD),
+ /*4999*/ uint16(x86_xReadSlashR),
+ /*5000*/ uint16(x86_xArgXmm1),
+ /*5001*/ uint16(x86_xArgXmm2M128),
+ /*5002*/ uint16(x86_xMatch),
+ /*5003*/ uint16(x86_xSetOp), uint16(x86_HADDPS),
+ /*5005*/ uint16(x86_xReadSlashR),
+ /*5006*/ uint16(x86_xArgXmm1),
+ /*5007*/ uint16(x86_xArgXmm2M128),
+ /*5008*/ uint16(x86_xMatch),
+ /*5009*/ uint16(x86_xCondPrefix), 2,
+ 0xF2, 5021,
+ 0x66, 5015,
+ /*5015*/ uint16(x86_xSetOp), uint16(x86_HSUBPD),
+ /*5017*/ uint16(x86_xReadSlashR),
+ /*5018*/ uint16(x86_xArgXmm1),
+ /*5019*/ uint16(x86_xArgXmm2M128),
+ /*5020*/ uint16(x86_xMatch),
+ /*5021*/ uint16(x86_xSetOp), uint16(x86_HSUBPS),
+ /*5023*/ uint16(x86_xReadSlashR),
+ /*5024*/ uint16(x86_xArgXmm1),
+ /*5025*/ uint16(x86_xArgXmm2M128),
+ /*5026*/ uint16(x86_xMatch),
+ /*5027*/ uint16(x86_xCondIs64), 5030, 5076,
+ /*5030*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 5070,
+ 0x66, 5054,
+ 0x0, 5038,
+ /*5038*/ uint16(x86_xCondDataSize), 5042, 5048, 0,
+ /*5042*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*5044*/ uint16(x86_xReadSlashR),
+ /*5045*/ uint16(x86_xArgRM32),
+ /*5046*/ uint16(x86_xArgMm),
+ /*5047*/ uint16(x86_xMatch),
+ /*5048*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*5050*/ uint16(x86_xReadSlashR),
+ /*5051*/ uint16(x86_xArgRM32),
+ /*5052*/ uint16(x86_xArgMm),
+ /*5053*/ uint16(x86_xMatch),
+ /*5054*/ uint16(x86_xCondDataSize), 5058, 5064, 0,
+ /*5058*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*5060*/ uint16(x86_xReadSlashR),
+ /*5061*/ uint16(x86_xArgRM32),
+ /*5062*/ uint16(x86_xArgXmm),
+ /*5063*/ uint16(x86_xMatch),
+ /*5064*/ uint16(x86_xSetOp), uint16(x86_MOVD),
+ /*5066*/ uint16(x86_xReadSlashR),
+ /*5067*/ uint16(x86_xArgRM32),
+ /*5068*/ uint16(x86_xArgXmm),
+ /*5069*/ uint16(x86_xMatch),
+ /*5070*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*5072*/ uint16(x86_xReadSlashR),
+ /*5073*/ uint16(x86_xArgXmm1),
+ /*5074*/ uint16(x86_xArgXmm2M64),
+ /*5075*/ uint16(x86_xMatch),
+ /*5076*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 5070,
+ 0x66, 5094,
+ 0x0, 5084,
+ /*5084*/ uint16(x86_xCondDataSize), 5042, 5048, 5088,
+ /*5088*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*5090*/ uint16(x86_xReadSlashR),
+ /*5091*/ uint16(x86_xArgRM64),
+ /*5092*/ uint16(x86_xArgMm),
+ /*5093*/ uint16(x86_xMatch),
+ /*5094*/ uint16(x86_xCondDataSize), 5058, 5064, 5098,
+ /*5098*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*5100*/ uint16(x86_xReadSlashR),
+ /*5101*/ uint16(x86_xArgRM64),
+ /*5102*/ uint16(x86_xArgXmm),
+ /*5103*/ uint16(x86_xMatch),
+ /*5104*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 5124,
+ 0x66, 5118,
+ 0x0, 5112,
+ /*5112*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*5114*/ uint16(x86_xReadSlashR),
+ /*5115*/ uint16(x86_xArgMmM64),
+ /*5116*/ uint16(x86_xArgMm),
+ /*5117*/ uint16(x86_xMatch),
+ /*5118*/ uint16(x86_xSetOp), uint16(x86_MOVDQA),
+ /*5120*/ uint16(x86_xReadSlashR),
+ /*5121*/ uint16(x86_xArgXmm2M128),
+ /*5122*/ uint16(x86_xArgXmm1),
+ /*5123*/ uint16(x86_xMatch),
+ /*5124*/ uint16(x86_xSetOp), uint16(x86_MOVDQU),
+ /*5126*/ uint16(x86_xReadSlashR),
+ /*5127*/ uint16(x86_xArgXmm2M128),
+ /*5128*/ uint16(x86_xArgXmm1),
+ /*5129*/ uint16(x86_xMatch),
+ /*5130*/ uint16(x86_xCondIs64), 5133, 5147,
+ /*5133*/ uint16(x86_xCondDataSize), 5137, 5142, 0,
+ /*5137*/ uint16(x86_xSetOp), uint16(x86_JO),
+ /*5139*/ uint16(x86_xReadCw),
+ /*5140*/ uint16(x86_xArgRel16),
+ /*5141*/ uint16(x86_xMatch),
+ /*5142*/ uint16(x86_xSetOp), uint16(x86_JO),
+ /*5144*/ uint16(x86_xReadCd),
+ /*5145*/ uint16(x86_xArgRel32),
+ /*5146*/ uint16(x86_xMatch),
+ /*5147*/ uint16(x86_xCondDataSize), 5151, 5142, 5156,
+ /*5151*/ uint16(x86_xSetOp), uint16(x86_JO),
+ /*5153*/ uint16(x86_xReadCd),
+ /*5154*/ uint16(x86_xArgRel32),
+ /*5155*/ uint16(x86_xMatch),
+ /*5156*/ uint16(x86_xSetOp), uint16(x86_JO),
+ /*5158*/ uint16(x86_xReadCd),
+ /*5159*/ uint16(x86_xArgRel32),
+ /*5160*/ uint16(x86_xMatch),
+ /*5161*/ uint16(x86_xCondIs64), 5164, 5178,
+ /*5164*/ uint16(x86_xCondDataSize), 5168, 5173, 0,
+ /*5168*/ uint16(x86_xSetOp), uint16(x86_JNO),
+ /*5170*/ uint16(x86_xReadCw),
+ /*5171*/ uint16(x86_xArgRel16),
+ /*5172*/ uint16(x86_xMatch),
+ /*5173*/ uint16(x86_xSetOp), uint16(x86_JNO),
+ /*5175*/ uint16(x86_xReadCd),
+ /*5176*/ uint16(x86_xArgRel32),
+ /*5177*/ uint16(x86_xMatch),
+ /*5178*/ uint16(x86_xCondDataSize), 5182, 5173, 5187,
+ /*5182*/ uint16(x86_xSetOp), uint16(x86_JNO),
+ /*5184*/ uint16(x86_xReadCd),
+ /*5185*/ uint16(x86_xArgRel32),
+ /*5186*/ uint16(x86_xMatch),
+ /*5187*/ uint16(x86_xSetOp), uint16(x86_JNO),
+ /*5189*/ uint16(x86_xReadCd),
+ /*5190*/ uint16(x86_xArgRel32),
+ /*5191*/ uint16(x86_xMatch),
+ /*5192*/ uint16(x86_xCondIs64), 5195, 5209,
+ /*5195*/ uint16(x86_xCondDataSize), 5199, 5204, 0,
+ /*5199*/ uint16(x86_xSetOp), uint16(x86_JB),
+ /*5201*/ uint16(x86_xReadCw),
+ /*5202*/ uint16(x86_xArgRel16),
+ /*5203*/ uint16(x86_xMatch),
+ /*5204*/ uint16(x86_xSetOp), uint16(x86_JB),
+ /*5206*/ uint16(x86_xReadCd),
+ /*5207*/ uint16(x86_xArgRel32),
+ /*5208*/ uint16(x86_xMatch),
+ /*5209*/ uint16(x86_xCondDataSize), 5213, 5204, 5218,
+ /*5213*/ uint16(x86_xSetOp), uint16(x86_JB),
+ /*5215*/ uint16(x86_xReadCd),
+ /*5216*/ uint16(x86_xArgRel32),
+ /*5217*/ uint16(x86_xMatch),
+ /*5218*/ uint16(x86_xSetOp), uint16(x86_JB),
+ /*5220*/ uint16(x86_xReadCd),
+ /*5221*/ uint16(x86_xArgRel32),
+ /*5222*/ uint16(x86_xMatch),
+ /*5223*/ uint16(x86_xCondIs64), 5226, 5240,
+ /*5226*/ uint16(x86_xCondDataSize), 5230, 5235, 0,
+ /*5230*/ uint16(x86_xSetOp), uint16(x86_JAE),
+ /*5232*/ uint16(x86_xReadCw),
+ /*5233*/ uint16(x86_xArgRel16),
+ /*5234*/ uint16(x86_xMatch),
+ /*5235*/ uint16(x86_xSetOp), uint16(x86_JAE),
+ /*5237*/ uint16(x86_xReadCd),
+ /*5238*/ uint16(x86_xArgRel32),
+ /*5239*/ uint16(x86_xMatch),
+ /*5240*/ uint16(x86_xCondDataSize), 5244, 5235, 5249,
+ /*5244*/ uint16(x86_xSetOp), uint16(x86_JAE),
+ /*5246*/ uint16(x86_xReadCd),
+ /*5247*/ uint16(x86_xArgRel32),
+ /*5248*/ uint16(x86_xMatch),
+ /*5249*/ uint16(x86_xSetOp), uint16(x86_JAE),
+ /*5251*/ uint16(x86_xReadCd),
+ /*5252*/ uint16(x86_xArgRel32),
+ /*5253*/ uint16(x86_xMatch),
+ /*5254*/ uint16(x86_xCondIs64), 5257, 5271,
+ /*5257*/ uint16(x86_xCondDataSize), 5261, 5266, 0,
+ /*5261*/ uint16(x86_xSetOp), uint16(x86_JE),
+ /*5263*/ uint16(x86_xReadCw),
+ /*5264*/ uint16(x86_xArgRel16),
+ /*5265*/ uint16(x86_xMatch),
+ /*5266*/ uint16(x86_xSetOp), uint16(x86_JE),
+ /*5268*/ uint16(x86_xReadCd),
+ /*5269*/ uint16(x86_xArgRel32),
+ /*5270*/ uint16(x86_xMatch),
+ /*5271*/ uint16(x86_xCondDataSize), 5275, 5266, 5280,
+ /*5275*/ uint16(x86_xSetOp), uint16(x86_JE),
+ /*5277*/ uint16(x86_xReadCd),
+ /*5278*/ uint16(x86_xArgRel32),
+ /*5279*/ uint16(x86_xMatch),
+ /*5280*/ uint16(x86_xSetOp), uint16(x86_JE),
+ /*5282*/ uint16(x86_xReadCd),
+ /*5283*/ uint16(x86_xArgRel32),
+ /*5284*/ uint16(x86_xMatch),
+ /*5285*/ uint16(x86_xCondIs64), 5288, 5302,
+ /*5288*/ uint16(x86_xCondDataSize), 5292, 5297, 0,
+ /*5292*/ uint16(x86_xSetOp), uint16(x86_JNE),
+ /*5294*/ uint16(x86_xReadCw),
+ /*5295*/ uint16(x86_xArgRel16),
+ /*5296*/ uint16(x86_xMatch),
+ /*5297*/ uint16(x86_xSetOp), uint16(x86_JNE),
+ /*5299*/ uint16(x86_xReadCd),
+ /*5300*/ uint16(x86_xArgRel32),
+ /*5301*/ uint16(x86_xMatch),
+ /*5302*/ uint16(x86_xCondDataSize), 5306, 5297, 5311,
+ /*5306*/ uint16(x86_xSetOp), uint16(x86_JNE),
+ /*5308*/ uint16(x86_xReadCd),
+ /*5309*/ uint16(x86_xArgRel32),
+ /*5310*/ uint16(x86_xMatch),
+ /*5311*/ uint16(x86_xSetOp), uint16(x86_JNE),
+ /*5313*/ uint16(x86_xReadCd),
+ /*5314*/ uint16(x86_xArgRel32),
+ /*5315*/ uint16(x86_xMatch),
+ /*5316*/ uint16(x86_xCondIs64), 5319, 5333,
+ /*5319*/ uint16(x86_xCondDataSize), 5323, 5328, 0,
+ /*5323*/ uint16(x86_xSetOp), uint16(x86_JBE),
+ /*5325*/ uint16(x86_xReadCw),
+ /*5326*/ uint16(x86_xArgRel16),
+ /*5327*/ uint16(x86_xMatch),
+ /*5328*/ uint16(x86_xSetOp), uint16(x86_JBE),
+ /*5330*/ uint16(x86_xReadCd),
+ /*5331*/ uint16(x86_xArgRel32),
+ /*5332*/ uint16(x86_xMatch),
+ /*5333*/ uint16(x86_xCondDataSize), 5337, 5328, 5342,
+ /*5337*/ uint16(x86_xSetOp), uint16(x86_JBE),
+ /*5339*/ uint16(x86_xReadCd),
+ /*5340*/ uint16(x86_xArgRel32),
+ /*5341*/ uint16(x86_xMatch),
+ /*5342*/ uint16(x86_xSetOp), uint16(x86_JBE),
+ /*5344*/ uint16(x86_xReadCd),
+ /*5345*/ uint16(x86_xArgRel32),
+ /*5346*/ uint16(x86_xMatch),
+ /*5347*/ uint16(x86_xCondIs64), 5350, 5364,
+ /*5350*/ uint16(x86_xCondDataSize), 5354, 5359, 0,
+ /*5354*/ uint16(x86_xSetOp), uint16(x86_JA),
+ /*5356*/ uint16(x86_xReadCw),
+ /*5357*/ uint16(x86_xArgRel16),
+ /*5358*/ uint16(x86_xMatch),
+ /*5359*/ uint16(x86_xSetOp), uint16(x86_JA),
+ /*5361*/ uint16(x86_xReadCd),
+ /*5362*/ uint16(x86_xArgRel32),
+ /*5363*/ uint16(x86_xMatch),
+ /*5364*/ uint16(x86_xCondDataSize), 5368, 5359, 5373,
+ /*5368*/ uint16(x86_xSetOp), uint16(x86_JA),
+ /*5370*/ uint16(x86_xReadCd),
+ /*5371*/ uint16(x86_xArgRel32),
+ /*5372*/ uint16(x86_xMatch),
+ /*5373*/ uint16(x86_xSetOp), uint16(x86_JA),
+ /*5375*/ uint16(x86_xReadCd),
+ /*5376*/ uint16(x86_xArgRel32),
+ /*5377*/ uint16(x86_xMatch),
+ /*5378*/ uint16(x86_xCondIs64), 5381, 5395,
+ /*5381*/ uint16(x86_xCondDataSize), 5385, 5390, 0,
+ /*5385*/ uint16(x86_xSetOp), uint16(x86_JS),
+ /*5387*/ uint16(x86_xReadCw),
+ /*5388*/ uint16(x86_xArgRel16),
+ /*5389*/ uint16(x86_xMatch),
+ /*5390*/ uint16(x86_xSetOp), uint16(x86_JS),
+ /*5392*/ uint16(x86_xReadCd),
+ /*5393*/ uint16(x86_xArgRel32),
+ /*5394*/ uint16(x86_xMatch),
+ /*5395*/ uint16(x86_xCondDataSize), 5399, 5390, 5404,
+ /*5399*/ uint16(x86_xSetOp), uint16(x86_JS),
+ /*5401*/ uint16(x86_xReadCd),
+ /*5402*/ uint16(x86_xArgRel32),
+ /*5403*/ uint16(x86_xMatch),
+ /*5404*/ uint16(x86_xSetOp), uint16(x86_JS),
+ /*5406*/ uint16(x86_xReadCd),
+ /*5407*/ uint16(x86_xArgRel32),
+ /*5408*/ uint16(x86_xMatch),
+ /*5409*/ uint16(x86_xCondIs64), 5412, 5426,
+ /*5412*/ uint16(x86_xCondDataSize), 5416, 5421, 0,
+ /*5416*/ uint16(x86_xSetOp), uint16(x86_JNS),
+ /*5418*/ uint16(x86_xReadCw),
+ /*5419*/ uint16(x86_xArgRel16),
+ /*5420*/ uint16(x86_xMatch),
+ /*5421*/ uint16(x86_xSetOp), uint16(x86_JNS),
+ /*5423*/ uint16(x86_xReadCd),
+ /*5424*/ uint16(x86_xArgRel32),
+ /*5425*/ uint16(x86_xMatch),
+ /*5426*/ uint16(x86_xCondDataSize), 5430, 5421, 5435,
+ /*5430*/ uint16(x86_xSetOp), uint16(x86_JNS),
+ /*5432*/ uint16(x86_xReadCd),
+ /*5433*/ uint16(x86_xArgRel32),
+ /*5434*/ uint16(x86_xMatch),
+ /*5435*/ uint16(x86_xSetOp), uint16(x86_JNS),
+ /*5437*/ uint16(x86_xReadCd),
+ /*5438*/ uint16(x86_xArgRel32),
+ /*5439*/ uint16(x86_xMatch),
+ /*5440*/ uint16(x86_xCondIs64), 5443, 5457,
+ /*5443*/ uint16(x86_xCondDataSize), 5447, 5452, 0,
+ /*5447*/ uint16(x86_xSetOp), uint16(x86_JP),
+ /*5449*/ uint16(x86_xReadCw),
+ /*5450*/ uint16(x86_xArgRel16),
+ /*5451*/ uint16(x86_xMatch),
+ /*5452*/ uint16(x86_xSetOp), uint16(x86_JP),
+ /*5454*/ uint16(x86_xReadCd),
+ /*5455*/ uint16(x86_xArgRel32),
+ /*5456*/ uint16(x86_xMatch),
+ /*5457*/ uint16(x86_xCondDataSize), 5461, 5452, 5466,
+ /*5461*/ uint16(x86_xSetOp), uint16(x86_JP),
+ /*5463*/ uint16(x86_xReadCd),
+ /*5464*/ uint16(x86_xArgRel32),
+ /*5465*/ uint16(x86_xMatch),
+ /*5466*/ uint16(x86_xSetOp), uint16(x86_JP),
+ /*5468*/ uint16(x86_xReadCd),
+ /*5469*/ uint16(x86_xArgRel32),
+ /*5470*/ uint16(x86_xMatch),
+ /*5471*/ uint16(x86_xCondIs64), 5474, 5488,
+ /*5474*/ uint16(x86_xCondDataSize), 5478, 5483, 0,
+ /*5478*/ uint16(x86_xSetOp), uint16(x86_JNP),
+ /*5480*/ uint16(x86_xReadCw),
+ /*5481*/ uint16(x86_xArgRel16),
+ /*5482*/ uint16(x86_xMatch),
+ /*5483*/ uint16(x86_xSetOp), uint16(x86_JNP),
+ /*5485*/ uint16(x86_xReadCd),
+ /*5486*/ uint16(x86_xArgRel32),
+ /*5487*/ uint16(x86_xMatch),
+ /*5488*/ uint16(x86_xCondDataSize), 5492, 5483, 5497,
+ /*5492*/ uint16(x86_xSetOp), uint16(x86_JNP),
+ /*5494*/ uint16(x86_xReadCd),
+ /*5495*/ uint16(x86_xArgRel32),
+ /*5496*/ uint16(x86_xMatch),
+ /*5497*/ uint16(x86_xSetOp), uint16(x86_JNP),
+ /*5499*/ uint16(x86_xReadCd),
+ /*5500*/ uint16(x86_xArgRel32),
+ /*5501*/ uint16(x86_xMatch),
+ /*5502*/ uint16(x86_xCondIs64), 5505, 5519,
+ /*5505*/ uint16(x86_xCondDataSize), 5509, 5514, 0,
+ /*5509*/ uint16(x86_xSetOp), uint16(x86_JL),
+ /*5511*/ uint16(x86_xReadCw),
+ /*5512*/ uint16(x86_xArgRel16),
+ /*5513*/ uint16(x86_xMatch),
+ /*5514*/ uint16(x86_xSetOp), uint16(x86_JL),
+ /*5516*/ uint16(x86_xReadCd),
+ /*5517*/ uint16(x86_xArgRel32),
+ /*5518*/ uint16(x86_xMatch),
+ /*5519*/ uint16(x86_xCondDataSize), 5523, 5514, 5528,
+ /*5523*/ uint16(x86_xSetOp), uint16(x86_JL),
+ /*5525*/ uint16(x86_xReadCd),
+ /*5526*/ uint16(x86_xArgRel32),
+ /*5527*/ uint16(x86_xMatch),
+ /*5528*/ uint16(x86_xSetOp), uint16(x86_JL),
+ /*5530*/ uint16(x86_xReadCd),
+ /*5531*/ uint16(x86_xArgRel32),
+ /*5532*/ uint16(x86_xMatch),
+ /*5533*/ uint16(x86_xCondIs64), 5536, 5550,
+ /*5536*/ uint16(x86_xCondDataSize), 5540, 5545, 0,
+ /*5540*/ uint16(x86_xSetOp), uint16(x86_JGE),
+ /*5542*/ uint16(x86_xReadCw),
+ /*5543*/ uint16(x86_xArgRel16),
+ /*5544*/ uint16(x86_xMatch),
+ /*5545*/ uint16(x86_xSetOp), uint16(x86_JGE),
+ /*5547*/ uint16(x86_xReadCd),
+ /*5548*/ uint16(x86_xArgRel32),
+ /*5549*/ uint16(x86_xMatch),
+ /*5550*/ uint16(x86_xCondDataSize), 5554, 5545, 5559,
+ /*5554*/ uint16(x86_xSetOp), uint16(x86_JGE),
+ /*5556*/ uint16(x86_xReadCd),
+ /*5557*/ uint16(x86_xArgRel32),
+ /*5558*/ uint16(x86_xMatch),
+ /*5559*/ uint16(x86_xSetOp), uint16(x86_JGE),
+ /*5561*/ uint16(x86_xReadCd),
+ /*5562*/ uint16(x86_xArgRel32),
+ /*5563*/ uint16(x86_xMatch),
+ /*5564*/ uint16(x86_xCondIs64), 5567, 5581,
+ /*5567*/ uint16(x86_xCondDataSize), 5571, 5576, 0,
+ /*5571*/ uint16(x86_xSetOp), uint16(x86_JLE),
+ /*5573*/ uint16(x86_xReadCw),
+ /*5574*/ uint16(x86_xArgRel16),
+ /*5575*/ uint16(x86_xMatch),
+ /*5576*/ uint16(x86_xSetOp), uint16(x86_JLE),
+ /*5578*/ uint16(x86_xReadCd),
+ /*5579*/ uint16(x86_xArgRel32),
+ /*5580*/ uint16(x86_xMatch),
+ /*5581*/ uint16(x86_xCondDataSize), 5585, 5576, 5590,
+ /*5585*/ uint16(x86_xSetOp), uint16(x86_JLE),
+ /*5587*/ uint16(x86_xReadCd),
+ /*5588*/ uint16(x86_xArgRel32),
+ /*5589*/ uint16(x86_xMatch),
+ /*5590*/ uint16(x86_xSetOp), uint16(x86_JLE),
+ /*5592*/ uint16(x86_xReadCd),
+ /*5593*/ uint16(x86_xArgRel32),
+ /*5594*/ uint16(x86_xMatch),
+ /*5595*/ uint16(x86_xCondIs64), 5598, 5612,
+ /*5598*/ uint16(x86_xCondDataSize), 5602, 5607, 0,
+ /*5602*/ uint16(x86_xSetOp), uint16(x86_JG),
+ /*5604*/ uint16(x86_xReadCw),
+ /*5605*/ uint16(x86_xArgRel16),
+ /*5606*/ uint16(x86_xMatch),
+ /*5607*/ uint16(x86_xSetOp), uint16(x86_JG),
+ /*5609*/ uint16(x86_xReadCd),
+ /*5610*/ uint16(x86_xArgRel32),
+ /*5611*/ uint16(x86_xMatch),
+ /*5612*/ uint16(x86_xCondDataSize), 5616, 5607, 5621,
+ /*5616*/ uint16(x86_xSetOp), uint16(x86_JG),
+ /*5618*/ uint16(x86_xReadCd),
+ /*5619*/ uint16(x86_xArgRel32),
+ /*5620*/ uint16(x86_xMatch),
+ /*5621*/ uint16(x86_xSetOp), uint16(x86_JG),
+ /*5623*/ uint16(x86_xReadCd),
+ /*5624*/ uint16(x86_xArgRel32),
+ /*5625*/ uint16(x86_xMatch),
+ /*5626*/ uint16(x86_xSetOp), uint16(x86_SETO),
+ /*5628*/ uint16(x86_xReadSlashR),
+ /*5629*/ uint16(x86_xArgRM8),
+ /*5630*/ uint16(x86_xMatch),
+ /*5631*/ uint16(x86_xSetOp), uint16(x86_SETNO),
+ /*5633*/ uint16(x86_xReadSlashR),
+ /*5634*/ uint16(x86_xArgRM8),
+ /*5635*/ uint16(x86_xMatch),
+ /*5636*/ uint16(x86_xSetOp), uint16(x86_SETB),
+ /*5638*/ uint16(x86_xReadSlashR),
+ /*5639*/ uint16(x86_xArgRM8),
+ /*5640*/ uint16(x86_xMatch),
+ /*5641*/ uint16(x86_xSetOp), uint16(x86_SETAE),
+ /*5643*/ uint16(x86_xReadSlashR),
+ /*5644*/ uint16(x86_xArgRM8),
+ /*5645*/ uint16(x86_xMatch),
+ /*5646*/ uint16(x86_xSetOp), uint16(x86_SETE),
+ /*5648*/ uint16(x86_xReadSlashR),
+ /*5649*/ uint16(x86_xArgRM8),
+ /*5650*/ uint16(x86_xMatch),
+ /*5651*/ uint16(x86_xSetOp), uint16(x86_SETNE),
+ /*5653*/ uint16(x86_xReadSlashR),
+ /*5654*/ uint16(x86_xArgRM8),
+ /*5655*/ uint16(x86_xMatch),
+ /*5656*/ uint16(x86_xSetOp), uint16(x86_SETBE),
+ /*5658*/ uint16(x86_xReadSlashR),
+ /*5659*/ uint16(x86_xArgRM8),
+ /*5660*/ uint16(x86_xMatch),
+ /*5661*/ uint16(x86_xSetOp), uint16(x86_SETA),
+ /*5663*/ uint16(x86_xReadSlashR),
+ /*5664*/ uint16(x86_xArgRM8),
+ /*5665*/ uint16(x86_xMatch),
+ /*5666*/ uint16(x86_xSetOp), uint16(x86_SETS),
+ /*5668*/ uint16(x86_xReadSlashR),
+ /*5669*/ uint16(x86_xArgRM8),
+ /*5670*/ uint16(x86_xMatch),
+ /*5671*/ uint16(x86_xSetOp), uint16(x86_SETNS),
+ /*5673*/ uint16(x86_xReadSlashR),
+ /*5674*/ uint16(x86_xArgRM8),
+ /*5675*/ uint16(x86_xMatch),
+ /*5676*/ uint16(x86_xSetOp), uint16(x86_SETP),
+ /*5678*/ uint16(x86_xReadSlashR),
+ /*5679*/ uint16(x86_xArgRM8),
+ /*5680*/ uint16(x86_xMatch),
+ /*5681*/ uint16(x86_xSetOp), uint16(x86_SETNP),
+ /*5683*/ uint16(x86_xReadSlashR),
+ /*5684*/ uint16(x86_xArgRM8),
+ /*5685*/ uint16(x86_xMatch),
+ /*5686*/ uint16(x86_xSetOp), uint16(x86_SETL),
+ /*5688*/ uint16(x86_xReadSlashR),
+ /*5689*/ uint16(x86_xArgRM8),
+ /*5690*/ uint16(x86_xMatch),
+ /*5691*/ uint16(x86_xSetOp), uint16(x86_SETGE),
+ /*5693*/ uint16(x86_xReadSlashR),
+ /*5694*/ uint16(x86_xArgRM8),
+ /*5695*/ uint16(x86_xMatch),
+ /*5696*/ uint16(x86_xSetOp), uint16(x86_SETLE),
+ /*5698*/ uint16(x86_xReadSlashR),
+ /*5699*/ uint16(x86_xArgRM8),
+ /*5700*/ uint16(x86_xMatch),
+ /*5701*/ uint16(x86_xSetOp), uint16(x86_SETG),
+ /*5703*/ uint16(x86_xReadSlashR),
+ /*5704*/ uint16(x86_xArgRM8),
+ /*5705*/ uint16(x86_xMatch),
+ /*5706*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*5708*/ uint16(x86_xArgFS),
+ /*5709*/ uint16(x86_xMatch),
+ /*5710*/ uint16(x86_xCondIs64), 5713, 5725,
+ /*5713*/ uint16(x86_xCondDataSize), 5717, 5721, 0,
+ /*5717*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5719*/ uint16(x86_xArgFS),
+ /*5720*/ uint16(x86_xMatch),
+ /*5721*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5723*/ uint16(x86_xArgFS),
+ /*5724*/ uint16(x86_xMatch),
+ /*5725*/ uint16(x86_xCondDataSize), 5717, 5729, 5733,
+ /*5729*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5731*/ uint16(x86_xArgFS),
+ /*5732*/ uint16(x86_xMatch),
+ /*5733*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5735*/ uint16(x86_xArgFS),
+ /*5736*/ uint16(x86_xMatch),
+ /*5737*/ uint16(x86_xSetOp), uint16(x86_CPUID),
+ /*5739*/ uint16(x86_xMatch),
+ /*5740*/ uint16(x86_xCondIs64), 5743, 5759,
+ /*5743*/ uint16(x86_xCondDataSize), 5747, 5753, 0,
+ /*5747*/ uint16(x86_xSetOp), uint16(x86_BT),
+ /*5749*/ uint16(x86_xReadSlashR),
+ /*5750*/ uint16(x86_xArgRM16),
+ /*5751*/ uint16(x86_xArgR16),
+ /*5752*/ uint16(x86_xMatch),
+ /*5753*/ uint16(x86_xSetOp), uint16(x86_BT),
+ /*5755*/ uint16(x86_xReadSlashR),
+ /*5756*/ uint16(x86_xArgRM32),
+ /*5757*/ uint16(x86_xArgR32),
+ /*5758*/ uint16(x86_xMatch),
+ /*5759*/ uint16(x86_xCondDataSize), 5747, 5753, 5763,
+ /*5763*/ uint16(x86_xSetOp), uint16(x86_BT),
+ /*5765*/ uint16(x86_xReadSlashR),
+ /*5766*/ uint16(x86_xArgRM64),
+ /*5767*/ uint16(x86_xArgR64),
+ /*5768*/ uint16(x86_xMatch),
+ /*5769*/ uint16(x86_xCondIs64), 5772, 5792,
+ /*5772*/ uint16(x86_xCondDataSize), 5776, 5784, 0,
+ /*5776*/ uint16(x86_xSetOp), uint16(x86_SHLD),
+ /*5778*/ uint16(x86_xReadSlashR),
+ /*5779*/ uint16(x86_xReadIb),
+ /*5780*/ uint16(x86_xArgRM16),
+ /*5781*/ uint16(x86_xArgR16),
+ /*5782*/ uint16(x86_xArgImm8u),
+ /*5783*/ uint16(x86_xMatch),
+ /*5784*/ uint16(x86_xSetOp), uint16(x86_SHLD),
+ /*5786*/ uint16(x86_xReadSlashR),
+ /*5787*/ uint16(x86_xReadIb),
+ /*5788*/ uint16(x86_xArgRM32),
+ /*5789*/ uint16(x86_xArgR32),
+ /*5790*/ uint16(x86_xArgImm8u),
+ /*5791*/ uint16(x86_xMatch),
+ /*5792*/ uint16(x86_xCondDataSize), 5776, 5784, 5796,
+ /*5796*/ uint16(x86_xSetOp), uint16(x86_SHLD),
+ /*5798*/ uint16(x86_xReadSlashR),
+ /*5799*/ uint16(x86_xReadIb),
+ /*5800*/ uint16(x86_xArgRM64),
+ /*5801*/ uint16(x86_xArgR64),
+ /*5802*/ uint16(x86_xArgImm8u),
+ /*5803*/ uint16(x86_xMatch),
+ /*5804*/ uint16(x86_xCondIs64), 5807, 5825,
+ /*5807*/ uint16(x86_xCondDataSize), 5811, 5818, 0,
+ /*5811*/ uint16(x86_xSetOp), uint16(x86_SHLD),
+ /*5813*/ uint16(x86_xReadSlashR),
+ /*5814*/ uint16(x86_xArgRM16),
+ /*5815*/ uint16(x86_xArgR16),
+ /*5816*/ uint16(x86_xArgCL),
+ /*5817*/ uint16(x86_xMatch),
+ /*5818*/ uint16(x86_xSetOp), uint16(x86_SHLD),
+ /*5820*/ uint16(x86_xReadSlashR),
+ /*5821*/ uint16(x86_xArgRM32),
+ /*5822*/ uint16(x86_xArgR32),
+ /*5823*/ uint16(x86_xArgCL),
+ /*5824*/ uint16(x86_xMatch),
+ /*5825*/ uint16(x86_xCondDataSize), 5811, 5818, 5829,
+ /*5829*/ uint16(x86_xSetOp), uint16(x86_SHLD),
+ /*5831*/ uint16(x86_xReadSlashR),
+ /*5832*/ uint16(x86_xArgRM64),
+ /*5833*/ uint16(x86_xArgR64),
+ /*5834*/ uint16(x86_xArgCL),
+ /*5835*/ uint16(x86_xMatch),
+ /*5836*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*5838*/ uint16(x86_xArgGS),
+ /*5839*/ uint16(x86_xMatch),
+ /*5840*/ uint16(x86_xCondIs64), 5843, 5855,
+ /*5843*/ uint16(x86_xCondDataSize), 5847, 5851, 0,
+ /*5847*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5849*/ uint16(x86_xArgGS),
+ /*5850*/ uint16(x86_xMatch),
+ /*5851*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5853*/ uint16(x86_xArgGS),
+ /*5854*/ uint16(x86_xMatch),
+ /*5855*/ uint16(x86_xCondDataSize), 5847, 5859, 5863,
+ /*5859*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5861*/ uint16(x86_xArgGS),
+ /*5862*/ uint16(x86_xMatch),
+ /*5863*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*5865*/ uint16(x86_xArgGS),
+ /*5866*/ uint16(x86_xMatch),
+ /*5867*/ uint16(x86_xSetOp), uint16(x86_RSM),
+ /*5869*/ uint16(x86_xMatch),
+ /*5870*/ uint16(x86_xCondIs64), 5873, 5889,
+ /*5873*/ uint16(x86_xCondDataSize), 5877, 5883, 0,
+ /*5877*/ uint16(x86_xSetOp), uint16(x86_BTS),
+ /*5879*/ uint16(x86_xReadSlashR),
+ /*5880*/ uint16(x86_xArgRM16),
+ /*5881*/ uint16(x86_xArgR16),
+ /*5882*/ uint16(x86_xMatch),
+ /*5883*/ uint16(x86_xSetOp), uint16(x86_BTS),
+ /*5885*/ uint16(x86_xReadSlashR),
+ /*5886*/ uint16(x86_xArgRM32),
+ /*5887*/ uint16(x86_xArgR32),
+ /*5888*/ uint16(x86_xMatch),
+ /*5889*/ uint16(x86_xCondDataSize), 5877, 5883, 5893,
+ /*5893*/ uint16(x86_xSetOp), uint16(x86_BTS),
+ /*5895*/ uint16(x86_xReadSlashR),
+ /*5896*/ uint16(x86_xArgRM64),
+ /*5897*/ uint16(x86_xArgR64),
+ /*5898*/ uint16(x86_xMatch),
+ /*5899*/ uint16(x86_xCondIs64), 5902, 5922,
+ /*5902*/ uint16(x86_xCondDataSize), 5906, 5914, 0,
+ /*5906*/ uint16(x86_xSetOp), uint16(x86_SHRD),
+ /*5908*/ uint16(x86_xReadSlashR),
+ /*5909*/ uint16(x86_xReadIb),
+ /*5910*/ uint16(x86_xArgRM16),
+ /*5911*/ uint16(x86_xArgR16),
+ /*5912*/ uint16(x86_xArgImm8u),
+ /*5913*/ uint16(x86_xMatch),
+ /*5914*/ uint16(x86_xSetOp), uint16(x86_SHRD),
+ /*5916*/ uint16(x86_xReadSlashR),
+ /*5917*/ uint16(x86_xReadIb),
+ /*5918*/ uint16(x86_xArgRM32),
+ /*5919*/ uint16(x86_xArgR32),
+ /*5920*/ uint16(x86_xArgImm8u),
+ /*5921*/ uint16(x86_xMatch),
+ /*5922*/ uint16(x86_xCondDataSize), 5906, 5914, 5926,
+ /*5926*/ uint16(x86_xSetOp), uint16(x86_SHRD),
+ /*5928*/ uint16(x86_xReadSlashR),
+ /*5929*/ uint16(x86_xReadIb),
+ /*5930*/ uint16(x86_xArgRM64),
+ /*5931*/ uint16(x86_xArgR64),
+ /*5932*/ uint16(x86_xArgImm8u),
+ /*5933*/ uint16(x86_xMatch),
+ /*5934*/ uint16(x86_xCondIs64), 5937, 5955,
+ /*5937*/ uint16(x86_xCondDataSize), 5941, 5948, 0,
+ /*5941*/ uint16(x86_xSetOp), uint16(x86_SHRD),
+ /*5943*/ uint16(x86_xReadSlashR),
+ /*5944*/ uint16(x86_xArgRM16),
+ /*5945*/ uint16(x86_xArgR16),
+ /*5946*/ uint16(x86_xArgCL),
+ /*5947*/ uint16(x86_xMatch),
+ /*5948*/ uint16(x86_xSetOp), uint16(x86_SHRD),
+ /*5950*/ uint16(x86_xReadSlashR),
+ /*5951*/ uint16(x86_xArgRM32),
+ /*5952*/ uint16(x86_xArgR32),
+ /*5953*/ uint16(x86_xArgCL),
+ /*5954*/ uint16(x86_xMatch),
+ /*5955*/ uint16(x86_xCondDataSize), 5941, 5948, 5959,
+ /*5959*/ uint16(x86_xSetOp), uint16(x86_SHRD),
+ /*5961*/ uint16(x86_xReadSlashR),
+ /*5962*/ uint16(x86_xArgRM64),
+ /*5963*/ uint16(x86_xArgR64),
+ /*5964*/ uint16(x86_xArgCL),
+ /*5965*/ uint16(x86_xMatch),
+ /*5966*/ uint16(x86_xCondByte), 3,
+ 0xE8, 6215,
+ 0xF0, 6218,
+ 0xF8, 6221,
+ /*5974*/ uint16(x86_xCondSlashR),
+ 5983, // 0
+ 6037, // 1
+ 6091, // 2
+ 6120, // 3
+ 6149, // 4
+ 6172, // 5
+ 6195, // 6
+ 6211, // 7
+ /*5983*/ uint16(x86_xCondIs64), 5986, 5998,
+ /*5986*/ uint16(x86_xCondDataSize), 5990, 5994, 0,
+ /*5990*/ uint16(x86_xSetOp), uint16(x86_FXSAVE),
+ /*5992*/ uint16(x86_xArgM512byte),
+ /*5993*/ uint16(x86_xMatch),
+ /*5994*/ uint16(x86_xSetOp), uint16(x86_FXSAVE),
+ /*5996*/ uint16(x86_xArgM512byte),
+ /*5997*/ uint16(x86_xMatch),
+ /*5998*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6012,
+ 0x0, 6004,
+ /*6004*/ uint16(x86_xCondDataSize), 5990, 5994, 6008,
+ /*6008*/ uint16(x86_xSetOp), uint16(x86_FXSAVE64),
+ /*6010*/ uint16(x86_xArgM512byte),
+ /*6011*/ uint16(x86_xMatch),
+ /*6012*/ uint16(x86_xCondDataSize), 6016, 6023, 6030,
+ /*6016*/ uint16(x86_xCondIsMem), 6019, 0,
+ /*6019*/ uint16(x86_xSetOp), uint16(x86_RDFSBASE),
+ /*6021*/ uint16(x86_xArgRM32),
+ /*6022*/ uint16(x86_xMatch),
+ /*6023*/ uint16(x86_xCondIsMem), 6026, 0,
+ /*6026*/ uint16(x86_xSetOp), uint16(x86_RDFSBASE),
+ /*6028*/ uint16(x86_xArgRM32),
+ /*6029*/ uint16(x86_xMatch),
+ /*6030*/ uint16(x86_xCondIsMem), 6033, 0,
+ /*6033*/ uint16(x86_xSetOp), uint16(x86_RDFSBASE),
+ /*6035*/ uint16(x86_xArgRM64),
+ /*6036*/ uint16(x86_xMatch),
+ /*6037*/ uint16(x86_xCondIs64), 6040, 6052,
+ /*6040*/ uint16(x86_xCondDataSize), 6044, 6048, 0,
+ /*6044*/ uint16(x86_xSetOp), uint16(x86_FXRSTOR),
+ /*6046*/ uint16(x86_xArgM512byte),
+ /*6047*/ uint16(x86_xMatch),
+ /*6048*/ uint16(x86_xSetOp), uint16(x86_FXRSTOR),
+ /*6050*/ uint16(x86_xArgM512byte),
+ /*6051*/ uint16(x86_xMatch),
+ /*6052*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6066,
+ 0x0, 6058,
+ /*6058*/ uint16(x86_xCondDataSize), 6044, 6048, 6062,
+ /*6062*/ uint16(x86_xSetOp), uint16(x86_FXRSTOR64),
+ /*6064*/ uint16(x86_xArgM512byte),
+ /*6065*/ uint16(x86_xMatch),
+ /*6066*/ uint16(x86_xCondDataSize), 6070, 6077, 6084,
+ /*6070*/ uint16(x86_xCondIsMem), 6073, 0,
+ /*6073*/ uint16(x86_xSetOp), uint16(x86_RDGSBASE),
+ /*6075*/ uint16(x86_xArgRM32),
+ /*6076*/ uint16(x86_xMatch),
+ /*6077*/ uint16(x86_xCondIsMem), 6080, 0,
+ /*6080*/ uint16(x86_xSetOp), uint16(x86_RDGSBASE),
+ /*6082*/ uint16(x86_xArgRM32),
+ /*6083*/ uint16(x86_xMatch),
+ /*6084*/ uint16(x86_xCondIsMem), 6087, 0,
+ /*6087*/ uint16(x86_xSetOp), uint16(x86_RDGSBASE),
+ /*6089*/ uint16(x86_xArgRM64),
+ /*6090*/ uint16(x86_xMatch),
+ /*6091*/ uint16(x86_xCondIs64), 6094, 6098,
+ /*6094*/ uint16(x86_xSetOp), uint16(x86_LDMXCSR),
+ /*6096*/ uint16(x86_xArgM32),
+ /*6097*/ uint16(x86_xMatch),
+ /*6098*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6104,
+ 0x0, 6094,
+ /*6104*/ uint16(x86_xCondDataSize), 6108, 6112, 6116,
+ /*6108*/ uint16(x86_xSetOp), uint16(x86_WRFSBASE),
+ /*6110*/ uint16(x86_xArgRM32),
+ /*6111*/ uint16(x86_xMatch),
+ /*6112*/ uint16(x86_xSetOp), uint16(x86_WRFSBASE),
+ /*6114*/ uint16(x86_xArgRM32),
+ /*6115*/ uint16(x86_xMatch),
+ /*6116*/ uint16(x86_xSetOp), uint16(x86_WRFSBASE),
+ /*6118*/ uint16(x86_xArgRM64),
+ /*6119*/ uint16(x86_xMatch),
+ /*6120*/ uint16(x86_xCondIs64), 6123, 6127,
+ /*6123*/ uint16(x86_xSetOp), uint16(x86_STMXCSR),
+ /*6125*/ uint16(x86_xArgM32),
+ /*6126*/ uint16(x86_xMatch),
+ /*6127*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6133,
+ 0x0, 6123,
+ /*6133*/ uint16(x86_xCondDataSize), 6137, 6141, 6145,
+ /*6137*/ uint16(x86_xSetOp), uint16(x86_WRGSBASE),
+ /*6139*/ uint16(x86_xArgRM32),
+ /*6140*/ uint16(x86_xMatch),
+ /*6141*/ uint16(x86_xSetOp), uint16(x86_WRGSBASE),
+ /*6143*/ uint16(x86_xArgRM32),
+ /*6144*/ uint16(x86_xMatch),
+ /*6145*/ uint16(x86_xSetOp), uint16(x86_WRGSBASE),
+ /*6147*/ uint16(x86_xArgRM64),
+ /*6148*/ uint16(x86_xMatch),
+ /*6149*/ uint16(x86_xCondIs64), 6152, 6164,
+ /*6152*/ uint16(x86_xCondDataSize), 6156, 6160, 0,
+ /*6156*/ uint16(x86_xSetOp), uint16(x86_XSAVE),
+ /*6158*/ uint16(x86_xArgMem),
+ /*6159*/ uint16(x86_xMatch),
+ /*6160*/ uint16(x86_xSetOp), uint16(x86_XSAVE),
+ /*6162*/ uint16(x86_xArgMem),
+ /*6163*/ uint16(x86_xMatch),
+ /*6164*/ uint16(x86_xCondDataSize), 6156, 6160, 6168,
+ /*6168*/ uint16(x86_xSetOp), uint16(x86_XSAVE64),
+ /*6170*/ uint16(x86_xArgMem),
+ /*6171*/ uint16(x86_xMatch),
+ /*6172*/ uint16(x86_xCondIs64), 6175, 6187,
+ /*6175*/ uint16(x86_xCondDataSize), 6179, 6183, 0,
+ /*6179*/ uint16(x86_xSetOp), uint16(x86_XRSTOR),
+ /*6181*/ uint16(x86_xArgMem),
+ /*6182*/ uint16(x86_xMatch),
+ /*6183*/ uint16(x86_xSetOp), uint16(x86_XRSTOR),
+ /*6185*/ uint16(x86_xArgMem),
+ /*6186*/ uint16(x86_xMatch),
+ /*6187*/ uint16(x86_xCondDataSize), 6179, 6183, 6191,
+ /*6191*/ uint16(x86_xSetOp), uint16(x86_XRSTOR64),
+ /*6193*/ uint16(x86_xArgMem),
+ /*6194*/ uint16(x86_xMatch),
+ /*6195*/ uint16(x86_xCondDataSize), 6199, 6203, 6207,
+ /*6199*/ uint16(x86_xSetOp), uint16(x86_XSAVEOPT),
+ /*6201*/ uint16(x86_xArgMem),
+ /*6202*/ uint16(x86_xMatch),
+ /*6203*/ uint16(x86_xSetOp), uint16(x86_XSAVEOPT),
+ /*6205*/ uint16(x86_xArgMem),
+ /*6206*/ uint16(x86_xMatch),
+ /*6207*/ uint16(x86_xSetOp), uint16(x86_XSAVEOPT64),
+ /*6209*/ uint16(x86_xArgMem),
+ /*6210*/ uint16(x86_xMatch),
+ /*6211*/ uint16(x86_xSetOp), uint16(x86_CLFLUSH),
+ /*6213*/ uint16(x86_xArgM8),
+ /*6214*/ uint16(x86_xMatch),
+ /*6215*/ uint16(x86_xSetOp), uint16(x86_LFENCE),
+ /*6217*/ uint16(x86_xMatch),
+ /*6218*/ uint16(x86_xSetOp), uint16(x86_MFENCE),
+ /*6220*/ uint16(x86_xMatch),
+ /*6221*/ uint16(x86_xSetOp), uint16(x86_SFENCE),
+ /*6223*/ uint16(x86_xMatch),
+ /*6224*/ uint16(x86_xCondIs64), 6227, 6243,
+ /*6227*/ uint16(x86_xCondDataSize), 6231, 6237, 0,
+ /*6231*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*6233*/ uint16(x86_xReadSlashR),
+ /*6234*/ uint16(x86_xArgR16),
+ /*6235*/ uint16(x86_xArgRM16),
+ /*6236*/ uint16(x86_xMatch),
+ /*6237*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*6239*/ uint16(x86_xReadSlashR),
+ /*6240*/ uint16(x86_xArgR32),
+ /*6241*/ uint16(x86_xArgRM32),
+ /*6242*/ uint16(x86_xMatch),
+ /*6243*/ uint16(x86_xCondDataSize), 6231, 6237, 6247,
+ /*6247*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*6249*/ uint16(x86_xReadSlashR),
+ /*6250*/ uint16(x86_xArgR64),
+ /*6251*/ uint16(x86_xArgRM64),
+ /*6252*/ uint16(x86_xMatch),
+ /*6253*/ uint16(x86_xSetOp), uint16(x86_CMPXCHG),
+ /*6255*/ uint16(x86_xReadSlashR),
+ /*6256*/ uint16(x86_xArgRM8),
+ /*6257*/ uint16(x86_xArgR8),
+ /*6258*/ uint16(x86_xMatch),
+ /*6259*/ uint16(x86_xCondIs64), 6262, 6278,
+ /*6262*/ uint16(x86_xCondDataSize), 6266, 6272, 0,
+ /*6266*/ uint16(x86_xSetOp), uint16(x86_CMPXCHG),
+ /*6268*/ uint16(x86_xReadSlashR),
+ /*6269*/ uint16(x86_xArgRM16),
+ /*6270*/ uint16(x86_xArgR16),
+ /*6271*/ uint16(x86_xMatch),
+ /*6272*/ uint16(x86_xSetOp), uint16(x86_CMPXCHG),
+ /*6274*/ uint16(x86_xReadSlashR),
+ /*6275*/ uint16(x86_xArgRM32),
+ /*6276*/ uint16(x86_xArgR32),
+ /*6277*/ uint16(x86_xMatch),
+ /*6278*/ uint16(x86_xCondDataSize), 6266, 6272, 6282,
+ /*6282*/ uint16(x86_xSetOp), uint16(x86_CMPXCHG),
+ /*6284*/ uint16(x86_xReadSlashR),
+ /*6285*/ uint16(x86_xArgRM64),
+ /*6286*/ uint16(x86_xArgR64),
+ /*6287*/ uint16(x86_xMatch),
+ /*6288*/ uint16(x86_xCondIs64), 6291, 6307,
+ /*6291*/ uint16(x86_xCondDataSize), 6295, 6301, 0,
+ /*6295*/ uint16(x86_xSetOp), uint16(x86_LSS),
+ /*6297*/ uint16(x86_xReadSlashR),
+ /*6298*/ uint16(x86_xArgR16),
+ /*6299*/ uint16(x86_xArgM16colon16),
+ /*6300*/ uint16(x86_xMatch),
+ /*6301*/ uint16(x86_xSetOp), uint16(x86_LSS),
+ /*6303*/ uint16(x86_xReadSlashR),
+ /*6304*/ uint16(x86_xArgR32),
+ /*6305*/ uint16(x86_xArgM16colon32),
+ /*6306*/ uint16(x86_xMatch),
+ /*6307*/ uint16(x86_xCondDataSize), 6295, 6301, 6311,
+ /*6311*/ uint16(x86_xSetOp), uint16(x86_LSS),
+ /*6313*/ uint16(x86_xReadSlashR),
+ /*6314*/ uint16(x86_xArgR64),
+ /*6315*/ uint16(x86_xArgM16colon64),
+ /*6316*/ uint16(x86_xMatch),
+ /*6317*/ uint16(x86_xCondIs64), 6320, 6336,
+ /*6320*/ uint16(x86_xCondDataSize), 6324, 6330, 0,
+ /*6324*/ uint16(x86_xSetOp), uint16(x86_BTR),
+ /*6326*/ uint16(x86_xReadSlashR),
+ /*6327*/ uint16(x86_xArgRM16),
+ /*6328*/ uint16(x86_xArgR16),
+ /*6329*/ uint16(x86_xMatch),
+ /*6330*/ uint16(x86_xSetOp), uint16(x86_BTR),
+ /*6332*/ uint16(x86_xReadSlashR),
+ /*6333*/ uint16(x86_xArgRM32),
+ /*6334*/ uint16(x86_xArgR32),
+ /*6335*/ uint16(x86_xMatch),
+ /*6336*/ uint16(x86_xCondDataSize), 6324, 6330, 6340,
+ /*6340*/ uint16(x86_xSetOp), uint16(x86_BTR),
+ /*6342*/ uint16(x86_xReadSlashR),
+ /*6343*/ uint16(x86_xArgRM64),
+ /*6344*/ uint16(x86_xArgR64),
+ /*6345*/ uint16(x86_xMatch),
+ /*6346*/ uint16(x86_xCondIs64), 6349, 6365,
+ /*6349*/ uint16(x86_xCondDataSize), 6353, 6359, 0,
+ /*6353*/ uint16(x86_xSetOp), uint16(x86_LFS),
+ /*6355*/ uint16(x86_xReadSlashR),
+ /*6356*/ uint16(x86_xArgR16),
+ /*6357*/ uint16(x86_xArgM16colon16),
+ /*6358*/ uint16(x86_xMatch),
+ /*6359*/ uint16(x86_xSetOp), uint16(x86_LFS),
+ /*6361*/ uint16(x86_xReadSlashR),
+ /*6362*/ uint16(x86_xArgR32),
+ /*6363*/ uint16(x86_xArgM16colon32),
+ /*6364*/ uint16(x86_xMatch),
+ /*6365*/ uint16(x86_xCondDataSize), 6353, 6359, 6369,
+ /*6369*/ uint16(x86_xSetOp), uint16(x86_LFS),
+ /*6371*/ uint16(x86_xReadSlashR),
+ /*6372*/ uint16(x86_xArgR64),
+ /*6373*/ uint16(x86_xArgM16colon64),
+ /*6374*/ uint16(x86_xMatch),
+ /*6375*/ uint16(x86_xCondIs64), 6378, 6394,
+ /*6378*/ uint16(x86_xCondDataSize), 6382, 6388, 0,
+ /*6382*/ uint16(x86_xSetOp), uint16(x86_LGS),
+ /*6384*/ uint16(x86_xReadSlashR),
+ /*6385*/ uint16(x86_xArgR16),
+ /*6386*/ uint16(x86_xArgM16colon16),
+ /*6387*/ uint16(x86_xMatch),
+ /*6388*/ uint16(x86_xSetOp), uint16(x86_LGS),
+ /*6390*/ uint16(x86_xReadSlashR),
+ /*6391*/ uint16(x86_xArgR32),
+ /*6392*/ uint16(x86_xArgM16colon32),
+ /*6393*/ uint16(x86_xMatch),
+ /*6394*/ uint16(x86_xCondDataSize), 6382, 6388, 6398,
+ /*6398*/ uint16(x86_xSetOp), uint16(x86_LGS),
+ /*6400*/ uint16(x86_xReadSlashR),
+ /*6401*/ uint16(x86_xArgR64),
+ /*6402*/ uint16(x86_xArgM16colon64),
+ /*6403*/ uint16(x86_xMatch),
+ /*6404*/ uint16(x86_xCondIs64), 6407, 6423,
+ /*6407*/ uint16(x86_xCondDataSize), 6411, 6417, 0,
+ /*6411*/ uint16(x86_xSetOp), uint16(x86_MOVZX),
+ /*6413*/ uint16(x86_xReadSlashR),
+ /*6414*/ uint16(x86_xArgR16),
+ /*6415*/ uint16(x86_xArgRM8),
+ /*6416*/ uint16(x86_xMatch),
+ /*6417*/ uint16(x86_xSetOp), uint16(x86_MOVZX),
+ /*6419*/ uint16(x86_xReadSlashR),
+ /*6420*/ uint16(x86_xArgR32),
+ /*6421*/ uint16(x86_xArgRM8),
+ /*6422*/ uint16(x86_xMatch),
+ /*6423*/ uint16(x86_xCondDataSize), 6411, 6417, 6427,
+ /*6427*/ uint16(x86_xSetOp), uint16(x86_MOVZX),
+ /*6429*/ uint16(x86_xReadSlashR),
+ /*6430*/ uint16(x86_xArgR64),
+ /*6431*/ uint16(x86_xArgRM8),
+ /*6432*/ uint16(x86_xMatch),
+ /*6433*/ uint16(x86_xCondIs64), 6436, 6452,
+ /*6436*/ uint16(x86_xCondDataSize), 6440, 6446, 0,
+ /*6440*/ uint16(x86_xSetOp), uint16(x86_MOVZX),
+ /*6442*/ uint16(x86_xReadSlashR),
+ /*6443*/ uint16(x86_xArgR16),
+ /*6444*/ uint16(x86_xArgRM16),
+ /*6445*/ uint16(x86_xMatch),
+ /*6446*/ uint16(x86_xSetOp), uint16(x86_MOVZX),
+ /*6448*/ uint16(x86_xReadSlashR),
+ /*6449*/ uint16(x86_xArgR32),
+ /*6450*/ uint16(x86_xArgRM16),
+ /*6451*/ uint16(x86_xMatch),
+ /*6452*/ uint16(x86_xCondDataSize), 6440, 6446, 6456,
+ /*6456*/ uint16(x86_xSetOp), uint16(x86_MOVZX),
+ /*6458*/ uint16(x86_xReadSlashR),
+ /*6459*/ uint16(x86_xArgR64),
+ /*6460*/ uint16(x86_xArgRM16),
+ /*6461*/ uint16(x86_xMatch),
+ /*6462*/ uint16(x86_xCondIs64), 6465, 6485,
+ /*6465*/ uint16(x86_xCondPrefix), 1,
+ 0xF3, 6469,
+ /*6469*/ uint16(x86_xCondDataSize), 6473, 6479, 0,
+ /*6473*/ uint16(x86_xSetOp), uint16(x86_POPCNT),
+ /*6475*/ uint16(x86_xReadSlashR),
+ /*6476*/ uint16(x86_xArgR16),
+ /*6477*/ uint16(x86_xArgRM16),
+ /*6478*/ uint16(x86_xMatch),
+ /*6479*/ uint16(x86_xSetOp), uint16(x86_POPCNT),
+ /*6481*/ uint16(x86_xReadSlashR),
+ /*6482*/ uint16(x86_xArgR32),
+ /*6483*/ uint16(x86_xArgRM32),
+ /*6484*/ uint16(x86_xMatch),
+ /*6485*/ uint16(x86_xCondPrefix), 1,
+ 0xF3, 6489,
+ /*6489*/ uint16(x86_xCondDataSize), 6473, 6479, 6493,
+ /*6493*/ uint16(x86_xSetOp), uint16(x86_POPCNT),
+ /*6495*/ uint16(x86_xReadSlashR),
+ /*6496*/ uint16(x86_xArgR64),
+ /*6497*/ uint16(x86_xArgRM64),
+ /*6498*/ uint16(x86_xMatch),
+ /*6499*/ uint16(x86_xSetOp), uint16(x86_UD1),
+ /*6501*/ uint16(x86_xMatch),
+ /*6502*/ uint16(x86_xCondSlashR),
+ 0, // 0
+ 0, // 1
+ 0, // 2
+ 0, // 3
+ 6511, // 4
+ 6540, // 5
+ 6569, // 6
+ 6598, // 7
+ /*6511*/ uint16(x86_xCondIs64), 6514, 6530,
+ /*6514*/ uint16(x86_xCondDataSize), 6518, 6524, 0,
+ /*6518*/ uint16(x86_xSetOp), uint16(x86_BT),
+ /*6520*/ uint16(x86_xReadIb),
+ /*6521*/ uint16(x86_xArgRM16),
+ /*6522*/ uint16(x86_xArgImm8u),
+ /*6523*/ uint16(x86_xMatch),
+ /*6524*/ uint16(x86_xSetOp), uint16(x86_BT),
+ /*6526*/ uint16(x86_xReadIb),
+ /*6527*/ uint16(x86_xArgRM32),
+ /*6528*/ uint16(x86_xArgImm8u),
+ /*6529*/ uint16(x86_xMatch),
+ /*6530*/ uint16(x86_xCondDataSize), 6518, 6524, 6534,
+ /*6534*/ uint16(x86_xSetOp), uint16(x86_BT),
+ /*6536*/ uint16(x86_xReadIb),
+ /*6537*/ uint16(x86_xArgRM64),
+ /*6538*/ uint16(x86_xArgImm8u),
+ /*6539*/ uint16(x86_xMatch),
+ /*6540*/ uint16(x86_xCondIs64), 6543, 6559,
+ /*6543*/ uint16(x86_xCondDataSize), 6547, 6553, 0,
+ /*6547*/ uint16(x86_xSetOp), uint16(x86_BTS),
+ /*6549*/ uint16(x86_xReadIb),
+ /*6550*/ uint16(x86_xArgRM16),
+ /*6551*/ uint16(x86_xArgImm8u),
+ /*6552*/ uint16(x86_xMatch),
+ /*6553*/ uint16(x86_xSetOp), uint16(x86_BTS),
+ /*6555*/ uint16(x86_xReadIb),
+ /*6556*/ uint16(x86_xArgRM32),
+ /*6557*/ uint16(x86_xArgImm8u),
+ /*6558*/ uint16(x86_xMatch),
+ /*6559*/ uint16(x86_xCondDataSize), 6547, 6553, 6563,
+ /*6563*/ uint16(x86_xSetOp), uint16(x86_BTS),
+ /*6565*/ uint16(x86_xReadIb),
+ /*6566*/ uint16(x86_xArgRM64),
+ /*6567*/ uint16(x86_xArgImm8u),
+ /*6568*/ uint16(x86_xMatch),
+ /*6569*/ uint16(x86_xCondIs64), 6572, 6588,
+ /*6572*/ uint16(x86_xCondDataSize), 6576, 6582, 0,
+ /*6576*/ uint16(x86_xSetOp), uint16(x86_BTR),
+ /*6578*/ uint16(x86_xReadIb),
+ /*6579*/ uint16(x86_xArgRM16),
+ /*6580*/ uint16(x86_xArgImm8u),
+ /*6581*/ uint16(x86_xMatch),
+ /*6582*/ uint16(x86_xSetOp), uint16(x86_BTR),
+ /*6584*/ uint16(x86_xReadIb),
+ /*6585*/ uint16(x86_xArgRM32),
+ /*6586*/ uint16(x86_xArgImm8u),
+ /*6587*/ uint16(x86_xMatch),
+ /*6588*/ uint16(x86_xCondDataSize), 6576, 6582, 6592,
+ /*6592*/ uint16(x86_xSetOp), uint16(x86_BTR),
+ /*6594*/ uint16(x86_xReadIb),
+ /*6595*/ uint16(x86_xArgRM64),
+ /*6596*/ uint16(x86_xArgImm8u),
+ /*6597*/ uint16(x86_xMatch),
+ /*6598*/ uint16(x86_xCondIs64), 6601, 6617,
+ /*6601*/ uint16(x86_xCondDataSize), 6605, 6611, 0,
+ /*6605*/ uint16(x86_xSetOp), uint16(x86_BTC),
+ /*6607*/ uint16(x86_xReadIb),
+ /*6608*/ uint16(x86_xArgRM16),
+ /*6609*/ uint16(x86_xArgImm8u),
+ /*6610*/ uint16(x86_xMatch),
+ /*6611*/ uint16(x86_xSetOp), uint16(x86_BTC),
+ /*6613*/ uint16(x86_xReadIb),
+ /*6614*/ uint16(x86_xArgRM32),
+ /*6615*/ uint16(x86_xArgImm8u),
+ /*6616*/ uint16(x86_xMatch),
+ /*6617*/ uint16(x86_xCondDataSize), 6605, 6611, 6621,
+ /*6621*/ uint16(x86_xSetOp), uint16(x86_BTC),
+ /*6623*/ uint16(x86_xReadIb),
+ /*6624*/ uint16(x86_xArgRM64),
+ /*6625*/ uint16(x86_xArgImm8u),
+ /*6626*/ uint16(x86_xMatch),
+ /*6627*/ uint16(x86_xCondIs64), 6630, 6646,
+ /*6630*/ uint16(x86_xCondDataSize), 6634, 6640, 0,
+ /*6634*/ uint16(x86_xSetOp), uint16(x86_BTC),
+ /*6636*/ uint16(x86_xReadSlashR),
+ /*6637*/ uint16(x86_xArgRM16),
+ /*6638*/ uint16(x86_xArgR16),
+ /*6639*/ uint16(x86_xMatch),
+ /*6640*/ uint16(x86_xSetOp), uint16(x86_BTC),
+ /*6642*/ uint16(x86_xReadSlashR),
+ /*6643*/ uint16(x86_xArgRM32),
+ /*6644*/ uint16(x86_xArgR32),
+ /*6645*/ uint16(x86_xMatch),
+ /*6646*/ uint16(x86_xCondDataSize), 6634, 6640, 6650,
+ /*6650*/ uint16(x86_xSetOp), uint16(x86_BTC),
+ /*6652*/ uint16(x86_xReadSlashR),
+ /*6653*/ uint16(x86_xArgRM64),
+ /*6654*/ uint16(x86_xArgR64),
+ /*6655*/ uint16(x86_xMatch),
+ /*6656*/ uint16(x86_xCondIs64), 6659, 6697,
+ /*6659*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6681,
+ 0x0, 6665,
+ /*6665*/ uint16(x86_xCondDataSize), 6669, 6675, 0,
+ /*6669*/ uint16(x86_xSetOp), uint16(x86_BSF),
+ /*6671*/ uint16(x86_xReadSlashR),
+ /*6672*/ uint16(x86_xArgR16),
+ /*6673*/ uint16(x86_xArgRM16),
+ /*6674*/ uint16(x86_xMatch),
+ /*6675*/ uint16(x86_xSetOp), uint16(x86_BSF),
+ /*6677*/ uint16(x86_xReadSlashR),
+ /*6678*/ uint16(x86_xArgR32),
+ /*6679*/ uint16(x86_xArgRM32),
+ /*6680*/ uint16(x86_xMatch),
+ /*6681*/ uint16(x86_xCondDataSize), 6685, 6691, 0,
+ /*6685*/ uint16(x86_xSetOp), uint16(x86_TZCNT),
+ /*6687*/ uint16(x86_xReadSlashR),
+ /*6688*/ uint16(x86_xArgR16),
+ /*6689*/ uint16(x86_xArgRM16),
+ /*6690*/ uint16(x86_xMatch),
+ /*6691*/ uint16(x86_xSetOp), uint16(x86_TZCNT),
+ /*6693*/ uint16(x86_xReadSlashR),
+ /*6694*/ uint16(x86_xArgR32),
+ /*6695*/ uint16(x86_xArgRM32),
+ /*6696*/ uint16(x86_xMatch),
+ /*6697*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6713,
+ 0x0, 6703,
+ /*6703*/ uint16(x86_xCondDataSize), 6669, 6675, 6707,
+ /*6707*/ uint16(x86_xSetOp), uint16(x86_BSF),
+ /*6709*/ uint16(x86_xReadSlashR),
+ /*6710*/ uint16(x86_xArgR64),
+ /*6711*/ uint16(x86_xArgRM64),
+ /*6712*/ uint16(x86_xMatch),
+ /*6713*/ uint16(x86_xCondDataSize), 6685, 6691, 6717,
+ /*6717*/ uint16(x86_xSetOp), uint16(x86_TZCNT),
+ /*6719*/ uint16(x86_xReadSlashR),
+ /*6720*/ uint16(x86_xArgR64),
+ /*6721*/ uint16(x86_xArgRM64),
+ /*6722*/ uint16(x86_xMatch),
+ /*6723*/ uint16(x86_xCondIs64), 6726, 6764,
+ /*6726*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6748,
+ 0x0, 6732,
+ /*6732*/ uint16(x86_xCondDataSize), 6736, 6742, 0,
+ /*6736*/ uint16(x86_xSetOp), uint16(x86_BSR),
+ /*6738*/ uint16(x86_xReadSlashR),
+ /*6739*/ uint16(x86_xArgR16),
+ /*6740*/ uint16(x86_xArgRM16),
+ /*6741*/ uint16(x86_xMatch),
+ /*6742*/ uint16(x86_xSetOp), uint16(x86_BSR),
+ /*6744*/ uint16(x86_xReadSlashR),
+ /*6745*/ uint16(x86_xArgR32),
+ /*6746*/ uint16(x86_xArgRM32),
+ /*6747*/ uint16(x86_xMatch),
+ /*6748*/ uint16(x86_xCondDataSize), 6752, 6758, 0,
+ /*6752*/ uint16(x86_xSetOp), uint16(x86_LZCNT),
+ /*6754*/ uint16(x86_xReadSlashR),
+ /*6755*/ uint16(x86_xArgR16),
+ /*6756*/ uint16(x86_xArgRM16),
+ /*6757*/ uint16(x86_xMatch),
+ /*6758*/ uint16(x86_xSetOp), uint16(x86_LZCNT),
+ /*6760*/ uint16(x86_xReadSlashR),
+ /*6761*/ uint16(x86_xArgR32),
+ /*6762*/ uint16(x86_xArgRM32),
+ /*6763*/ uint16(x86_xMatch),
+ /*6764*/ uint16(x86_xCondPrefix), 2,
+ 0xF3, 6780,
+ 0x0, 6770,
+ /*6770*/ uint16(x86_xCondDataSize), 6736, 6742, 6774,
+ /*6774*/ uint16(x86_xSetOp), uint16(x86_BSR),
+ /*6776*/ uint16(x86_xReadSlashR),
+ /*6777*/ uint16(x86_xArgR64),
+ /*6778*/ uint16(x86_xArgRM64),
+ /*6779*/ uint16(x86_xMatch),
+ /*6780*/ uint16(x86_xCondDataSize), 6752, 6758, 6784,
+ /*6784*/ uint16(x86_xSetOp), uint16(x86_LZCNT),
+ /*6786*/ uint16(x86_xReadSlashR),
+ /*6787*/ uint16(x86_xArgR64),
+ /*6788*/ uint16(x86_xArgRM64),
+ /*6789*/ uint16(x86_xMatch),
+ /*6790*/ uint16(x86_xCondIs64), 6793, 6809,
+ /*6793*/ uint16(x86_xCondDataSize), 6797, 6803, 0,
+ /*6797*/ uint16(x86_xSetOp), uint16(x86_MOVSX),
+ /*6799*/ uint16(x86_xReadSlashR),
+ /*6800*/ uint16(x86_xArgR16),
+ /*6801*/ uint16(x86_xArgRM8),
+ /*6802*/ uint16(x86_xMatch),
+ /*6803*/ uint16(x86_xSetOp), uint16(x86_MOVSX),
+ /*6805*/ uint16(x86_xReadSlashR),
+ /*6806*/ uint16(x86_xArgR32),
+ /*6807*/ uint16(x86_xArgRM8),
+ /*6808*/ uint16(x86_xMatch),
+ /*6809*/ uint16(x86_xCondDataSize), 6797, 6803, 6813,
+ /*6813*/ uint16(x86_xSetOp), uint16(x86_MOVSX),
+ /*6815*/ uint16(x86_xReadSlashR),
+ /*6816*/ uint16(x86_xArgR64),
+ /*6817*/ uint16(x86_xArgRM8),
+ /*6818*/ uint16(x86_xMatch),
+ /*6819*/ uint16(x86_xCondIs64), 6822, 6838,
+ /*6822*/ uint16(x86_xCondDataSize), 6826, 6832, 0,
+ /*6826*/ uint16(x86_xSetOp), uint16(x86_MOVSX),
+ /*6828*/ uint16(x86_xReadSlashR),
+ /*6829*/ uint16(x86_xArgR16),
+ /*6830*/ uint16(x86_xArgRM16),
+ /*6831*/ uint16(x86_xMatch),
+ /*6832*/ uint16(x86_xSetOp), uint16(x86_MOVSX),
+ /*6834*/ uint16(x86_xReadSlashR),
+ /*6835*/ uint16(x86_xArgR32),
+ /*6836*/ uint16(x86_xArgRM16),
+ /*6837*/ uint16(x86_xMatch),
+ /*6838*/ uint16(x86_xCondDataSize), 6826, 6832, 6842,
+ /*6842*/ uint16(x86_xSetOp), uint16(x86_MOVSX),
+ /*6844*/ uint16(x86_xReadSlashR),
+ /*6845*/ uint16(x86_xArgR64),
+ /*6846*/ uint16(x86_xArgRM16),
+ /*6847*/ uint16(x86_xMatch),
+ /*6848*/ uint16(x86_xSetOp), uint16(x86_XADD),
+ /*6850*/ uint16(x86_xReadSlashR),
+ /*6851*/ uint16(x86_xArgRM8),
+ /*6852*/ uint16(x86_xArgR8),
+ /*6853*/ uint16(x86_xMatch),
+ /*6854*/ uint16(x86_xCondIs64), 6857, 6873,
+ /*6857*/ uint16(x86_xCondDataSize), 6861, 6867, 0,
+ /*6861*/ uint16(x86_xSetOp), uint16(x86_XADD),
+ /*6863*/ uint16(x86_xReadSlashR),
+ /*6864*/ uint16(x86_xArgRM16),
+ /*6865*/ uint16(x86_xArgR16),
+ /*6866*/ uint16(x86_xMatch),
+ /*6867*/ uint16(x86_xSetOp), uint16(x86_XADD),
+ /*6869*/ uint16(x86_xReadSlashR),
+ /*6870*/ uint16(x86_xArgRM32),
+ /*6871*/ uint16(x86_xArgR32),
+ /*6872*/ uint16(x86_xMatch),
+ /*6873*/ uint16(x86_xCondDataSize), 6861, 6867, 6877,
+ /*6877*/ uint16(x86_xSetOp), uint16(x86_XADD),
+ /*6879*/ uint16(x86_xReadSlashR),
+ /*6880*/ uint16(x86_xArgRM64),
+ /*6881*/ uint16(x86_xArgR64),
+ /*6882*/ uint16(x86_xMatch),
+ /*6883*/ uint16(x86_xCondPrefix), 4,
+ 0xF3, 6917,
+ 0xF2, 6909,
+ 0x66, 6901,
+ 0x0, 6893,
+ /*6893*/ uint16(x86_xSetOp), uint16(x86_CMPPS),
+ /*6895*/ uint16(x86_xReadSlashR),
+ /*6896*/ uint16(x86_xReadIb),
+ /*6897*/ uint16(x86_xArgXmm1),
+ /*6898*/ uint16(x86_xArgXmm2M128),
+ /*6899*/ uint16(x86_xArgImm8u),
+ /*6900*/ uint16(x86_xMatch),
+ /*6901*/ uint16(x86_xSetOp), uint16(x86_CMPPD),
+ /*6903*/ uint16(x86_xReadSlashR),
+ /*6904*/ uint16(x86_xReadIb),
+ /*6905*/ uint16(x86_xArgXmm1),
+ /*6906*/ uint16(x86_xArgXmm2M128),
+ /*6907*/ uint16(x86_xArgImm8u),
+ /*6908*/ uint16(x86_xMatch),
+ /*6909*/ uint16(x86_xSetOp), uint16(x86_CMPSD_XMM),
+ /*6911*/ uint16(x86_xReadSlashR),
+ /*6912*/ uint16(x86_xReadIb),
+ /*6913*/ uint16(x86_xArgXmm1),
+ /*6914*/ uint16(x86_xArgXmm2M64),
+ /*6915*/ uint16(x86_xArgImm8u),
+ /*6916*/ uint16(x86_xMatch),
+ /*6917*/ uint16(x86_xSetOp), uint16(x86_CMPSS),
+ /*6919*/ uint16(x86_xReadSlashR),
+ /*6920*/ uint16(x86_xReadIb),
+ /*6921*/ uint16(x86_xArgXmm1),
+ /*6922*/ uint16(x86_xArgXmm2M32),
+ /*6923*/ uint16(x86_xArgImm8u),
+ /*6924*/ uint16(x86_xMatch),
+ /*6925*/ uint16(x86_xCondIs64), 6928, 6944,
+ /*6928*/ uint16(x86_xCondDataSize), 6932, 6938, 0,
+ /*6932*/ uint16(x86_xSetOp), uint16(x86_MOVNTI),
+ /*6934*/ uint16(x86_xReadSlashR),
+ /*6935*/ uint16(x86_xArgM32),
+ /*6936*/ uint16(x86_xArgR32),
+ /*6937*/ uint16(x86_xMatch),
+ /*6938*/ uint16(x86_xSetOp), uint16(x86_MOVNTI),
+ /*6940*/ uint16(x86_xReadSlashR),
+ /*6941*/ uint16(x86_xArgM32),
+ /*6942*/ uint16(x86_xArgR32),
+ /*6943*/ uint16(x86_xMatch),
+ /*6944*/ uint16(x86_xCondDataSize), 6932, 6938, 6948,
+ /*6948*/ uint16(x86_xSetOp), uint16(x86_MOVNTI),
+ /*6950*/ uint16(x86_xReadSlashR),
+ /*6951*/ uint16(x86_xArgM64),
+ /*6952*/ uint16(x86_xArgR64),
+ /*6953*/ uint16(x86_xMatch),
+ /*6954*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 6968,
+ 0x0, 6960,
+ /*6960*/ uint16(x86_xSetOp), uint16(x86_PINSRW),
+ /*6962*/ uint16(x86_xReadSlashR),
+ /*6963*/ uint16(x86_xReadIb),
+ /*6964*/ uint16(x86_xArgMm),
+ /*6965*/ uint16(x86_xArgR32M16),
+ /*6966*/ uint16(x86_xArgImm8u),
+ /*6967*/ uint16(x86_xMatch),
+ /*6968*/ uint16(x86_xSetOp), uint16(x86_PINSRW),
+ /*6970*/ uint16(x86_xReadSlashR),
+ /*6971*/ uint16(x86_xReadIb),
+ /*6972*/ uint16(x86_xArgXmm),
+ /*6973*/ uint16(x86_xArgR32M16),
+ /*6974*/ uint16(x86_xArgImm8u),
+ /*6975*/ uint16(x86_xMatch),
+ /*6976*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 6990,
+ 0x0, 6982,
+ /*6982*/ uint16(x86_xSetOp), uint16(x86_PEXTRW),
+ /*6984*/ uint16(x86_xReadSlashR),
+ /*6985*/ uint16(x86_xReadIb),
+ /*6986*/ uint16(x86_xArgR32),
+ /*6987*/ uint16(x86_xArgMm2),
+ /*6988*/ uint16(x86_xArgImm8u),
+ /*6989*/ uint16(x86_xMatch),
+ /*6990*/ uint16(x86_xSetOp), uint16(x86_PEXTRW),
+ /*6992*/ uint16(x86_xReadSlashR),
+ /*6993*/ uint16(x86_xReadIb),
+ /*6994*/ uint16(x86_xArgR32),
+ /*6995*/ uint16(x86_xArgXmm2),
+ /*6996*/ uint16(x86_xArgImm8u),
+ /*6997*/ uint16(x86_xMatch),
+ /*6998*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7012,
+ 0x0, 7004,
+ /*7004*/ uint16(x86_xSetOp), uint16(x86_SHUFPS),
+ /*7006*/ uint16(x86_xReadSlashR),
+ /*7007*/ uint16(x86_xReadIb),
+ /*7008*/ uint16(x86_xArgXmm1),
+ /*7009*/ uint16(x86_xArgXmm2M128),
+ /*7010*/ uint16(x86_xArgImm8u),
+ /*7011*/ uint16(x86_xMatch),
+ /*7012*/ uint16(x86_xSetOp), uint16(x86_SHUFPD),
+ /*7014*/ uint16(x86_xReadSlashR),
+ /*7015*/ uint16(x86_xReadIb),
+ /*7016*/ uint16(x86_xArgXmm1),
+ /*7017*/ uint16(x86_xArgXmm2M128),
+ /*7018*/ uint16(x86_xArgImm8u),
+ /*7019*/ uint16(x86_xMatch),
+ /*7020*/ uint16(x86_xCondSlashR),
+ 0, // 0
+ 7029, // 1
+ 0, // 2
+ 7052, // 3
+ 7075, // 4
+ 7098, // 5
+ 7121, // 6
+ 0, // 7
+ /*7029*/ uint16(x86_xCondIs64), 7032, 7044,
+ /*7032*/ uint16(x86_xCondDataSize), 7036, 7040, 0,
+ /*7036*/ uint16(x86_xSetOp), uint16(x86_CMPXCHG8B),
+ /*7038*/ uint16(x86_xArgM64),
+ /*7039*/ uint16(x86_xMatch),
+ /*7040*/ uint16(x86_xSetOp), uint16(x86_CMPXCHG8B),
+ /*7042*/ uint16(x86_xArgM64),
+ /*7043*/ uint16(x86_xMatch),
+ /*7044*/ uint16(x86_xCondDataSize), 7036, 7040, 7048,
+ /*7048*/ uint16(x86_xSetOp), uint16(x86_CMPXCHG16B),
+ /*7050*/ uint16(x86_xArgM128),
+ /*7051*/ uint16(x86_xMatch),
+ /*7052*/ uint16(x86_xCondIs64), 7055, 7067,
+ /*7055*/ uint16(x86_xCondDataSize), 7059, 7063, 0,
+ /*7059*/ uint16(x86_xSetOp), uint16(x86_XRSTORS),
+ /*7061*/ uint16(x86_xArgMem),
+ /*7062*/ uint16(x86_xMatch),
+ /*7063*/ uint16(x86_xSetOp), uint16(x86_XRSTORS),
+ /*7065*/ uint16(x86_xArgMem),
+ /*7066*/ uint16(x86_xMatch),
+ /*7067*/ uint16(x86_xCondDataSize), 7059, 7063, 7071,
+ /*7071*/ uint16(x86_xSetOp), uint16(x86_XRSTORS64),
+ /*7073*/ uint16(x86_xArgMem),
+ /*7074*/ uint16(x86_xMatch),
+ /*7075*/ uint16(x86_xCondIs64), 7078, 7090,
+ /*7078*/ uint16(x86_xCondDataSize), 7082, 7086, 0,
+ /*7082*/ uint16(x86_xSetOp), uint16(x86_XSAVEC),
+ /*7084*/ uint16(x86_xArgMem),
+ /*7085*/ uint16(x86_xMatch),
+ /*7086*/ uint16(x86_xSetOp), uint16(x86_XSAVEC),
+ /*7088*/ uint16(x86_xArgMem),
+ /*7089*/ uint16(x86_xMatch),
+ /*7090*/ uint16(x86_xCondDataSize), 7082, 7086, 7094,
+ /*7094*/ uint16(x86_xSetOp), uint16(x86_XSAVEC64),
+ /*7096*/ uint16(x86_xArgMem),
+ /*7097*/ uint16(x86_xMatch),
+ /*7098*/ uint16(x86_xCondIs64), 7101, 7113,
+ /*7101*/ uint16(x86_xCondDataSize), 7105, 7109, 0,
+ /*7105*/ uint16(x86_xSetOp), uint16(x86_XSAVES),
+ /*7107*/ uint16(x86_xArgMem),
+ /*7108*/ uint16(x86_xMatch),
+ /*7109*/ uint16(x86_xSetOp), uint16(x86_XSAVES),
+ /*7111*/ uint16(x86_xArgMem),
+ /*7112*/ uint16(x86_xMatch),
+ /*7113*/ uint16(x86_xCondDataSize), 7105, 7109, 7117,
+ /*7117*/ uint16(x86_xSetOp), uint16(x86_XSAVES64),
+ /*7119*/ uint16(x86_xArgMem),
+ /*7120*/ uint16(x86_xMatch),
+ /*7121*/ uint16(x86_xCondIs64), 7124, 7142,
+ /*7124*/ uint16(x86_xCondDataSize), 7128, 7135, 0,
+ /*7128*/ uint16(x86_xCondIsMem), 7131, 0,
+ /*7131*/ uint16(x86_xSetOp), uint16(x86_RDRAND),
+ /*7133*/ uint16(x86_xArgRmf16),
+ /*7134*/ uint16(x86_xMatch),
+ /*7135*/ uint16(x86_xCondIsMem), 7138, 0,
+ /*7138*/ uint16(x86_xSetOp), uint16(x86_RDRAND),
+ /*7140*/ uint16(x86_xArgRmf32),
+ /*7141*/ uint16(x86_xMatch),
+ /*7142*/ uint16(x86_xCondDataSize), 7128, 7135, 7146,
+ /*7146*/ uint16(x86_xSetOp), uint16(x86_RDRAND),
+ /*7148*/ uint16(x86_xMatch),
+ /*7149*/ uint16(x86_xCondIs64), 7152, 7164,
+ /*7152*/ uint16(x86_xCondDataSize), 7156, 7160, 0,
+ /*7156*/ uint16(x86_xSetOp), uint16(x86_BSWAP),
+ /*7158*/ uint16(x86_xArgR16op),
+ /*7159*/ uint16(x86_xMatch),
+ /*7160*/ uint16(x86_xSetOp), uint16(x86_BSWAP),
+ /*7162*/ uint16(x86_xArgR32op),
+ /*7163*/ uint16(x86_xMatch),
+ /*7164*/ uint16(x86_xCondDataSize), 7156, 7160, 7168,
+ /*7168*/ uint16(x86_xSetOp), uint16(x86_BSWAP),
+ /*7170*/ uint16(x86_xArgR64op),
+ /*7171*/ uint16(x86_xMatch),
+ /*7172*/ uint16(x86_xCondPrefix), 2,
+ 0xF2, 7184,
+ 0x66, 7178,
+ /*7178*/ uint16(x86_xSetOp), uint16(x86_ADDSUBPD),
+ /*7180*/ uint16(x86_xReadSlashR),
+ /*7181*/ uint16(x86_xArgXmm1),
+ /*7182*/ uint16(x86_xArgXmm2M128),
+ /*7183*/ uint16(x86_xMatch),
+ /*7184*/ uint16(x86_xSetOp), uint16(x86_ADDSUBPS),
+ /*7186*/ uint16(x86_xReadSlashR),
+ /*7187*/ uint16(x86_xArgXmm1),
+ /*7188*/ uint16(x86_xArgXmm2M128),
+ /*7189*/ uint16(x86_xMatch),
+ /*7190*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7202,
+ 0x0, 7196,
+ /*7196*/ uint16(x86_xSetOp), uint16(x86_PSRLW),
+ /*7198*/ uint16(x86_xReadSlashR),
+ /*7199*/ uint16(x86_xArgMm),
+ /*7200*/ uint16(x86_xArgMmM64),
+ /*7201*/ uint16(x86_xMatch),
+ /*7202*/ uint16(x86_xSetOp), uint16(x86_PSRLW),
+ /*7204*/ uint16(x86_xReadSlashR),
+ /*7205*/ uint16(x86_xArgXmm1),
+ /*7206*/ uint16(x86_xArgXmm2M128),
+ /*7207*/ uint16(x86_xMatch),
+ /*7208*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7220,
+ 0x0, 7214,
+ /*7214*/ uint16(x86_xSetOp), uint16(x86_PSRLD),
+ /*7216*/ uint16(x86_xReadSlashR),
+ /*7217*/ uint16(x86_xArgMm),
+ /*7218*/ uint16(x86_xArgMmM64),
+ /*7219*/ uint16(x86_xMatch),
+ /*7220*/ uint16(x86_xSetOp), uint16(x86_PSRLD),
+ /*7222*/ uint16(x86_xReadSlashR),
+ /*7223*/ uint16(x86_xArgXmm1),
+ /*7224*/ uint16(x86_xArgXmm2M128),
+ /*7225*/ uint16(x86_xMatch),
+ /*7226*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7238,
+ 0x0, 7232,
+ /*7232*/ uint16(x86_xSetOp), uint16(x86_PSRLQ),
+ /*7234*/ uint16(x86_xReadSlashR),
+ /*7235*/ uint16(x86_xArgMm),
+ /*7236*/ uint16(x86_xArgMmM64),
+ /*7237*/ uint16(x86_xMatch),
+ /*7238*/ uint16(x86_xSetOp), uint16(x86_PSRLQ),
+ /*7240*/ uint16(x86_xReadSlashR),
+ /*7241*/ uint16(x86_xArgXmm1),
+ /*7242*/ uint16(x86_xArgXmm2M128),
+ /*7243*/ uint16(x86_xMatch),
+ /*7244*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7256,
+ 0x0, 7250,
+ /*7250*/ uint16(x86_xSetOp), uint16(x86_PADDQ),
+ /*7252*/ uint16(x86_xReadSlashR),
+ /*7253*/ uint16(x86_xArgMm1),
+ /*7254*/ uint16(x86_xArgMm2M64),
+ /*7255*/ uint16(x86_xMatch),
+ /*7256*/ uint16(x86_xSetOp), uint16(x86_PADDQ),
+ /*7258*/ uint16(x86_xReadSlashR),
+ /*7259*/ uint16(x86_xArgXmm1),
+ /*7260*/ uint16(x86_xArgXmm2M128),
+ /*7261*/ uint16(x86_xMatch),
+ /*7262*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7274,
+ 0x0, 7268,
+ /*7268*/ uint16(x86_xSetOp), uint16(x86_PMULLW),
+ /*7270*/ uint16(x86_xReadSlashR),
+ /*7271*/ uint16(x86_xArgMm),
+ /*7272*/ uint16(x86_xArgMmM64),
+ /*7273*/ uint16(x86_xMatch),
+ /*7274*/ uint16(x86_xSetOp), uint16(x86_PMULLW),
+ /*7276*/ uint16(x86_xReadSlashR),
+ /*7277*/ uint16(x86_xArgXmm1),
+ /*7278*/ uint16(x86_xArgXmm2M128),
+ /*7279*/ uint16(x86_xMatch),
+ /*7280*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 7300,
+ 0xF2, 7294,
+ 0x66, 7288,
+ /*7288*/ uint16(x86_xSetOp), uint16(x86_MOVQ),
+ /*7290*/ uint16(x86_xReadSlashR),
+ /*7291*/ uint16(x86_xArgXmm2M64),
+ /*7292*/ uint16(x86_xArgXmm1),
+ /*7293*/ uint16(x86_xMatch),
+ /*7294*/ uint16(x86_xSetOp), uint16(x86_MOVDQ2Q),
+ /*7296*/ uint16(x86_xReadSlashR),
+ /*7297*/ uint16(x86_xArgMm),
+ /*7298*/ uint16(x86_xArgXmm2),
+ /*7299*/ uint16(x86_xMatch),
+ /*7300*/ uint16(x86_xSetOp), uint16(x86_MOVQ2DQ),
+ /*7302*/ uint16(x86_xReadSlashR),
+ /*7303*/ uint16(x86_xArgXmm1),
+ /*7304*/ uint16(x86_xArgMm2),
+ /*7305*/ uint16(x86_xMatch),
+ /*7306*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7318,
+ 0x0, 7312,
+ /*7312*/ uint16(x86_xSetOp), uint16(x86_PMOVMSKB),
+ /*7314*/ uint16(x86_xReadSlashR),
+ /*7315*/ uint16(x86_xArgR32),
+ /*7316*/ uint16(x86_xArgMm2),
+ /*7317*/ uint16(x86_xMatch),
+ /*7318*/ uint16(x86_xSetOp), uint16(x86_PMOVMSKB),
+ /*7320*/ uint16(x86_xReadSlashR),
+ /*7321*/ uint16(x86_xArgR32),
+ /*7322*/ uint16(x86_xArgXmm2),
+ /*7323*/ uint16(x86_xMatch),
+ /*7324*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7336,
+ 0x0, 7330,
+ /*7330*/ uint16(x86_xSetOp), uint16(x86_PSUBUSB),
+ /*7332*/ uint16(x86_xReadSlashR),
+ /*7333*/ uint16(x86_xArgMm),
+ /*7334*/ uint16(x86_xArgMmM64),
+ /*7335*/ uint16(x86_xMatch),
+ /*7336*/ uint16(x86_xSetOp), uint16(x86_PSUBUSB),
+ /*7338*/ uint16(x86_xReadSlashR),
+ /*7339*/ uint16(x86_xArgXmm1),
+ /*7340*/ uint16(x86_xArgXmm2M128),
+ /*7341*/ uint16(x86_xMatch),
+ /*7342*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7354,
+ 0x0, 7348,
+ /*7348*/ uint16(x86_xSetOp), uint16(x86_PSUBUSW),
+ /*7350*/ uint16(x86_xReadSlashR),
+ /*7351*/ uint16(x86_xArgMm),
+ /*7352*/ uint16(x86_xArgMmM64),
+ /*7353*/ uint16(x86_xMatch),
+ /*7354*/ uint16(x86_xSetOp), uint16(x86_PSUBUSW),
+ /*7356*/ uint16(x86_xReadSlashR),
+ /*7357*/ uint16(x86_xArgXmm1),
+ /*7358*/ uint16(x86_xArgXmm2M128),
+ /*7359*/ uint16(x86_xMatch),
+ /*7360*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7372,
+ 0x0, 7366,
+ /*7366*/ uint16(x86_xSetOp), uint16(x86_PMINUB),
+ /*7368*/ uint16(x86_xReadSlashR),
+ /*7369*/ uint16(x86_xArgMm1),
+ /*7370*/ uint16(x86_xArgMm2M64),
+ /*7371*/ uint16(x86_xMatch),
+ /*7372*/ uint16(x86_xSetOp), uint16(x86_PMINUB),
+ /*7374*/ uint16(x86_xReadSlashR),
+ /*7375*/ uint16(x86_xArgXmm1),
+ /*7376*/ uint16(x86_xArgXmm2M128),
+ /*7377*/ uint16(x86_xMatch),
+ /*7378*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7390,
+ 0x0, 7384,
+ /*7384*/ uint16(x86_xSetOp), uint16(x86_PAND),
+ /*7386*/ uint16(x86_xReadSlashR),
+ /*7387*/ uint16(x86_xArgMm),
+ /*7388*/ uint16(x86_xArgMmM64),
+ /*7389*/ uint16(x86_xMatch),
+ /*7390*/ uint16(x86_xSetOp), uint16(x86_PAND),
+ /*7392*/ uint16(x86_xReadSlashR),
+ /*7393*/ uint16(x86_xArgXmm1),
+ /*7394*/ uint16(x86_xArgXmm2M128),
+ /*7395*/ uint16(x86_xMatch),
+ /*7396*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7408,
+ 0x0, 7402,
+ /*7402*/ uint16(x86_xSetOp), uint16(x86_PADDUSB),
+ /*7404*/ uint16(x86_xReadSlashR),
+ /*7405*/ uint16(x86_xArgMm),
+ /*7406*/ uint16(x86_xArgMmM64),
+ /*7407*/ uint16(x86_xMatch),
+ /*7408*/ uint16(x86_xSetOp), uint16(x86_PADDUSB),
+ /*7410*/ uint16(x86_xReadSlashR),
+ /*7411*/ uint16(x86_xArgXmm1),
+ /*7412*/ uint16(x86_xArgXmm2M128),
+ /*7413*/ uint16(x86_xMatch),
+ /*7414*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7426,
+ 0x0, 7420,
+ /*7420*/ uint16(x86_xSetOp), uint16(x86_PADDUSW),
+ /*7422*/ uint16(x86_xReadSlashR),
+ /*7423*/ uint16(x86_xArgMm),
+ /*7424*/ uint16(x86_xArgMmM64),
+ /*7425*/ uint16(x86_xMatch),
+ /*7426*/ uint16(x86_xSetOp), uint16(x86_PADDUSW),
+ /*7428*/ uint16(x86_xReadSlashR),
+ /*7429*/ uint16(x86_xArgXmm1),
+ /*7430*/ uint16(x86_xArgXmm2M128),
+ /*7431*/ uint16(x86_xMatch),
+ /*7432*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7444,
+ 0x0, 7438,
+ /*7438*/ uint16(x86_xSetOp), uint16(x86_PMAXUB),
+ /*7440*/ uint16(x86_xReadSlashR),
+ /*7441*/ uint16(x86_xArgMm1),
+ /*7442*/ uint16(x86_xArgMm2M64),
+ /*7443*/ uint16(x86_xMatch),
+ /*7444*/ uint16(x86_xSetOp), uint16(x86_PMAXUB),
+ /*7446*/ uint16(x86_xReadSlashR),
+ /*7447*/ uint16(x86_xArgXmm1),
+ /*7448*/ uint16(x86_xArgXmm2M128),
+ /*7449*/ uint16(x86_xMatch),
+ /*7450*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7462,
+ 0x0, 7456,
+ /*7456*/ uint16(x86_xSetOp), uint16(x86_PANDN),
+ /*7458*/ uint16(x86_xReadSlashR),
+ /*7459*/ uint16(x86_xArgMm),
+ /*7460*/ uint16(x86_xArgMmM64),
+ /*7461*/ uint16(x86_xMatch),
+ /*7462*/ uint16(x86_xSetOp), uint16(x86_PANDN),
+ /*7464*/ uint16(x86_xReadSlashR),
+ /*7465*/ uint16(x86_xArgXmm1),
+ /*7466*/ uint16(x86_xArgXmm2M128),
+ /*7467*/ uint16(x86_xMatch),
+ /*7468*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7480,
+ 0x0, 7474,
+ /*7474*/ uint16(x86_xSetOp), uint16(x86_PAVGB),
+ /*7476*/ uint16(x86_xReadSlashR),
+ /*7477*/ uint16(x86_xArgMm1),
+ /*7478*/ uint16(x86_xArgMm2M64),
+ /*7479*/ uint16(x86_xMatch),
+ /*7480*/ uint16(x86_xSetOp), uint16(x86_PAVGB),
+ /*7482*/ uint16(x86_xReadSlashR),
+ /*7483*/ uint16(x86_xArgXmm1),
+ /*7484*/ uint16(x86_xArgXmm2M128),
+ /*7485*/ uint16(x86_xMatch),
+ /*7486*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7498,
+ 0x0, 7492,
+ /*7492*/ uint16(x86_xSetOp), uint16(x86_PSRAW),
+ /*7494*/ uint16(x86_xReadSlashR),
+ /*7495*/ uint16(x86_xArgMm),
+ /*7496*/ uint16(x86_xArgMmM64),
+ /*7497*/ uint16(x86_xMatch),
+ /*7498*/ uint16(x86_xSetOp), uint16(x86_PSRAW),
+ /*7500*/ uint16(x86_xReadSlashR),
+ /*7501*/ uint16(x86_xArgXmm1),
+ /*7502*/ uint16(x86_xArgXmm2M128),
+ /*7503*/ uint16(x86_xMatch),
+ /*7504*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7516,
+ 0x0, 7510,
+ /*7510*/ uint16(x86_xSetOp), uint16(x86_PSRAD),
+ /*7512*/ uint16(x86_xReadSlashR),
+ /*7513*/ uint16(x86_xArgMm),
+ /*7514*/ uint16(x86_xArgMmM64),
+ /*7515*/ uint16(x86_xMatch),
+ /*7516*/ uint16(x86_xSetOp), uint16(x86_PSRAD),
+ /*7518*/ uint16(x86_xReadSlashR),
+ /*7519*/ uint16(x86_xArgXmm1),
+ /*7520*/ uint16(x86_xArgXmm2M128),
+ /*7521*/ uint16(x86_xMatch),
+ /*7522*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7534,
+ 0x0, 7528,
+ /*7528*/ uint16(x86_xSetOp), uint16(x86_PAVGW),
+ /*7530*/ uint16(x86_xReadSlashR),
+ /*7531*/ uint16(x86_xArgMm1),
+ /*7532*/ uint16(x86_xArgMm2M64),
+ /*7533*/ uint16(x86_xMatch),
+ /*7534*/ uint16(x86_xSetOp), uint16(x86_PAVGW),
+ /*7536*/ uint16(x86_xReadSlashR),
+ /*7537*/ uint16(x86_xArgXmm1),
+ /*7538*/ uint16(x86_xArgXmm2M128),
+ /*7539*/ uint16(x86_xMatch),
+ /*7540*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7552,
+ 0x0, 7546,
+ /*7546*/ uint16(x86_xSetOp), uint16(x86_PMULHUW),
+ /*7548*/ uint16(x86_xReadSlashR),
+ /*7549*/ uint16(x86_xArgMm1),
+ /*7550*/ uint16(x86_xArgMm2M64),
+ /*7551*/ uint16(x86_xMatch),
+ /*7552*/ uint16(x86_xSetOp), uint16(x86_PMULHUW),
+ /*7554*/ uint16(x86_xReadSlashR),
+ /*7555*/ uint16(x86_xArgXmm1),
+ /*7556*/ uint16(x86_xArgXmm2M128),
+ /*7557*/ uint16(x86_xMatch),
+ /*7558*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7570,
+ 0x0, 7564,
+ /*7564*/ uint16(x86_xSetOp), uint16(x86_PMULHW),
+ /*7566*/ uint16(x86_xReadSlashR),
+ /*7567*/ uint16(x86_xArgMm),
+ /*7568*/ uint16(x86_xArgMmM64),
+ /*7569*/ uint16(x86_xMatch),
+ /*7570*/ uint16(x86_xSetOp), uint16(x86_PMULHW),
+ /*7572*/ uint16(x86_xReadSlashR),
+ /*7573*/ uint16(x86_xArgXmm1),
+ /*7574*/ uint16(x86_xArgXmm2M128),
+ /*7575*/ uint16(x86_xMatch),
+ /*7576*/ uint16(x86_xCondPrefix), 3,
+ 0xF3, 7596,
+ 0xF2, 7590,
+ 0x66, 7584,
+ /*7584*/ uint16(x86_xSetOp), uint16(x86_CVTTPD2DQ),
+ /*7586*/ uint16(x86_xReadSlashR),
+ /*7587*/ uint16(x86_xArgXmm1),
+ /*7588*/ uint16(x86_xArgXmm2M128),
+ /*7589*/ uint16(x86_xMatch),
+ /*7590*/ uint16(x86_xSetOp), uint16(x86_CVTPD2DQ),
+ /*7592*/ uint16(x86_xReadSlashR),
+ /*7593*/ uint16(x86_xArgXmm1),
+ /*7594*/ uint16(x86_xArgXmm2M128),
+ /*7595*/ uint16(x86_xMatch),
+ /*7596*/ uint16(x86_xSetOp), uint16(x86_CVTDQ2PD),
+ /*7598*/ uint16(x86_xReadSlashR),
+ /*7599*/ uint16(x86_xArgXmm1),
+ /*7600*/ uint16(x86_xArgXmm2M64),
+ /*7601*/ uint16(x86_xMatch),
+ /*7602*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7614,
+ 0x0, 7608,
+ /*7608*/ uint16(x86_xSetOp), uint16(x86_MOVNTQ),
+ /*7610*/ uint16(x86_xReadSlashR),
+ /*7611*/ uint16(x86_xArgM64),
+ /*7612*/ uint16(x86_xArgMm),
+ /*7613*/ uint16(x86_xMatch),
+ /*7614*/ uint16(x86_xSetOp), uint16(x86_MOVNTDQ),
+ /*7616*/ uint16(x86_xReadSlashR),
+ /*7617*/ uint16(x86_xArgM128),
+ /*7618*/ uint16(x86_xArgXmm),
+ /*7619*/ uint16(x86_xMatch),
+ /*7620*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7632,
+ 0x0, 7626,
+ /*7626*/ uint16(x86_xSetOp), uint16(x86_PSUBSB),
+ /*7628*/ uint16(x86_xReadSlashR),
+ /*7629*/ uint16(x86_xArgMm),
+ /*7630*/ uint16(x86_xArgMmM64),
+ /*7631*/ uint16(x86_xMatch),
+ /*7632*/ uint16(x86_xSetOp), uint16(x86_PSUBSB),
+ /*7634*/ uint16(x86_xReadSlashR),
+ /*7635*/ uint16(x86_xArgXmm1),
+ /*7636*/ uint16(x86_xArgXmm2M128),
+ /*7637*/ uint16(x86_xMatch),
+ /*7638*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7650,
+ 0x0, 7644,
+ /*7644*/ uint16(x86_xSetOp), uint16(x86_PSUBSW),
+ /*7646*/ uint16(x86_xReadSlashR),
+ /*7647*/ uint16(x86_xArgMm),
+ /*7648*/ uint16(x86_xArgMmM64),
+ /*7649*/ uint16(x86_xMatch),
+ /*7650*/ uint16(x86_xSetOp), uint16(x86_PSUBSW),
+ /*7652*/ uint16(x86_xReadSlashR),
+ /*7653*/ uint16(x86_xArgXmm1),
+ /*7654*/ uint16(x86_xArgXmm2M128),
+ /*7655*/ uint16(x86_xMatch),
+ /*7656*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7668,
+ 0x0, 7662,
+ /*7662*/ uint16(x86_xSetOp), uint16(x86_PMINSW),
+ /*7664*/ uint16(x86_xReadSlashR),
+ /*7665*/ uint16(x86_xArgMm1),
+ /*7666*/ uint16(x86_xArgMm2M64),
+ /*7667*/ uint16(x86_xMatch),
+ /*7668*/ uint16(x86_xSetOp), uint16(x86_PMINSW),
+ /*7670*/ uint16(x86_xReadSlashR),
+ /*7671*/ uint16(x86_xArgXmm1),
+ /*7672*/ uint16(x86_xArgXmm2M128),
+ /*7673*/ uint16(x86_xMatch),
+ /*7674*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7686,
+ 0x0, 7680,
+ /*7680*/ uint16(x86_xSetOp), uint16(x86_POR),
+ /*7682*/ uint16(x86_xReadSlashR),
+ /*7683*/ uint16(x86_xArgMm),
+ /*7684*/ uint16(x86_xArgMmM64),
+ /*7685*/ uint16(x86_xMatch),
+ /*7686*/ uint16(x86_xSetOp), uint16(x86_POR),
+ /*7688*/ uint16(x86_xReadSlashR),
+ /*7689*/ uint16(x86_xArgXmm1),
+ /*7690*/ uint16(x86_xArgXmm2M128),
+ /*7691*/ uint16(x86_xMatch),
+ /*7692*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7704,
+ 0x0, 7698,
+ /*7698*/ uint16(x86_xSetOp), uint16(x86_PADDSB),
+ /*7700*/ uint16(x86_xReadSlashR),
+ /*7701*/ uint16(x86_xArgMm),
+ /*7702*/ uint16(x86_xArgMmM64),
+ /*7703*/ uint16(x86_xMatch),
+ /*7704*/ uint16(x86_xSetOp), uint16(x86_PADDSB),
+ /*7706*/ uint16(x86_xReadSlashR),
+ /*7707*/ uint16(x86_xArgXmm1),
+ /*7708*/ uint16(x86_xArgXmm2M128),
+ /*7709*/ uint16(x86_xMatch),
+ /*7710*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7722,
+ 0x0, 7716,
+ /*7716*/ uint16(x86_xSetOp), uint16(x86_PADDSW),
+ /*7718*/ uint16(x86_xReadSlashR),
+ /*7719*/ uint16(x86_xArgMm),
+ /*7720*/ uint16(x86_xArgMmM64),
+ /*7721*/ uint16(x86_xMatch),
+ /*7722*/ uint16(x86_xSetOp), uint16(x86_PADDSW),
+ /*7724*/ uint16(x86_xReadSlashR),
+ /*7725*/ uint16(x86_xArgXmm1),
+ /*7726*/ uint16(x86_xArgXmm2M128),
+ /*7727*/ uint16(x86_xMatch),
+ /*7728*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7740,
+ 0x0, 7734,
+ /*7734*/ uint16(x86_xSetOp), uint16(x86_PMAXSW),
+ /*7736*/ uint16(x86_xReadSlashR),
+ /*7737*/ uint16(x86_xArgMm1),
+ /*7738*/ uint16(x86_xArgMm2M64),
+ /*7739*/ uint16(x86_xMatch),
+ /*7740*/ uint16(x86_xSetOp), uint16(x86_PMAXSW),
+ /*7742*/ uint16(x86_xReadSlashR),
+ /*7743*/ uint16(x86_xArgXmm1),
+ /*7744*/ uint16(x86_xArgXmm2M128),
+ /*7745*/ uint16(x86_xMatch),
+ /*7746*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7758,
+ 0x0, 7752,
+ /*7752*/ uint16(x86_xSetOp), uint16(x86_PXOR),
+ /*7754*/ uint16(x86_xReadSlashR),
+ /*7755*/ uint16(x86_xArgMm),
+ /*7756*/ uint16(x86_xArgMmM64),
+ /*7757*/ uint16(x86_xMatch),
+ /*7758*/ uint16(x86_xSetOp), uint16(x86_PXOR),
+ /*7760*/ uint16(x86_xReadSlashR),
+ /*7761*/ uint16(x86_xArgXmm1),
+ /*7762*/ uint16(x86_xArgXmm2M128),
+ /*7763*/ uint16(x86_xMatch),
+ /*7764*/ uint16(x86_xCondPrefix), 1,
+ 0xF2, 7768,
+ /*7768*/ uint16(x86_xSetOp), uint16(x86_LDDQU),
+ /*7770*/ uint16(x86_xReadSlashR),
+ /*7771*/ uint16(x86_xArgXmm1),
+ /*7772*/ uint16(x86_xArgM128),
+ /*7773*/ uint16(x86_xMatch),
+ /*7774*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7786,
+ 0x0, 7780,
+ /*7780*/ uint16(x86_xSetOp), uint16(x86_PSLLW),
+ /*7782*/ uint16(x86_xReadSlashR),
+ /*7783*/ uint16(x86_xArgMm),
+ /*7784*/ uint16(x86_xArgMmM64),
+ /*7785*/ uint16(x86_xMatch),
+ /*7786*/ uint16(x86_xSetOp), uint16(x86_PSLLW),
+ /*7788*/ uint16(x86_xReadSlashR),
+ /*7789*/ uint16(x86_xArgXmm1),
+ /*7790*/ uint16(x86_xArgXmm2M128),
+ /*7791*/ uint16(x86_xMatch),
+ /*7792*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7804,
+ 0x0, 7798,
+ /*7798*/ uint16(x86_xSetOp), uint16(x86_PSLLD),
+ /*7800*/ uint16(x86_xReadSlashR),
+ /*7801*/ uint16(x86_xArgMm),
+ /*7802*/ uint16(x86_xArgMmM64),
+ /*7803*/ uint16(x86_xMatch),
+ /*7804*/ uint16(x86_xSetOp), uint16(x86_PSLLD),
+ /*7806*/ uint16(x86_xReadSlashR),
+ /*7807*/ uint16(x86_xArgXmm1),
+ /*7808*/ uint16(x86_xArgXmm2M128),
+ /*7809*/ uint16(x86_xMatch),
+ /*7810*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7822,
+ 0x0, 7816,
+ /*7816*/ uint16(x86_xSetOp), uint16(x86_PSLLQ),
+ /*7818*/ uint16(x86_xReadSlashR),
+ /*7819*/ uint16(x86_xArgMm),
+ /*7820*/ uint16(x86_xArgMmM64),
+ /*7821*/ uint16(x86_xMatch),
+ /*7822*/ uint16(x86_xSetOp), uint16(x86_PSLLQ),
+ /*7824*/ uint16(x86_xReadSlashR),
+ /*7825*/ uint16(x86_xArgXmm1),
+ /*7826*/ uint16(x86_xArgXmm2M128),
+ /*7827*/ uint16(x86_xMatch),
+ /*7828*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7840,
+ 0x0, 7834,
+ /*7834*/ uint16(x86_xSetOp), uint16(x86_PMULUDQ),
+ /*7836*/ uint16(x86_xReadSlashR),
+ /*7837*/ uint16(x86_xArgMm1),
+ /*7838*/ uint16(x86_xArgMm2M64),
+ /*7839*/ uint16(x86_xMatch),
+ /*7840*/ uint16(x86_xSetOp), uint16(x86_PMULUDQ),
+ /*7842*/ uint16(x86_xReadSlashR),
+ /*7843*/ uint16(x86_xArgXmm1),
+ /*7844*/ uint16(x86_xArgXmm2M128),
+ /*7845*/ uint16(x86_xMatch),
+ /*7846*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7858,
+ 0x0, 7852,
+ /*7852*/ uint16(x86_xSetOp), uint16(x86_PMADDWD),
+ /*7854*/ uint16(x86_xReadSlashR),
+ /*7855*/ uint16(x86_xArgMm),
+ /*7856*/ uint16(x86_xArgMmM64),
+ /*7857*/ uint16(x86_xMatch),
+ /*7858*/ uint16(x86_xSetOp), uint16(x86_PMADDWD),
+ /*7860*/ uint16(x86_xReadSlashR),
+ /*7861*/ uint16(x86_xArgXmm1),
+ /*7862*/ uint16(x86_xArgXmm2M128),
+ /*7863*/ uint16(x86_xMatch),
+ /*7864*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7876,
+ 0x0, 7870,
+ /*7870*/ uint16(x86_xSetOp), uint16(x86_PSADBW),
+ /*7872*/ uint16(x86_xReadSlashR),
+ /*7873*/ uint16(x86_xArgMm1),
+ /*7874*/ uint16(x86_xArgMm2M64),
+ /*7875*/ uint16(x86_xMatch),
+ /*7876*/ uint16(x86_xSetOp), uint16(x86_PSADBW),
+ /*7878*/ uint16(x86_xReadSlashR),
+ /*7879*/ uint16(x86_xArgXmm1),
+ /*7880*/ uint16(x86_xArgXmm2M128),
+ /*7881*/ uint16(x86_xMatch),
+ /*7882*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7894,
+ 0x0, 7888,
+ /*7888*/ uint16(x86_xSetOp), uint16(x86_MASKMOVQ),
+ /*7890*/ uint16(x86_xReadSlashR),
+ /*7891*/ uint16(x86_xArgMm1),
+ /*7892*/ uint16(x86_xArgMm2),
+ /*7893*/ uint16(x86_xMatch),
+ /*7894*/ uint16(x86_xSetOp), uint16(x86_MASKMOVDQU),
+ /*7896*/ uint16(x86_xReadSlashR),
+ /*7897*/ uint16(x86_xArgXmm1),
+ /*7898*/ uint16(x86_xArgXmm2),
+ /*7899*/ uint16(x86_xMatch),
+ /*7900*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7912,
+ 0x0, 7906,
+ /*7906*/ uint16(x86_xSetOp), uint16(x86_PSUBB),
+ /*7908*/ uint16(x86_xReadSlashR),
+ /*7909*/ uint16(x86_xArgMm),
+ /*7910*/ uint16(x86_xArgMmM64),
+ /*7911*/ uint16(x86_xMatch),
+ /*7912*/ uint16(x86_xSetOp), uint16(x86_PSUBB),
+ /*7914*/ uint16(x86_xReadSlashR),
+ /*7915*/ uint16(x86_xArgXmm1),
+ /*7916*/ uint16(x86_xArgXmm2M128),
+ /*7917*/ uint16(x86_xMatch),
+ /*7918*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7930,
+ 0x0, 7924,
+ /*7924*/ uint16(x86_xSetOp), uint16(x86_PSUBW),
+ /*7926*/ uint16(x86_xReadSlashR),
+ /*7927*/ uint16(x86_xArgMm),
+ /*7928*/ uint16(x86_xArgMmM64),
+ /*7929*/ uint16(x86_xMatch),
+ /*7930*/ uint16(x86_xSetOp), uint16(x86_PSUBW),
+ /*7932*/ uint16(x86_xReadSlashR),
+ /*7933*/ uint16(x86_xArgXmm1),
+ /*7934*/ uint16(x86_xArgXmm2M128),
+ /*7935*/ uint16(x86_xMatch),
+ /*7936*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7948,
+ 0x0, 7942,
+ /*7942*/ uint16(x86_xSetOp), uint16(x86_PSUBD),
+ /*7944*/ uint16(x86_xReadSlashR),
+ /*7945*/ uint16(x86_xArgMm),
+ /*7946*/ uint16(x86_xArgMmM64),
+ /*7947*/ uint16(x86_xMatch),
+ /*7948*/ uint16(x86_xSetOp), uint16(x86_PSUBD),
+ /*7950*/ uint16(x86_xReadSlashR),
+ /*7951*/ uint16(x86_xArgXmm1),
+ /*7952*/ uint16(x86_xArgXmm2M128),
+ /*7953*/ uint16(x86_xMatch),
+ /*7954*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7966,
+ 0x0, 7960,
+ /*7960*/ uint16(x86_xSetOp), uint16(x86_PSUBQ),
+ /*7962*/ uint16(x86_xReadSlashR),
+ /*7963*/ uint16(x86_xArgMm1),
+ /*7964*/ uint16(x86_xArgMm2M64),
+ /*7965*/ uint16(x86_xMatch),
+ /*7966*/ uint16(x86_xSetOp), uint16(x86_PSUBQ),
+ /*7968*/ uint16(x86_xReadSlashR),
+ /*7969*/ uint16(x86_xArgXmm1),
+ /*7970*/ uint16(x86_xArgXmm2M128),
+ /*7971*/ uint16(x86_xMatch),
+ /*7972*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 7984,
+ 0x0, 7978,
+ /*7978*/ uint16(x86_xSetOp), uint16(x86_PADDB),
+ /*7980*/ uint16(x86_xReadSlashR),
+ /*7981*/ uint16(x86_xArgMm),
+ /*7982*/ uint16(x86_xArgMmM64),
+ /*7983*/ uint16(x86_xMatch),
+ /*7984*/ uint16(x86_xSetOp), uint16(x86_PADDB),
+ /*7986*/ uint16(x86_xReadSlashR),
+ /*7987*/ uint16(x86_xArgXmm1),
+ /*7988*/ uint16(x86_xArgXmm2M128),
+ /*7989*/ uint16(x86_xMatch),
+ /*7990*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 8002,
+ 0x0, 7996,
+ /*7996*/ uint16(x86_xSetOp), uint16(x86_PADDW),
+ /*7998*/ uint16(x86_xReadSlashR),
+ /*7999*/ uint16(x86_xArgMm),
+ /*8000*/ uint16(x86_xArgMmM64),
+ /*8001*/ uint16(x86_xMatch),
+ /*8002*/ uint16(x86_xSetOp), uint16(x86_PADDW),
+ /*8004*/ uint16(x86_xReadSlashR),
+ /*8005*/ uint16(x86_xArgXmm1),
+ /*8006*/ uint16(x86_xArgXmm2M128),
+ /*8007*/ uint16(x86_xMatch),
+ /*8008*/ uint16(x86_xCondPrefix), 2,
+ 0x66, 8020,
+ 0x0, 8014,
+ /*8014*/ uint16(x86_xSetOp), uint16(x86_PADDD),
+ /*8016*/ uint16(x86_xReadSlashR),
+ /*8017*/ uint16(x86_xArgMm),
+ /*8018*/ uint16(x86_xArgMmM64),
+ /*8019*/ uint16(x86_xMatch),
+ /*8020*/ uint16(x86_xSetOp), uint16(x86_PADDD),
+ /*8022*/ uint16(x86_xReadSlashR),
+ /*8023*/ uint16(x86_xArgXmm1),
+ /*8024*/ uint16(x86_xArgXmm2M128),
+ /*8025*/ uint16(x86_xMatch),
+ /*8026*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8028*/ uint16(x86_xReadSlashR),
+ /*8029*/ uint16(x86_xArgRM8),
+ /*8030*/ uint16(x86_xArgR8),
+ /*8031*/ uint16(x86_xMatch),
+ /*8032*/ uint16(x86_xCondIs64), 8035, 8051,
+ /*8035*/ uint16(x86_xCondDataSize), 8039, 8045, 0,
+ /*8039*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8041*/ uint16(x86_xReadSlashR),
+ /*8042*/ uint16(x86_xArgRM16),
+ /*8043*/ uint16(x86_xArgR16),
+ /*8044*/ uint16(x86_xMatch),
+ /*8045*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8047*/ uint16(x86_xReadSlashR),
+ /*8048*/ uint16(x86_xArgRM32),
+ /*8049*/ uint16(x86_xArgR32),
+ /*8050*/ uint16(x86_xMatch),
+ /*8051*/ uint16(x86_xCondDataSize), 8039, 8045, 8055,
+ /*8055*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8057*/ uint16(x86_xReadSlashR),
+ /*8058*/ uint16(x86_xArgRM64),
+ /*8059*/ uint16(x86_xArgR64),
+ /*8060*/ uint16(x86_xMatch),
+ /*8061*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8063*/ uint16(x86_xReadSlashR),
+ /*8064*/ uint16(x86_xArgR8),
+ /*8065*/ uint16(x86_xArgRM8),
+ /*8066*/ uint16(x86_xMatch),
+ /*8067*/ uint16(x86_xCondIs64), 8070, 8086,
+ /*8070*/ uint16(x86_xCondDataSize), 8074, 8080, 0,
+ /*8074*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8076*/ uint16(x86_xReadSlashR),
+ /*8077*/ uint16(x86_xArgR16),
+ /*8078*/ uint16(x86_xArgRM16),
+ /*8079*/ uint16(x86_xMatch),
+ /*8080*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8082*/ uint16(x86_xReadSlashR),
+ /*8083*/ uint16(x86_xArgR32),
+ /*8084*/ uint16(x86_xArgRM32),
+ /*8085*/ uint16(x86_xMatch),
+ /*8086*/ uint16(x86_xCondDataSize), 8074, 8080, 8090,
+ /*8090*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8092*/ uint16(x86_xReadSlashR),
+ /*8093*/ uint16(x86_xArgR64),
+ /*8094*/ uint16(x86_xArgRM64),
+ /*8095*/ uint16(x86_xMatch),
+ /*8096*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8098*/ uint16(x86_xReadIb),
+ /*8099*/ uint16(x86_xArgAL),
+ /*8100*/ uint16(x86_xArgImm8u),
+ /*8101*/ uint16(x86_xMatch),
+ /*8102*/ uint16(x86_xCondIs64), 8105, 8121,
+ /*8105*/ uint16(x86_xCondDataSize), 8109, 8115, 0,
+ /*8109*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8111*/ uint16(x86_xReadIw),
+ /*8112*/ uint16(x86_xArgAX),
+ /*8113*/ uint16(x86_xArgImm16),
+ /*8114*/ uint16(x86_xMatch),
+ /*8115*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8117*/ uint16(x86_xReadId),
+ /*8118*/ uint16(x86_xArgEAX),
+ /*8119*/ uint16(x86_xArgImm32),
+ /*8120*/ uint16(x86_xMatch),
+ /*8121*/ uint16(x86_xCondDataSize), 8109, 8115, 8125,
+ /*8125*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*8127*/ uint16(x86_xReadId),
+ /*8128*/ uint16(x86_xArgRAX),
+ /*8129*/ uint16(x86_xArgImm32),
+ /*8130*/ uint16(x86_xMatch),
+ /*8131*/ uint16(x86_xCondIs64), 8134, 0,
+ /*8134*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8136*/ uint16(x86_xArgSS),
+ /*8137*/ uint16(x86_xMatch),
+ /*8138*/ uint16(x86_xCondIs64), 8141, 0,
+ /*8141*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*8143*/ uint16(x86_xArgSS),
+ /*8144*/ uint16(x86_xMatch),
+ /*8145*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8147*/ uint16(x86_xReadSlashR),
+ /*8148*/ uint16(x86_xArgRM8),
+ /*8149*/ uint16(x86_xArgR8),
+ /*8150*/ uint16(x86_xMatch),
+ /*8151*/ uint16(x86_xCondIs64), 8154, 8170,
+ /*8154*/ uint16(x86_xCondDataSize), 8158, 8164, 0,
+ /*8158*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8160*/ uint16(x86_xReadSlashR),
+ /*8161*/ uint16(x86_xArgRM16),
+ /*8162*/ uint16(x86_xArgR16),
+ /*8163*/ uint16(x86_xMatch),
+ /*8164*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8166*/ uint16(x86_xReadSlashR),
+ /*8167*/ uint16(x86_xArgRM32),
+ /*8168*/ uint16(x86_xArgR32),
+ /*8169*/ uint16(x86_xMatch),
+ /*8170*/ uint16(x86_xCondDataSize), 8158, 8164, 8174,
+ /*8174*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8176*/ uint16(x86_xReadSlashR),
+ /*8177*/ uint16(x86_xArgRM64),
+ /*8178*/ uint16(x86_xArgR64),
+ /*8179*/ uint16(x86_xMatch),
+ /*8180*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8182*/ uint16(x86_xReadSlashR),
+ /*8183*/ uint16(x86_xArgR8),
+ /*8184*/ uint16(x86_xArgRM8),
+ /*8185*/ uint16(x86_xMatch),
+ /*8186*/ uint16(x86_xCondIs64), 8189, 8205,
+ /*8189*/ uint16(x86_xCondDataSize), 8193, 8199, 0,
+ /*8193*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8195*/ uint16(x86_xReadSlashR),
+ /*8196*/ uint16(x86_xArgR16),
+ /*8197*/ uint16(x86_xArgRM16),
+ /*8198*/ uint16(x86_xMatch),
+ /*8199*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8201*/ uint16(x86_xReadSlashR),
+ /*8202*/ uint16(x86_xArgR32),
+ /*8203*/ uint16(x86_xArgRM32),
+ /*8204*/ uint16(x86_xMatch),
+ /*8205*/ uint16(x86_xCondDataSize), 8193, 8199, 8209,
+ /*8209*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8211*/ uint16(x86_xReadSlashR),
+ /*8212*/ uint16(x86_xArgR64),
+ /*8213*/ uint16(x86_xArgRM64),
+ /*8214*/ uint16(x86_xMatch),
+ /*8215*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8217*/ uint16(x86_xReadIb),
+ /*8218*/ uint16(x86_xArgAL),
+ /*8219*/ uint16(x86_xArgImm8u),
+ /*8220*/ uint16(x86_xMatch),
+ /*8221*/ uint16(x86_xCondIs64), 8224, 8240,
+ /*8224*/ uint16(x86_xCondDataSize), 8228, 8234, 0,
+ /*8228*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8230*/ uint16(x86_xReadIw),
+ /*8231*/ uint16(x86_xArgAX),
+ /*8232*/ uint16(x86_xArgImm16),
+ /*8233*/ uint16(x86_xMatch),
+ /*8234*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8236*/ uint16(x86_xReadId),
+ /*8237*/ uint16(x86_xArgEAX),
+ /*8238*/ uint16(x86_xArgImm32),
+ /*8239*/ uint16(x86_xMatch),
+ /*8240*/ uint16(x86_xCondDataSize), 8228, 8234, 8244,
+ /*8244*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*8246*/ uint16(x86_xReadId),
+ /*8247*/ uint16(x86_xArgRAX),
+ /*8248*/ uint16(x86_xArgImm32),
+ /*8249*/ uint16(x86_xMatch),
+ /*8250*/ uint16(x86_xCondIs64), 8253, 0,
+ /*8253*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8255*/ uint16(x86_xArgDS),
+ /*8256*/ uint16(x86_xMatch),
+ /*8257*/ uint16(x86_xCondIs64), 8260, 0,
+ /*8260*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*8262*/ uint16(x86_xArgDS),
+ /*8263*/ uint16(x86_xMatch),
+ /*8264*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8266*/ uint16(x86_xReadSlashR),
+ /*8267*/ uint16(x86_xArgRM8),
+ /*8268*/ uint16(x86_xArgR8),
+ /*8269*/ uint16(x86_xMatch),
+ /*8270*/ uint16(x86_xCondIs64), 8273, 8289,
+ /*8273*/ uint16(x86_xCondDataSize), 8277, 8283, 0,
+ /*8277*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8279*/ uint16(x86_xReadSlashR),
+ /*8280*/ uint16(x86_xArgRM16),
+ /*8281*/ uint16(x86_xArgR16),
+ /*8282*/ uint16(x86_xMatch),
+ /*8283*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8285*/ uint16(x86_xReadSlashR),
+ /*8286*/ uint16(x86_xArgRM32),
+ /*8287*/ uint16(x86_xArgR32),
+ /*8288*/ uint16(x86_xMatch),
+ /*8289*/ uint16(x86_xCondDataSize), 8277, 8283, 8293,
+ /*8293*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8295*/ uint16(x86_xReadSlashR),
+ /*8296*/ uint16(x86_xArgRM64),
+ /*8297*/ uint16(x86_xArgR64),
+ /*8298*/ uint16(x86_xMatch),
+ /*8299*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8301*/ uint16(x86_xReadSlashR),
+ /*8302*/ uint16(x86_xArgR8),
+ /*8303*/ uint16(x86_xArgRM8),
+ /*8304*/ uint16(x86_xMatch),
+ /*8305*/ uint16(x86_xCondIs64), 8308, 8324,
+ /*8308*/ uint16(x86_xCondDataSize), 8312, 8318, 0,
+ /*8312*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8314*/ uint16(x86_xReadSlashR),
+ /*8315*/ uint16(x86_xArgR16),
+ /*8316*/ uint16(x86_xArgRM16),
+ /*8317*/ uint16(x86_xMatch),
+ /*8318*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8320*/ uint16(x86_xReadSlashR),
+ /*8321*/ uint16(x86_xArgR32),
+ /*8322*/ uint16(x86_xArgRM32),
+ /*8323*/ uint16(x86_xMatch),
+ /*8324*/ uint16(x86_xCondDataSize), 8312, 8318, 8328,
+ /*8328*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8330*/ uint16(x86_xReadSlashR),
+ /*8331*/ uint16(x86_xArgR64),
+ /*8332*/ uint16(x86_xArgRM64),
+ /*8333*/ uint16(x86_xMatch),
+ /*8334*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8336*/ uint16(x86_xReadIb),
+ /*8337*/ uint16(x86_xArgAL),
+ /*8338*/ uint16(x86_xArgImm8u),
+ /*8339*/ uint16(x86_xMatch),
+ /*8340*/ uint16(x86_xCondIs64), 8343, 8359,
+ /*8343*/ uint16(x86_xCondDataSize), 8347, 8353, 0,
+ /*8347*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8349*/ uint16(x86_xReadIw),
+ /*8350*/ uint16(x86_xArgAX),
+ /*8351*/ uint16(x86_xArgImm16),
+ /*8352*/ uint16(x86_xMatch),
+ /*8353*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8355*/ uint16(x86_xReadId),
+ /*8356*/ uint16(x86_xArgEAX),
+ /*8357*/ uint16(x86_xArgImm32),
+ /*8358*/ uint16(x86_xMatch),
+ /*8359*/ uint16(x86_xCondDataSize), 8347, 8353, 8363,
+ /*8363*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*8365*/ uint16(x86_xReadId),
+ /*8366*/ uint16(x86_xArgRAX),
+ /*8367*/ uint16(x86_xArgImm32),
+ /*8368*/ uint16(x86_xMatch),
+ /*8369*/ uint16(x86_xCondIs64), 8372, 0,
+ /*8372*/ uint16(x86_xSetOp), uint16(x86_DAA),
+ /*8374*/ uint16(x86_xMatch),
+ /*8375*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8377*/ uint16(x86_xReadSlashR),
+ /*8378*/ uint16(x86_xArgRM8),
+ /*8379*/ uint16(x86_xArgR8),
+ /*8380*/ uint16(x86_xMatch),
+ /*8381*/ uint16(x86_xCondIs64), 8384, 8400,
+ /*8384*/ uint16(x86_xCondDataSize), 8388, 8394, 0,
+ /*8388*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8390*/ uint16(x86_xReadSlashR),
+ /*8391*/ uint16(x86_xArgRM16),
+ /*8392*/ uint16(x86_xArgR16),
+ /*8393*/ uint16(x86_xMatch),
+ /*8394*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8396*/ uint16(x86_xReadSlashR),
+ /*8397*/ uint16(x86_xArgRM32),
+ /*8398*/ uint16(x86_xArgR32),
+ /*8399*/ uint16(x86_xMatch),
+ /*8400*/ uint16(x86_xCondDataSize), 8388, 8394, 8404,
+ /*8404*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8406*/ uint16(x86_xReadSlashR),
+ /*8407*/ uint16(x86_xArgRM64),
+ /*8408*/ uint16(x86_xArgR64),
+ /*8409*/ uint16(x86_xMatch),
+ /*8410*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8412*/ uint16(x86_xReadSlashR),
+ /*8413*/ uint16(x86_xArgR8),
+ /*8414*/ uint16(x86_xArgRM8),
+ /*8415*/ uint16(x86_xMatch),
+ /*8416*/ uint16(x86_xCondIs64), 8419, 8435,
+ /*8419*/ uint16(x86_xCondDataSize), 8423, 8429, 0,
+ /*8423*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8425*/ uint16(x86_xReadSlashR),
+ /*8426*/ uint16(x86_xArgR16),
+ /*8427*/ uint16(x86_xArgRM16),
+ /*8428*/ uint16(x86_xMatch),
+ /*8429*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8431*/ uint16(x86_xReadSlashR),
+ /*8432*/ uint16(x86_xArgR32),
+ /*8433*/ uint16(x86_xArgRM32),
+ /*8434*/ uint16(x86_xMatch),
+ /*8435*/ uint16(x86_xCondDataSize), 8423, 8429, 8439,
+ /*8439*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8441*/ uint16(x86_xReadSlashR),
+ /*8442*/ uint16(x86_xArgR64),
+ /*8443*/ uint16(x86_xArgRM64),
+ /*8444*/ uint16(x86_xMatch),
+ /*8445*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8447*/ uint16(x86_xReadIb),
+ /*8448*/ uint16(x86_xArgAL),
+ /*8449*/ uint16(x86_xArgImm8u),
+ /*8450*/ uint16(x86_xMatch),
+ /*8451*/ uint16(x86_xCondIs64), 8454, 8470,
+ /*8454*/ uint16(x86_xCondDataSize), 8458, 8464, 0,
+ /*8458*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8460*/ uint16(x86_xReadIw),
+ /*8461*/ uint16(x86_xArgAX),
+ /*8462*/ uint16(x86_xArgImm16),
+ /*8463*/ uint16(x86_xMatch),
+ /*8464*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8466*/ uint16(x86_xReadId),
+ /*8467*/ uint16(x86_xArgEAX),
+ /*8468*/ uint16(x86_xArgImm32),
+ /*8469*/ uint16(x86_xMatch),
+ /*8470*/ uint16(x86_xCondDataSize), 8458, 8464, 8474,
+ /*8474*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*8476*/ uint16(x86_xReadId),
+ /*8477*/ uint16(x86_xArgRAX),
+ /*8478*/ uint16(x86_xArgImm32),
+ /*8479*/ uint16(x86_xMatch),
+ /*8480*/ uint16(x86_xCondIs64), 8483, 0,
+ /*8483*/ uint16(x86_xSetOp), uint16(x86_DAS),
+ /*8485*/ uint16(x86_xMatch),
+ /*8486*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8488*/ uint16(x86_xReadSlashR),
+ /*8489*/ uint16(x86_xArgRM8),
+ /*8490*/ uint16(x86_xArgR8),
+ /*8491*/ uint16(x86_xMatch),
+ /*8492*/ uint16(x86_xCondIs64), 8495, 8511,
+ /*8495*/ uint16(x86_xCondDataSize), 8499, 8505, 0,
+ /*8499*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8501*/ uint16(x86_xReadSlashR),
+ /*8502*/ uint16(x86_xArgRM16),
+ /*8503*/ uint16(x86_xArgR16),
+ /*8504*/ uint16(x86_xMatch),
+ /*8505*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8507*/ uint16(x86_xReadSlashR),
+ /*8508*/ uint16(x86_xArgRM32),
+ /*8509*/ uint16(x86_xArgR32),
+ /*8510*/ uint16(x86_xMatch),
+ /*8511*/ uint16(x86_xCondDataSize), 8499, 8505, 8515,
+ /*8515*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8517*/ uint16(x86_xReadSlashR),
+ /*8518*/ uint16(x86_xArgRM64),
+ /*8519*/ uint16(x86_xArgR64),
+ /*8520*/ uint16(x86_xMatch),
+ /*8521*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8523*/ uint16(x86_xReadSlashR),
+ /*8524*/ uint16(x86_xArgR8),
+ /*8525*/ uint16(x86_xArgRM8),
+ /*8526*/ uint16(x86_xMatch),
+ /*8527*/ uint16(x86_xCondIs64), 8530, 8546,
+ /*8530*/ uint16(x86_xCondDataSize), 8534, 8540, 0,
+ /*8534*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8536*/ uint16(x86_xReadSlashR),
+ /*8537*/ uint16(x86_xArgR16),
+ /*8538*/ uint16(x86_xArgRM16),
+ /*8539*/ uint16(x86_xMatch),
+ /*8540*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8542*/ uint16(x86_xReadSlashR),
+ /*8543*/ uint16(x86_xArgR32),
+ /*8544*/ uint16(x86_xArgRM32),
+ /*8545*/ uint16(x86_xMatch),
+ /*8546*/ uint16(x86_xCondDataSize), 8534, 8540, 8550,
+ /*8550*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8552*/ uint16(x86_xReadSlashR),
+ /*8553*/ uint16(x86_xArgR64),
+ /*8554*/ uint16(x86_xArgRM64),
+ /*8555*/ uint16(x86_xMatch),
+ /*8556*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8558*/ uint16(x86_xReadIb),
+ /*8559*/ uint16(x86_xArgAL),
+ /*8560*/ uint16(x86_xArgImm8u),
+ /*8561*/ uint16(x86_xMatch),
+ /*8562*/ uint16(x86_xCondIs64), 8565, 8581,
+ /*8565*/ uint16(x86_xCondDataSize), 8569, 8575, 0,
+ /*8569*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8571*/ uint16(x86_xReadIw),
+ /*8572*/ uint16(x86_xArgAX),
+ /*8573*/ uint16(x86_xArgImm16),
+ /*8574*/ uint16(x86_xMatch),
+ /*8575*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8577*/ uint16(x86_xReadId),
+ /*8578*/ uint16(x86_xArgEAX),
+ /*8579*/ uint16(x86_xArgImm32),
+ /*8580*/ uint16(x86_xMatch),
+ /*8581*/ uint16(x86_xCondDataSize), 8569, 8575, 8585,
+ /*8585*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*8587*/ uint16(x86_xReadId),
+ /*8588*/ uint16(x86_xArgRAX),
+ /*8589*/ uint16(x86_xArgImm32),
+ /*8590*/ uint16(x86_xMatch),
+ /*8591*/ uint16(x86_xCondIs64), 8594, 0,
+ /*8594*/ uint16(x86_xSetOp), uint16(x86_AAA),
+ /*8596*/ uint16(x86_xMatch),
+ /*8597*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8599*/ uint16(x86_xReadSlashR),
+ /*8600*/ uint16(x86_xArgRM8),
+ /*8601*/ uint16(x86_xArgR8),
+ /*8602*/ uint16(x86_xMatch),
+ /*8603*/ uint16(x86_xCondIs64), 8606, 8622,
+ /*8606*/ uint16(x86_xCondDataSize), 8610, 8616, 0,
+ /*8610*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8612*/ uint16(x86_xReadSlashR),
+ /*8613*/ uint16(x86_xArgRM16),
+ /*8614*/ uint16(x86_xArgR16),
+ /*8615*/ uint16(x86_xMatch),
+ /*8616*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8618*/ uint16(x86_xReadSlashR),
+ /*8619*/ uint16(x86_xArgRM32),
+ /*8620*/ uint16(x86_xArgR32),
+ /*8621*/ uint16(x86_xMatch),
+ /*8622*/ uint16(x86_xCondDataSize), 8610, 8616, 8626,
+ /*8626*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8628*/ uint16(x86_xReadSlashR),
+ /*8629*/ uint16(x86_xArgRM64),
+ /*8630*/ uint16(x86_xArgR64),
+ /*8631*/ uint16(x86_xMatch),
+ /*8632*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8634*/ uint16(x86_xReadSlashR),
+ /*8635*/ uint16(x86_xArgR8),
+ /*8636*/ uint16(x86_xArgRM8),
+ /*8637*/ uint16(x86_xMatch),
+ /*8638*/ uint16(x86_xCondIs64), 8641, 8657,
+ /*8641*/ uint16(x86_xCondDataSize), 8645, 8651, 0,
+ /*8645*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8647*/ uint16(x86_xReadSlashR),
+ /*8648*/ uint16(x86_xArgR16),
+ /*8649*/ uint16(x86_xArgRM16),
+ /*8650*/ uint16(x86_xMatch),
+ /*8651*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8653*/ uint16(x86_xReadSlashR),
+ /*8654*/ uint16(x86_xArgR32),
+ /*8655*/ uint16(x86_xArgRM32),
+ /*8656*/ uint16(x86_xMatch),
+ /*8657*/ uint16(x86_xCondDataSize), 8645, 8651, 8661,
+ /*8661*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8663*/ uint16(x86_xReadSlashR),
+ /*8664*/ uint16(x86_xArgR64),
+ /*8665*/ uint16(x86_xArgRM64),
+ /*8666*/ uint16(x86_xMatch),
+ /*8667*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8669*/ uint16(x86_xReadIb),
+ /*8670*/ uint16(x86_xArgAL),
+ /*8671*/ uint16(x86_xArgImm8u),
+ /*8672*/ uint16(x86_xMatch),
+ /*8673*/ uint16(x86_xCondIs64), 8676, 8692,
+ /*8676*/ uint16(x86_xCondDataSize), 8680, 8686, 0,
+ /*8680*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8682*/ uint16(x86_xReadIw),
+ /*8683*/ uint16(x86_xArgAX),
+ /*8684*/ uint16(x86_xArgImm16),
+ /*8685*/ uint16(x86_xMatch),
+ /*8686*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8688*/ uint16(x86_xReadId),
+ /*8689*/ uint16(x86_xArgEAX),
+ /*8690*/ uint16(x86_xArgImm32),
+ /*8691*/ uint16(x86_xMatch),
+ /*8692*/ uint16(x86_xCondDataSize), 8680, 8686, 8696,
+ /*8696*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*8698*/ uint16(x86_xReadId),
+ /*8699*/ uint16(x86_xArgRAX),
+ /*8700*/ uint16(x86_xArgImm32),
+ /*8701*/ uint16(x86_xMatch),
+ /*8702*/ uint16(x86_xCondIs64), 8705, 0,
+ /*8705*/ uint16(x86_xSetOp), uint16(x86_AAS),
+ /*8707*/ uint16(x86_xMatch),
+ /*8708*/ uint16(x86_xCondIs64), 8711, 0,
+ /*8711*/ uint16(x86_xCondDataSize), 8715, 8719, 0,
+ /*8715*/ uint16(x86_xSetOp), uint16(x86_INC),
+ /*8717*/ uint16(x86_xArgR16op),
+ /*8718*/ uint16(x86_xMatch),
+ /*8719*/ uint16(x86_xSetOp), uint16(x86_INC),
+ /*8721*/ uint16(x86_xArgR32op),
+ /*8722*/ uint16(x86_xMatch),
+ /*8723*/ uint16(x86_xCondIs64), 8726, 0,
+ /*8726*/ uint16(x86_xCondDataSize), 8730, 8734, 0,
+ /*8730*/ uint16(x86_xSetOp), uint16(x86_DEC),
+ /*8732*/ uint16(x86_xArgR16op),
+ /*8733*/ uint16(x86_xMatch),
+ /*8734*/ uint16(x86_xSetOp), uint16(x86_DEC),
+ /*8736*/ uint16(x86_xArgR32op),
+ /*8737*/ uint16(x86_xMatch),
+ /*8738*/ uint16(x86_xCondIs64), 8741, 8753,
+ /*8741*/ uint16(x86_xCondDataSize), 8745, 8749, 0,
+ /*8745*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8747*/ uint16(x86_xArgR16op),
+ /*8748*/ uint16(x86_xMatch),
+ /*8749*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8751*/ uint16(x86_xArgR32op),
+ /*8752*/ uint16(x86_xMatch),
+ /*8753*/ uint16(x86_xCondDataSize), 8745, 8757, 8761,
+ /*8757*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8759*/ uint16(x86_xArgR64op),
+ /*8760*/ uint16(x86_xMatch),
+ /*8761*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8763*/ uint16(x86_xArgR64op),
+ /*8764*/ uint16(x86_xMatch),
+ /*8765*/ uint16(x86_xCondIs64), 8768, 8780,
+ /*8768*/ uint16(x86_xCondDataSize), 8772, 8776, 0,
+ /*8772*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*8774*/ uint16(x86_xArgR16op),
+ /*8775*/ uint16(x86_xMatch),
+ /*8776*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*8778*/ uint16(x86_xArgR32op),
+ /*8779*/ uint16(x86_xMatch),
+ /*8780*/ uint16(x86_xCondDataSize), 8772, 8784, 8788,
+ /*8784*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*8786*/ uint16(x86_xArgR64op),
+ /*8787*/ uint16(x86_xMatch),
+ /*8788*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*8790*/ uint16(x86_xArgR64op),
+ /*8791*/ uint16(x86_xMatch),
+ /*8792*/ uint16(x86_xCondIs64), 8795, 0,
+ /*8795*/ uint16(x86_xCondDataSize), 8799, 8802, 0,
+ /*8799*/ uint16(x86_xSetOp), uint16(x86_PUSHA),
+ /*8801*/ uint16(x86_xMatch),
+ /*8802*/ uint16(x86_xSetOp), uint16(x86_PUSHAD),
+ /*8804*/ uint16(x86_xMatch),
+ /*8805*/ uint16(x86_xCondIs64), 8808, 0,
+ /*8808*/ uint16(x86_xCondDataSize), 8812, 8815, 0,
+ /*8812*/ uint16(x86_xSetOp), uint16(x86_POPA),
+ /*8814*/ uint16(x86_xMatch),
+ /*8815*/ uint16(x86_xSetOp), uint16(x86_POPAD),
+ /*8817*/ uint16(x86_xMatch),
+ /*8818*/ uint16(x86_xCondIs64), 8821, 0,
+ /*8821*/ uint16(x86_xCondDataSize), 8825, 8831, 0,
+ /*8825*/ uint16(x86_xSetOp), uint16(x86_BOUND),
+ /*8827*/ uint16(x86_xReadSlashR),
+ /*8828*/ uint16(x86_xArgR16),
+ /*8829*/ uint16(x86_xArgM16and16),
+ /*8830*/ uint16(x86_xMatch),
+ /*8831*/ uint16(x86_xSetOp), uint16(x86_BOUND),
+ /*8833*/ uint16(x86_xReadSlashR),
+ /*8834*/ uint16(x86_xArgR32),
+ /*8835*/ uint16(x86_xArgM32and32),
+ /*8836*/ uint16(x86_xMatch),
+ /*8837*/ uint16(x86_xCondIs64), 8840, 8846,
+ /*8840*/ uint16(x86_xSetOp), uint16(x86_ARPL),
+ /*8842*/ uint16(x86_xReadSlashR),
+ /*8843*/ uint16(x86_xArgRM16),
+ /*8844*/ uint16(x86_xArgR16),
+ /*8845*/ uint16(x86_xMatch),
+ /*8846*/ uint16(x86_xCondDataSize), 8850, 8856, 8862,
+ /*8850*/ uint16(x86_xSetOp), uint16(x86_MOVSXD),
+ /*8852*/ uint16(x86_xReadSlashR),
+ /*8853*/ uint16(x86_xArgR16),
+ /*8854*/ uint16(x86_xArgRM32),
+ /*8855*/ uint16(x86_xMatch),
+ /*8856*/ uint16(x86_xSetOp), uint16(x86_MOVSXD),
+ /*8858*/ uint16(x86_xReadSlashR),
+ /*8859*/ uint16(x86_xArgR32),
+ /*8860*/ uint16(x86_xArgRM32),
+ /*8861*/ uint16(x86_xMatch),
+ /*8862*/ uint16(x86_xSetOp), uint16(x86_MOVSXD),
+ /*8864*/ uint16(x86_xReadSlashR),
+ /*8865*/ uint16(x86_xArgR64),
+ /*8866*/ uint16(x86_xArgRM32),
+ /*8867*/ uint16(x86_xMatch),
+ /*8868*/ uint16(x86_xCondDataSize), 8872, 8877, 8882,
+ /*8872*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8874*/ uint16(x86_xReadIw),
+ /*8875*/ uint16(x86_xArgImm16),
+ /*8876*/ uint16(x86_xMatch),
+ /*8877*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8879*/ uint16(x86_xReadId),
+ /*8880*/ uint16(x86_xArgImm32),
+ /*8881*/ uint16(x86_xMatch),
+ /*8882*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8884*/ uint16(x86_xReadId),
+ /*8885*/ uint16(x86_xArgImm32),
+ /*8886*/ uint16(x86_xMatch),
+ /*8887*/ uint16(x86_xCondIs64), 8890, 8910,
+ /*8890*/ uint16(x86_xCondDataSize), 8894, 8902, 0,
+ /*8894*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*8896*/ uint16(x86_xReadSlashR),
+ /*8897*/ uint16(x86_xReadIw),
+ /*8898*/ uint16(x86_xArgR16),
+ /*8899*/ uint16(x86_xArgRM16),
+ /*8900*/ uint16(x86_xArgImm16),
+ /*8901*/ uint16(x86_xMatch),
+ /*8902*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*8904*/ uint16(x86_xReadSlashR),
+ /*8905*/ uint16(x86_xReadId),
+ /*8906*/ uint16(x86_xArgR32),
+ /*8907*/ uint16(x86_xArgRM32),
+ /*8908*/ uint16(x86_xArgImm32),
+ /*8909*/ uint16(x86_xMatch),
+ /*8910*/ uint16(x86_xCondDataSize), 8894, 8902, 8914,
+ /*8914*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*8916*/ uint16(x86_xReadSlashR),
+ /*8917*/ uint16(x86_xReadId),
+ /*8918*/ uint16(x86_xArgR64),
+ /*8919*/ uint16(x86_xArgRM64),
+ /*8920*/ uint16(x86_xArgImm32),
+ /*8921*/ uint16(x86_xMatch),
+ /*8922*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*8924*/ uint16(x86_xReadIb),
+ /*8925*/ uint16(x86_xArgImm8),
+ /*8926*/ uint16(x86_xMatch),
+ /*8927*/ uint16(x86_xCondIs64), 8930, 8950,
+ /*8930*/ uint16(x86_xCondDataSize), 8934, 8942, 0,
+ /*8934*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*8936*/ uint16(x86_xReadSlashR),
+ /*8937*/ uint16(x86_xReadIb),
+ /*8938*/ uint16(x86_xArgR16),
+ /*8939*/ uint16(x86_xArgRM16),
+ /*8940*/ uint16(x86_xArgImm8),
+ /*8941*/ uint16(x86_xMatch),
+ /*8942*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*8944*/ uint16(x86_xReadSlashR),
+ /*8945*/ uint16(x86_xReadIb),
+ /*8946*/ uint16(x86_xArgR32),
+ /*8947*/ uint16(x86_xArgRM32),
+ /*8948*/ uint16(x86_xArgImm8),
+ /*8949*/ uint16(x86_xMatch),
+ /*8950*/ uint16(x86_xCondDataSize), 8934, 8942, 8954,
+ /*8954*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*8956*/ uint16(x86_xReadSlashR),
+ /*8957*/ uint16(x86_xReadIb),
+ /*8958*/ uint16(x86_xArgR64),
+ /*8959*/ uint16(x86_xArgRM64),
+ /*8960*/ uint16(x86_xArgImm8),
+ /*8961*/ uint16(x86_xMatch),
+ /*8962*/ uint16(x86_xSetOp), uint16(x86_INSB),
+ /*8964*/ uint16(x86_xMatch),
+ /*8965*/ uint16(x86_xCondDataSize), 8969, 8972, 8975,
+ /*8969*/ uint16(x86_xSetOp), uint16(x86_INSW),
+ /*8971*/ uint16(x86_xMatch),
+ /*8972*/ uint16(x86_xSetOp), uint16(x86_INSD),
+ /*8974*/ uint16(x86_xMatch),
+ /*8975*/ uint16(x86_xSetOp), uint16(x86_INSD),
+ /*8977*/ uint16(x86_xMatch),
+ /*8978*/ uint16(x86_xSetOp), uint16(x86_OUTSB),
+ /*8980*/ uint16(x86_xMatch),
+ /*8981*/ uint16(x86_xCondDataSize), 8985, 8988, 8991,
+ /*8985*/ uint16(x86_xSetOp), uint16(x86_OUTSW),
+ /*8987*/ uint16(x86_xMatch),
+ /*8988*/ uint16(x86_xSetOp), uint16(x86_OUTSD),
+ /*8990*/ uint16(x86_xMatch),
+ /*8991*/ uint16(x86_xSetOp), uint16(x86_OUTSD),
+ /*8993*/ uint16(x86_xMatch),
+ /*8994*/ uint16(x86_xSetOp), uint16(x86_JO),
+ /*8996*/ uint16(x86_xReadCb),
+ /*8997*/ uint16(x86_xArgRel8),
+ /*8998*/ uint16(x86_xMatch),
+ /*8999*/ uint16(x86_xSetOp), uint16(x86_JNO),
+ /*9001*/ uint16(x86_xReadCb),
+ /*9002*/ uint16(x86_xArgRel8),
+ /*9003*/ uint16(x86_xMatch),
+ /*9004*/ uint16(x86_xSetOp), uint16(x86_JB),
+ /*9006*/ uint16(x86_xReadCb),
+ /*9007*/ uint16(x86_xArgRel8),
+ /*9008*/ uint16(x86_xMatch),
+ /*9009*/ uint16(x86_xSetOp), uint16(x86_JAE),
+ /*9011*/ uint16(x86_xReadCb),
+ /*9012*/ uint16(x86_xArgRel8),
+ /*9013*/ uint16(x86_xMatch),
+ /*9014*/ uint16(x86_xSetOp), uint16(x86_JE),
+ /*9016*/ uint16(x86_xReadCb),
+ /*9017*/ uint16(x86_xArgRel8),
+ /*9018*/ uint16(x86_xMatch),
+ /*9019*/ uint16(x86_xSetOp), uint16(x86_JNE),
+ /*9021*/ uint16(x86_xReadCb),
+ /*9022*/ uint16(x86_xArgRel8),
+ /*9023*/ uint16(x86_xMatch),
+ /*9024*/ uint16(x86_xSetOp), uint16(x86_JBE),
+ /*9026*/ uint16(x86_xReadCb),
+ /*9027*/ uint16(x86_xArgRel8),
+ /*9028*/ uint16(x86_xMatch),
+ /*9029*/ uint16(x86_xSetOp), uint16(x86_JA),
+ /*9031*/ uint16(x86_xReadCb),
+ /*9032*/ uint16(x86_xArgRel8),
+ /*9033*/ uint16(x86_xMatch),
+ /*9034*/ uint16(x86_xSetOp), uint16(x86_JS),
+ /*9036*/ uint16(x86_xReadCb),
+ /*9037*/ uint16(x86_xArgRel8),
+ /*9038*/ uint16(x86_xMatch),
+ /*9039*/ uint16(x86_xSetOp), uint16(x86_JNS),
+ /*9041*/ uint16(x86_xReadCb),
+ /*9042*/ uint16(x86_xArgRel8),
+ /*9043*/ uint16(x86_xMatch),
+ /*9044*/ uint16(x86_xSetOp), uint16(x86_JP),
+ /*9046*/ uint16(x86_xReadCb),
+ /*9047*/ uint16(x86_xArgRel8),
+ /*9048*/ uint16(x86_xMatch),
+ /*9049*/ uint16(x86_xSetOp), uint16(x86_JNP),
+ /*9051*/ uint16(x86_xReadCb),
+ /*9052*/ uint16(x86_xArgRel8),
+ /*9053*/ uint16(x86_xMatch),
+ /*9054*/ uint16(x86_xSetOp), uint16(x86_JL),
+ /*9056*/ uint16(x86_xReadCb),
+ /*9057*/ uint16(x86_xArgRel8),
+ /*9058*/ uint16(x86_xMatch),
+ /*9059*/ uint16(x86_xSetOp), uint16(x86_JGE),
+ /*9061*/ uint16(x86_xReadCb),
+ /*9062*/ uint16(x86_xArgRel8),
+ /*9063*/ uint16(x86_xMatch),
+ /*9064*/ uint16(x86_xSetOp), uint16(x86_JLE),
+ /*9066*/ uint16(x86_xReadCb),
+ /*9067*/ uint16(x86_xArgRel8),
+ /*9068*/ uint16(x86_xMatch),
+ /*9069*/ uint16(x86_xSetOp), uint16(x86_JG),
+ /*9071*/ uint16(x86_xReadCb),
+ /*9072*/ uint16(x86_xArgRel8),
+ /*9073*/ uint16(x86_xMatch),
+ /*9074*/ uint16(x86_xCondSlashR),
+ 9083, // 0
+ 9089, // 1
+ 9095, // 2
+ 9101, // 3
+ 9107, // 4
+ 9113, // 5
+ 9119, // 6
+ 9125, // 7
+ /*9083*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*9085*/ uint16(x86_xReadIb),
+ /*9086*/ uint16(x86_xArgRM8),
+ /*9087*/ uint16(x86_xArgImm8u),
+ /*9088*/ uint16(x86_xMatch),
+ /*9089*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*9091*/ uint16(x86_xReadIb),
+ /*9092*/ uint16(x86_xArgRM8),
+ /*9093*/ uint16(x86_xArgImm8u),
+ /*9094*/ uint16(x86_xMatch),
+ /*9095*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*9097*/ uint16(x86_xReadIb),
+ /*9098*/ uint16(x86_xArgRM8),
+ /*9099*/ uint16(x86_xArgImm8u),
+ /*9100*/ uint16(x86_xMatch),
+ /*9101*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*9103*/ uint16(x86_xReadIb),
+ /*9104*/ uint16(x86_xArgRM8),
+ /*9105*/ uint16(x86_xArgImm8u),
+ /*9106*/ uint16(x86_xMatch),
+ /*9107*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*9109*/ uint16(x86_xReadIb),
+ /*9110*/ uint16(x86_xArgRM8),
+ /*9111*/ uint16(x86_xArgImm8u),
+ /*9112*/ uint16(x86_xMatch),
+ /*9113*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*9115*/ uint16(x86_xReadIb),
+ /*9116*/ uint16(x86_xArgRM8),
+ /*9117*/ uint16(x86_xArgImm8u),
+ /*9118*/ uint16(x86_xMatch),
+ /*9119*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*9121*/ uint16(x86_xReadIb),
+ /*9122*/ uint16(x86_xArgRM8),
+ /*9123*/ uint16(x86_xArgImm8u),
+ /*9124*/ uint16(x86_xMatch),
+ /*9125*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*9127*/ uint16(x86_xReadIb),
+ /*9128*/ uint16(x86_xArgRM8),
+ /*9129*/ uint16(x86_xArgImm8u),
+ /*9130*/ uint16(x86_xMatch),
+ /*9131*/ uint16(x86_xCondSlashR),
+ 9140, // 0
+ 9169, // 1
+ 9198, // 2
+ 9227, // 3
+ 9256, // 4
+ 9285, // 5
+ 9314, // 6
+ 9343, // 7
+ /*9140*/ uint16(x86_xCondIs64), 9143, 9159,
+ /*9143*/ uint16(x86_xCondDataSize), 9147, 9153, 0,
+ /*9147*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*9149*/ uint16(x86_xReadIw),
+ /*9150*/ uint16(x86_xArgRM16),
+ /*9151*/ uint16(x86_xArgImm16),
+ /*9152*/ uint16(x86_xMatch),
+ /*9153*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*9155*/ uint16(x86_xReadId),
+ /*9156*/ uint16(x86_xArgRM32),
+ /*9157*/ uint16(x86_xArgImm32),
+ /*9158*/ uint16(x86_xMatch),
+ /*9159*/ uint16(x86_xCondDataSize), 9147, 9153, 9163,
+ /*9163*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*9165*/ uint16(x86_xReadId),
+ /*9166*/ uint16(x86_xArgRM64),
+ /*9167*/ uint16(x86_xArgImm32),
+ /*9168*/ uint16(x86_xMatch),
+ /*9169*/ uint16(x86_xCondIs64), 9172, 9188,
+ /*9172*/ uint16(x86_xCondDataSize), 9176, 9182, 0,
+ /*9176*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*9178*/ uint16(x86_xReadIw),
+ /*9179*/ uint16(x86_xArgRM16),
+ /*9180*/ uint16(x86_xArgImm16),
+ /*9181*/ uint16(x86_xMatch),
+ /*9182*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*9184*/ uint16(x86_xReadId),
+ /*9185*/ uint16(x86_xArgRM32),
+ /*9186*/ uint16(x86_xArgImm32),
+ /*9187*/ uint16(x86_xMatch),
+ /*9188*/ uint16(x86_xCondDataSize), 9176, 9182, 9192,
+ /*9192*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*9194*/ uint16(x86_xReadId),
+ /*9195*/ uint16(x86_xArgRM64),
+ /*9196*/ uint16(x86_xArgImm32),
+ /*9197*/ uint16(x86_xMatch),
+ /*9198*/ uint16(x86_xCondIs64), 9201, 9217,
+ /*9201*/ uint16(x86_xCondDataSize), 9205, 9211, 0,
+ /*9205*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*9207*/ uint16(x86_xReadIw),
+ /*9208*/ uint16(x86_xArgRM16),
+ /*9209*/ uint16(x86_xArgImm16),
+ /*9210*/ uint16(x86_xMatch),
+ /*9211*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*9213*/ uint16(x86_xReadId),
+ /*9214*/ uint16(x86_xArgRM32),
+ /*9215*/ uint16(x86_xArgImm32),
+ /*9216*/ uint16(x86_xMatch),
+ /*9217*/ uint16(x86_xCondDataSize), 9205, 9211, 9221,
+ /*9221*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*9223*/ uint16(x86_xReadId),
+ /*9224*/ uint16(x86_xArgRM64),
+ /*9225*/ uint16(x86_xArgImm32),
+ /*9226*/ uint16(x86_xMatch),
+ /*9227*/ uint16(x86_xCondIs64), 9230, 9246,
+ /*9230*/ uint16(x86_xCondDataSize), 9234, 9240, 0,
+ /*9234*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*9236*/ uint16(x86_xReadIw),
+ /*9237*/ uint16(x86_xArgRM16),
+ /*9238*/ uint16(x86_xArgImm16),
+ /*9239*/ uint16(x86_xMatch),
+ /*9240*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*9242*/ uint16(x86_xReadId),
+ /*9243*/ uint16(x86_xArgRM32),
+ /*9244*/ uint16(x86_xArgImm32),
+ /*9245*/ uint16(x86_xMatch),
+ /*9246*/ uint16(x86_xCondDataSize), 9234, 9240, 9250,
+ /*9250*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*9252*/ uint16(x86_xReadId),
+ /*9253*/ uint16(x86_xArgRM64),
+ /*9254*/ uint16(x86_xArgImm32),
+ /*9255*/ uint16(x86_xMatch),
+ /*9256*/ uint16(x86_xCondIs64), 9259, 9275,
+ /*9259*/ uint16(x86_xCondDataSize), 9263, 9269, 0,
+ /*9263*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*9265*/ uint16(x86_xReadIw),
+ /*9266*/ uint16(x86_xArgRM16),
+ /*9267*/ uint16(x86_xArgImm16),
+ /*9268*/ uint16(x86_xMatch),
+ /*9269*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*9271*/ uint16(x86_xReadId),
+ /*9272*/ uint16(x86_xArgRM32),
+ /*9273*/ uint16(x86_xArgImm32),
+ /*9274*/ uint16(x86_xMatch),
+ /*9275*/ uint16(x86_xCondDataSize), 9263, 9269, 9279,
+ /*9279*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*9281*/ uint16(x86_xReadId),
+ /*9282*/ uint16(x86_xArgRM64),
+ /*9283*/ uint16(x86_xArgImm32),
+ /*9284*/ uint16(x86_xMatch),
+ /*9285*/ uint16(x86_xCondIs64), 9288, 9304,
+ /*9288*/ uint16(x86_xCondDataSize), 9292, 9298, 0,
+ /*9292*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*9294*/ uint16(x86_xReadIw),
+ /*9295*/ uint16(x86_xArgRM16),
+ /*9296*/ uint16(x86_xArgImm16),
+ /*9297*/ uint16(x86_xMatch),
+ /*9298*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*9300*/ uint16(x86_xReadId),
+ /*9301*/ uint16(x86_xArgRM32),
+ /*9302*/ uint16(x86_xArgImm32),
+ /*9303*/ uint16(x86_xMatch),
+ /*9304*/ uint16(x86_xCondDataSize), 9292, 9298, 9308,
+ /*9308*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*9310*/ uint16(x86_xReadId),
+ /*9311*/ uint16(x86_xArgRM64),
+ /*9312*/ uint16(x86_xArgImm32),
+ /*9313*/ uint16(x86_xMatch),
+ /*9314*/ uint16(x86_xCondIs64), 9317, 9333,
+ /*9317*/ uint16(x86_xCondDataSize), 9321, 9327, 0,
+ /*9321*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*9323*/ uint16(x86_xReadIw),
+ /*9324*/ uint16(x86_xArgRM16),
+ /*9325*/ uint16(x86_xArgImm16),
+ /*9326*/ uint16(x86_xMatch),
+ /*9327*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*9329*/ uint16(x86_xReadId),
+ /*9330*/ uint16(x86_xArgRM32),
+ /*9331*/ uint16(x86_xArgImm32),
+ /*9332*/ uint16(x86_xMatch),
+ /*9333*/ uint16(x86_xCondDataSize), 9321, 9327, 9337,
+ /*9337*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*9339*/ uint16(x86_xReadId),
+ /*9340*/ uint16(x86_xArgRM64),
+ /*9341*/ uint16(x86_xArgImm32),
+ /*9342*/ uint16(x86_xMatch),
+ /*9343*/ uint16(x86_xCondIs64), 9346, 9362,
+ /*9346*/ uint16(x86_xCondDataSize), 9350, 9356, 0,
+ /*9350*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*9352*/ uint16(x86_xReadIw),
+ /*9353*/ uint16(x86_xArgRM16),
+ /*9354*/ uint16(x86_xArgImm16),
+ /*9355*/ uint16(x86_xMatch),
+ /*9356*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*9358*/ uint16(x86_xReadId),
+ /*9359*/ uint16(x86_xArgRM32),
+ /*9360*/ uint16(x86_xArgImm32),
+ /*9361*/ uint16(x86_xMatch),
+ /*9362*/ uint16(x86_xCondDataSize), 9350, 9356, 9366,
+ /*9366*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*9368*/ uint16(x86_xReadId),
+ /*9369*/ uint16(x86_xArgRM64),
+ /*9370*/ uint16(x86_xArgImm32),
+ /*9371*/ uint16(x86_xMatch),
+ /*9372*/ uint16(x86_xCondSlashR),
+ 9381, // 0
+ 9410, // 1
+ 9439, // 2
+ 9468, // 3
+ 9497, // 4
+ 9526, // 5
+ 9555, // 6
+ 9584, // 7
+ /*9381*/ uint16(x86_xCondIs64), 9384, 9400,
+ /*9384*/ uint16(x86_xCondDataSize), 9388, 9394, 0,
+ /*9388*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*9390*/ uint16(x86_xReadIb),
+ /*9391*/ uint16(x86_xArgRM16),
+ /*9392*/ uint16(x86_xArgImm8),
+ /*9393*/ uint16(x86_xMatch),
+ /*9394*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*9396*/ uint16(x86_xReadIb),
+ /*9397*/ uint16(x86_xArgRM32),
+ /*9398*/ uint16(x86_xArgImm8),
+ /*9399*/ uint16(x86_xMatch),
+ /*9400*/ uint16(x86_xCondDataSize), 9388, 9394, 9404,
+ /*9404*/ uint16(x86_xSetOp), uint16(x86_ADD),
+ /*9406*/ uint16(x86_xReadIb),
+ /*9407*/ uint16(x86_xArgRM64),
+ /*9408*/ uint16(x86_xArgImm8),
+ /*9409*/ uint16(x86_xMatch),
+ /*9410*/ uint16(x86_xCondIs64), 9413, 9429,
+ /*9413*/ uint16(x86_xCondDataSize), 9417, 9423, 0,
+ /*9417*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*9419*/ uint16(x86_xReadIb),
+ /*9420*/ uint16(x86_xArgRM16),
+ /*9421*/ uint16(x86_xArgImm8),
+ /*9422*/ uint16(x86_xMatch),
+ /*9423*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*9425*/ uint16(x86_xReadIb),
+ /*9426*/ uint16(x86_xArgRM32),
+ /*9427*/ uint16(x86_xArgImm8),
+ /*9428*/ uint16(x86_xMatch),
+ /*9429*/ uint16(x86_xCondDataSize), 9417, 9423, 9433,
+ /*9433*/ uint16(x86_xSetOp), uint16(x86_OR),
+ /*9435*/ uint16(x86_xReadIb),
+ /*9436*/ uint16(x86_xArgRM64),
+ /*9437*/ uint16(x86_xArgImm8),
+ /*9438*/ uint16(x86_xMatch),
+ /*9439*/ uint16(x86_xCondIs64), 9442, 9458,
+ /*9442*/ uint16(x86_xCondDataSize), 9446, 9452, 0,
+ /*9446*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*9448*/ uint16(x86_xReadIb),
+ /*9449*/ uint16(x86_xArgRM16),
+ /*9450*/ uint16(x86_xArgImm8),
+ /*9451*/ uint16(x86_xMatch),
+ /*9452*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*9454*/ uint16(x86_xReadIb),
+ /*9455*/ uint16(x86_xArgRM32),
+ /*9456*/ uint16(x86_xArgImm8),
+ /*9457*/ uint16(x86_xMatch),
+ /*9458*/ uint16(x86_xCondDataSize), 9446, 9452, 9462,
+ /*9462*/ uint16(x86_xSetOp), uint16(x86_ADC),
+ /*9464*/ uint16(x86_xReadIb),
+ /*9465*/ uint16(x86_xArgRM64),
+ /*9466*/ uint16(x86_xArgImm8),
+ /*9467*/ uint16(x86_xMatch),
+ /*9468*/ uint16(x86_xCondIs64), 9471, 9487,
+ /*9471*/ uint16(x86_xCondDataSize), 9475, 9481, 0,
+ /*9475*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*9477*/ uint16(x86_xReadIb),
+ /*9478*/ uint16(x86_xArgRM16),
+ /*9479*/ uint16(x86_xArgImm8),
+ /*9480*/ uint16(x86_xMatch),
+ /*9481*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*9483*/ uint16(x86_xReadIb),
+ /*9484*/ uint16(x86_xArgRM32),
+ /*9485*/ uint16(x86_xArgImm8),
+ /*9486*/ uint16(x86_xMatch),
+ /*9487*/ uint16(x86_xCondDataSize), 9475, 9481, 9491,
+ /*9491*/ uint16(x86_xSetOp), uint16(x86_SBB),
+ /*9493*/ uint16(x86_xReadIb),
+ /*9494*/ uint16(x86_xArgRM64),
+ /*9495*/ uint16(x86_xArgImm8),
+ /*9496*/ uint16(x86_xMatch),
+ /*9497*/ uint16(x86_xCondIs64), 9500, 9516,
+ /*9500*/ uint16(x86_xCondDataSize), 9504, 9510, 0,
+ /*9504*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*9506*/ uint16(x86_xReadIb),
+ /*9507*/ uint16(x86_xArgRM16),
+ /*9508*/ uint16(x86_xArgImm8),
+ /*9509*/ uint16(x86_xMatch),
+ /*9510*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*9512*/ uint16(x86_xReadIb),
+ /*9513*/ uint16(x86_xArgRM32),
+ /*9514*/ uint16(x86_xArgImm8),
+ /*9515*/ uint16(x86_xMatch),
+ /*9516*/ uint16(x86_xCondDataSize), 9504, 9510, 9520,
+ /*9520*/ uint16(x86_xSetOp), uint16(x86_AND),
+ /*9522*/ uint16(x86_xReadIb),
+ /*9523*/ uint16(x86_xArgRM64),
+ /*9524*/ uint16(x86_xArgImm8),
+ /*9525*/ uint16(x86_xMatch),
+ /*9526*/ uint16(x86_xCondIs64), 9529, 9545,
+ /*9529*/ uint16(x86_xCondDataSize), 9533, 9539, 0,
+ /*9533*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*9535*/ uint16(x86_xReadIb),
+ /*9536*/ uint16(x86_xArgRM16),
+ /*9537*/ uint16(x86_xArgImm8),
+ /*9538*/ uint16(x86_xMatch),
+ /*9539*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*9541*/ uint16(x86_xReadIb),
+ /*9542*/ uint16(x86_xArgRM32),
+ /*9543*/ uint16(x86_xArgImm8),
+ /*9544*/ uint16(x86_xMatch),
+ /*9545*/ uint16(x86_xCondDataSize), 9533, 9539, 9549,
+ /*9549*/ uint16(x86_xSetOp), uint16(x86_SUB),
+ /*9551*/ uint16(x86_xReadIb),
+ /*9552*/ uint16(x86_xArgRM64),
+ /*9553*/ uint16(x86_xArgImm8),
+ /*9554*/ uint16(x86_xMatch),
+ /*9555*/ uint16(x86_xCondIs64), 9558, 9574,
+ /*9558*/ uint16(x86_xCondDataSize), 9562, 9568, 0,
+ /*9562*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*9564*/ uint16(x86_xReadIb),
+ /*9565*/ uint16(x86_xArgRM16),
+ /*9566*/ uint16(x86_xArgImm8),
+ /*9567*/ uint16(x86_xMatch),
+ /*9568*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*9570*/ uint16(x86_xReadIb),
+ /*9571*/ uint16(x86_xArgRM32),
+ /*9572*/ uint16(x86_xArgImm8),
+ /*9573*/ uint16(x86_xMatch),
+ /*9574*/ uint16(x86_xCondDataSize), 9562, 9568, 9578,
+ /*9578*/ uint16(x86_xSetOp), uint16(x86_XOR),
+ /*9580*/ uint16(x86_xReadIb),
+ /*9581*/ uint16(x86_xArgRM64),
+ /*9582*/ uint16(x86_xArgImm8),
+ /*9583*/ uint16(x86_xMatch),
+ /*9584*/ uint16(x86_xCondIs64), 9587, 9603,
+ /*9587*/ uint16(x86_xCondDataSize), 9591, 9597, 0,
+ /*9591*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*9593*/ uint16(x86_xReadIb),
+ /*9594*/ uint16(x86_xArgRM16),
+ /*9595*/ uint16(x86_xArgImm8),
+ /*9596*/ uint16(x86_xMatch),
+ /*9597*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*9599*/ uint16(x86_xReadIb),
+ /*9600*/ uint16(x86_xArgRM32),
+ /*9601*/ uint16(x86_xArgImm8),
+ /*9602*/ uint16(x86_xMatch),
+ /*9603*/ uint16(x86_xCondDataSize), 9591, 9597, 9607,
+ /*9607*/ uint16(x86_xSetOp), uint16(x86_CMP),
+ /*9609*/ uint16(x86_xReadIb),
+ /*9610*/ uint16(x86_xArgRM64),
+ /*9611*/ uint16(x86_xArgImm8),
+ /*9612*/ uint16(x86_xMatch),
+ /*9613*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*9615*/ uint16(x86_xReadSlashR),
+ /*9616*/ uint16(x86_xArgRM8),
+ /*9617*/ uint16(x86_xArgR8),
+ /*9618*/ uint16(x86_xMatch),
+ /*9619*/ uint16(x86_xCondIs64), 9622, 9638,
+ /*9622*/ uint16(x86_xCondDataSize), 9626, 9632, 0,
+ /*9626*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*9628*/ uint16(x86_xReadSlashR),
+ /*9629*/ uint16(x86_xArgRM16),
+ /*9630*/ uint16(x86_xArgR16),
+ /*9631*/ uint16(x86_xMatch),
+ /*9632*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*9634*/ uint16(x86_xReadSlashR),
+ /*9635*/ uint16(x86_xArgRM32),
+ /*9636*/ uint16(x86_xArgR32),
+ /*9637*/ uint16(x86_xMatch),
+ /*9638*/ uint16(x86_xCondDataSize), 9626, 9632, 9642,
+ /*9642*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*9644*/ uint16(x86_xReadSlashR),
+ /*9645*/ uint16(x86_xArgRM64),
+ /*9646*/ uint16(x86_xArgR64),
+ /*9647*/ uint16(x86_xMatch),
+ /*9648*/ uint16(x86_xSetOp), uint16(x86_XCHG),
+ /*9650*/ uint16(x86_xReadSlashR),
+ /*9651*/ uint16(x86_xArgRM8),
+ /*9652*/ uint16(x86_xArgR8),
+ /*9653*/ uint16(x86_xMatch),
+ /*9654*/ uint16(x86_xCondIs64), 9657, 9673,
+ /*9657*/ uint16(x86_xCondDataSize), 9661, 9667, 0,
+ /*9661*/ uint16(x86_xSetOp), uint16(x86_XCHG),
+ /*9663*/ uint16(x86_xReadSlashR),
+ /*9664*/ uint16(x86_xArgRM16),
+ /*9665*/ uint16(x86_xArgR16),
+ /*9666*/ uint16(x86_xMatch),
+ /*9667*/ uint16(x86_xSetOp), uint16(x86_XCHG),
+ /*9669*/ uint16(x86_xReadSlashR),
+ /*9670*/ uint16(x86_xArgRM32),
+ /*9671*/ uint16(x86_xArgR32),
+ /*9672*/ uint16(x86_xMatch),
+ /*9673*/ uint16(x86_xCondDataSize), 9661, 9667, 9677,
+ /*9677*/ uint16(x86_xSetOp), uint16(x86_XCHG),
+ /*9679*/ uint16(x86_xReadSlashR),
+ /*9680*/ uint16(x86_xArgRM64),
+ /*9681*/ uint16(x86_xArgR64),
+ /*9682*/ uint16(x86_xMatch),
+ /*9683*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9685*/ uint16(x86_xReadSlashR),
+ /*9686*/ uint16(x86_xArgRM8),
+ /*9687*/ uint16(x86_xArgR8),
+ /*9688*/ uint16(x86_xMatch),
+ /*9689*/ uint16(x86_xCondDataSize), 9693, 9699, 9705,
+ /*9693*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9695*/ uint16(x86_xReadSlashR),
+ /*9696*/ uint16(x86_xArgRM16),
+ /*9697*/ uint16(x86_xArgR16),
+ /*9698*/ uint16(x86_xMatch),
+ /*9699*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9701*/ uint16(x86_xReadSlashR),
+ /*9702*/ uint16(x86_xArgRM32),
+ /*9703*/ uint16(x86_xArgR32),
+ /*9704*/ uint16(x86_xMatch),
+ /*9705*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9707*/ uint16(x86_xReadSlashR),
+ /*9708*/ uint16(x86_xArgRM64),
+ /*9709*/ uint16(x86_xArgR64),
+ /*9710*/ uint16(x86_xMatch),
+ /*9711*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9713*/ uint16(x86_xReadSlashR),
+ /*9714*/ uint16(x86_xArgR8),
+ /*9715*/ uint16(x86_xArgRM8),
+ /*9716*/ uint16(x86_xMatch),
+ /*9717*/ uint16(x86_xCondDataSize), 9721, 9727, 9733,
+ /*9721*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9723*/ uint16(x86_xReadSlashR),
+ /*9724*/ uint16(x86_xArgR16),
+ /*9725*/ uint16(x86_xArgRM16),
+ /*9726*/ uint16(x86_xMatch),
+ /*9727*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9729*/ uint16(x86_xReadSlashR),
+ /*9730*/ uint16(x86_xArgR32),
+ /*9731*/ uint16(x86_xArgRM32),
+ /*9732*/ uint16(x86_xMatch),
+ /*9733*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9735*/ uint16(x86_xReadSlashR),
+ /*9736*/ uint16(x86_xArgR64),
+ /*9737*/ uint16(x86_xArgRM64),
+ /*9738*/ uint16(x86_xMatch),
+ /*9739*/ uint16(x86_xCondIs64), 9742, 9758,
+ /*9742*/ uint16(x86_xCondDataSize), 9746, 9752, 0,
+ /*9746*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9748*/ uint16(x86_xReadSlashR),
+ /*9749*/ uint16(x86_xArgRM16),
+ /*9750*/ uint16(x86_xArgSreg),
+ /*9751*/ uint16(x86_xMatch),
+ /*9752*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9754*/ uint16(x86_xReadSlashR),
+ /*9755*/ uint16(x86_xArgR32M16),
+ /*9756*/ uint16(x86_xArgSreg),
+ /*9757*/ uint16(x86_xMatch),
+ /*9758*/ uint16(x86_xCondDataSize), 9746, 9752, 9762,
+ /*9762*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9764*/ uint16(x86_xReadSlashR),
+ /*9765*/ uint16(x86_xArgR64M16),
+ /*9766*/ uint16(x86_xArgSreg),
+ /*9767*/ uint16(x86_xMatch),
+ /*9768*/ uint16(x86_xCondIs64), 9771, 9787,
+ /*9771*/ uint16(x86_xCondDataSize), 9775, 9781, 0,
+ /*9775*/ uint16(x86_xSetOp), uint16(x86_LEA),
+ /*9777*/ uint16(x86_xReadSlashR),
+ /*9778*/ uint16(x86_xArgR16),
+ /*9779*/ uint16(x86_xArgM),
+ /*9780*/ uint16(x86_xMatch),
+ /*9781*/ uint16(x86_xSetOp), uint16(x86_LEA),
+ /*9783*/ uint16(x86_xReadSlashR),
+ /*9784*/ uint16(x86_xArgR32),
+ /*9785*/ uint16(x86_xArgM),
+ /*9786*/ uint16(x86_xMatch),
+ /*9787*/ uint16(x86_xCondDataSize), 9775, 9781, 9791,
+ /*9791*/ uint16(x86_xSetOp), uint16(x86_LEA),
+ /*9793*/ uint16(x86_xReadSlashR),
+ /*9794*/ uint16(x86_xArgR64),
+ /*9795*/ uint16(x86_xArgM),
+ /*9796*/ uint16(x86_xMatch),
+ /*9797*/ uint16(x86_xCondIs64), 9800, 9816,
+ /*9800*/ uint16(x86_xCondDataSize), 9804, 9810, 0,
+ /*9804*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9806*/ uint16(x86_xReadSlashR),
+ /*9807*/ uint16(x86_xArgSreg),
+ /*9808*/ uint16(x86_xArgRM16),
+ /*9809*/ uint16(x86_xMatch),
+ /*9810*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9812*/ uint16(x86_xReadSlashR),
+ /*9813*/ uint16(x86_xArgSreg),
+ /*9814*/ uint16(x86_xArgR32M16),
+ /*9815*/ uint16(x86_xMatch),
+ /*9816*/ uint16(x86_xCondDataSize), 9804, 9810, 9820,
+ /*9820*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*9822*/ uint16(x86_xReadSlashR),
+ /*9823*/ uint16(x86_xArgSreg),
+ /*9824*/ uint16(x86_xArgR64M16),
+ /*9825*/ uint16(x86_xMatch),
+ /*9826*/ uint16(x86_xCondSlashR),
+ 9835, // 0
+ 0, // 1
+ 0, // 2
+ 0, // 3
+ 0, // 4
+ 0, // 5
+ 0, // 6
+ 0, // 7
+ /*9835*/ uint16(x86_xCondIs64), 9838, 9850,
+ /*9838*/ uint16(x86_xCondDataSize), 9842, 9846, 0,
+ /*9842*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*9844*/ uint16(x86_xArgRM16),
+ /*9845*/ uint16(x86_xMatch),
+ /*9846*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*9848*/ uint16(x86_xArgRM32),
+ /*9849*/ uint16(x86_xMatch),
+ /*9850*/ uint16(x86_xCondDataSize), 9842, 9854, 9858,
+ /*9854*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*9856*/ uint16(x86_xArgRM64),
+ /*9857*/ uint16(x86_xMatch),
+ /*9858*/ uint16(x86_xSetOp), uint16(x86_POP),
+ /*9860*/ uint16(x86_xArgRM64),
+ /*9861*/ uint16(x86_xMatch),
+ /*9862*/ uint16(x86_xCondIs64), 9865, 9879,
+ /*9865*/ uint16(x86_xCondDataSize), 9869, 9874, 0,
+ /*9869*/ uint16(x86_xSetOp), uint16(x86_XCHG),
+ /*9871*/ uint16(x86_xArgR16op),
+ /*9872*/ uint16(x86_xArgAX),
+ /*9873*/ uint16(x86_xMatch),
+ /*9874*/ uint16(x86_xSetOp), uint16(x86_XCHG),
+ /*9876*/ uint16(x86_xArgR32op),
+ /*9877*/ uint16(x86_xArgEAX),
+ /*9878*/ uint16(x86_xMatch),
+ /*9879*/ uint16(x86_xCondDataSize), 9869, 9874, 9883,
+ /*9883*/ uint16(x86_xSetOp), uint16(x86_XCHG),
+ /*9885*/ uint16(x86_xArgR64op),
+ /*9886*/ uint16(x86_xArgRAX),
+ /*9887*/ uint16(x86_xMatch),
+ /*9888*/ uint16(x86_xCondIs64), 9891, 9901,
+ /*9891*/ uint16(x86_xCondDataSize), 9895, 9898, 0,
+ /*9895*/ uint16(x86_xSetOp), uint16(x86_CBW),
+ /*9897*/ uint16(x86_xMatch),
+ /*9898*/ uint16(x86_xSetOp), uint16(x86_CWDE),
+ /*9900*/ uint16(x86_xMatch),
+ /*9901*/ uint16(x86_xCondDataSize), 9895, 9898, 9905,
+ /*9905*/ uint16(x86_xSetOp), uint16(x86_CDQE),
+ /*9907*/ uint16(x86_xMatch),
+ /*9908*/ uint16(x86_xCondIs64), 9911, 9921,
+ /*9911*/ uint16(x86_xCondDataSize), 9915, 9918, 0,
+ /*9915*/ uint16(x86_xSetOp), uint16(x86_CWD),
+ /*9917*/ uint16(x86_xMatch),
+ /*9918*/ uint16(x86_xSetOp), uint16(x86_CDQ),
+ /*9920*/ uint16(x86_xMatch),
+ /*9921*/ uint16(x86_xCondDataSize), 9915, 9918, 9925,
+ /*9925*/ uint16(x86_xSetOp), uint16(x86_CQO),
+ /*9927*/ uint16(x86_xMatch),
+ /*9928*/ uint16(x86_xCondIs64), 9931, 0,
+ /*9931*/ uint16(x86_xCondDataSize), 9935, 9940, 0,
+ /*9935*/ uint16(x86_xSetOp), uint16(x86_LCALL),
+ /*9937*/ uint16(x86_xReadCd),
+ /*9938*/ uint16(x86_xArgPtr16colon16),
+ /*9939*/ uint16(x86_xMatch),
+ /*9940*/ uint16(x86_xSetOp), uint16(x86_LCALL),
+ /*9942*/ uint16(x86_xReadCp),
+ /*9943*/ uint16(x86_xArgPtr16colon32),
+ /*9944*/ uint16(x86_xMatch),
+ /*9945*/ uint16(x86_xSetOp), uint16(x86_FWAIT),
+ /*9947*/ uint16(x86_xMatch),
+ /*9948*/ uint16(x86_xCondIs64), 9951, 9961,
+ /*9951*/ uint16(x86_xCondDataSize), 9955, 9958, 0,
+ /*9955*/ uint16(x86_xSetOp), uint16(x86_PUSHF),
+ /*9957*/ uint16(x86_xMatch),
+ /*9958*/ uint16(x86_xSetOp), uint16(x86_PUSHFD),
+ /*9960*/ uint16(x86_xMatch),
+ /*9961*/ uint16(x86_xCondDataSize), 9955, 9965, 9968,
+ /*9965*/ uint16(x86_xSetOp), uint16(x86_PUSHFQ),
+ /*9967*/ uint16(x86_xMatch),
+ /*9968*/ uint16(x86_xSetOp), uint16(x86_PUSHFQ),
+ /*9970*/ uint16(x86_xMatch),
+ /*9971*/ uint16(x86_xCondIs64), 9974, 9984,
+ /*9974*/ uint16(x86_xCondDataSize), 9978, 9981, 0,
+ /*9978*/ uint16(x86_xSetOp), uint16(x86_POPF),
+ /*9980*/ uint16(x86_xMatch),
+ /*9981*/ uint16(x86_xSetOp), uint16(x86_POPFD),
+ /*9983*/ uint16(x86_xMatch),
+ /*9984*/ uint16(x86_xCondDataSize), 9978, 9988, 9991,
+ /*9988*/ uint16(x86_xSetOp), uint16(x86_POPFQ),
+ /*9990*/ uint16(x86_xMatch),
+ /*9991*/ uint16(x86_xSetOp), uint16(x86_POPFQ),
+ /*9993*/ uint16(x86_xMatch),
+ /*9994*/ uint16(x86_xSetOp), uint16(x86_SAHF),
+ /*9996*/ uint16(x86_xMatch),
+ /*9997*/ uint16(x86_xSetOp), uint16(x86_LAHF),
+ /*9999*/ uint16(x86_xMatch),
+ /*10000*/ uint16(x86_xCondIs64), 10003, 10009,
+ /*10003*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10005*/ uint16(x86_xReadCm),
+ /*10006*/ uint16(x86_xArgAL),
+ /*10007*/ uint16(x86_xArgMoffs8),
+ /*10008*/ uint16(x86_xMatch),
+ /*10009*/ uint16(x86_xCondDataSize), 10003, 10003, 10013,
+ /*10013*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10015*/ uint16(x86_xReadCm),
+ /*10016*/ uint16(x86_xArgAL),
+ /*10017*/ uint16(x86_xArgMoffs8),
+ /*10018*/ uint16(x86_xMatch),
+ /*10019*/ uint16(x86_xCondDataSize), 10023, 10029, 10035,
+ /*10023*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10025*/ uint16(x86_xReadCm),
+ /*10026*/ uint16(x86_xArgAX),
+ /*10027*/ uint16(x86_xArgMoffs16),
+ /*10028*/ uint16(x86_xMatch),
+ /*10029*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10031*/ uint16(x86_xReadCm),
+ /*10032*/ uint16(x86_xArgEAX),
+ /*10033*/ uint16(x86_xArgMoffs32),
+ /*10034*/ uint16(x86_xMatch),
+ /*10035*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10037*/ uint16(x86_xReadCm),
+ /*10038*/ uint16(x86_xArgRAX),
+ /*10039*/ uint16(x86_xArgMoffs64),
+ /*10040*/ uint16(x86_xMatch),
+ /*10041*/ uint16(x86_xCondIs64), 10044, 10050,
+ /*10044*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10046*/ uint16(x86_xReadCm),
+ /*10047*/ uint16(x86_xArgMoffs8),
+ /*10048*/ uint16(x86_xArgAL),
+ /*10049*/ uint16(x86_xMatch),
+ /*10050*/ uint16(x86_xCondDataSize), 10044, 10044, 10054,
+ /*10054*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10056*/ uint16(x86_xReadCm),
+ /*10057*/ uint16(x86_xArgMoffs8),
+ /*10058*/ uint16(x86_xArgAL),
+ /*10059*/ uint16(x86_xMatch),
+ /*10060*/ uint16(x86_xCondDataSize), 10064, 10070, 10076,
+ /*10064*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10066*/ uint16(x86_xReadCm),
+ /*10067*/ uint16(x86_xArgMoffs16),
+ /*10068*/ uint16(x86_xArgAX),
+ /*10069*/ uint16(x86_xMatch),
+ /*10070*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10072*/ uint16(x86_xReadCm),
+ /*10073*/ uint16(x86_xArgMoffs32),
+ /*10074*/ uint16(x86_xArgEAX),
+ /*10075*/ uint16(x86_xMatch),
+ /*10076*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10078*/ uint16(x86_xReadCm),
+ /*10079*/ uint16(x86_xArgMoffs64),
+ /*10080*/ uint16(x86_xArgRAX),
+ /*10081*/ uint16(x86_xMatch),
+ /*10082*/ uint16(x86_xSetOp), uint16(x86_MOVSB),
+ /*10084*/ uint16(x86_xMatch),
+ /*10085*/ uint16(x86_xCondIs64), 10088, 10098,
+ /*10088*/ uint16(x86_xCondDataSize), 10092, 10095, 0,
+ /*10092*/ uint16(x86_xSetOp), uint16(x86_MOVSW),
+ /*10094*/ uint16(x86_xMatch),
+ /*10095*/ uint16(x86_xSetOp), uint16(x86_MOVSD),
+ /*10097*/ uint16(x86_xMatch),
+ /*10098*/ uint16(x86_xCondDataSize), 10092, 10095, 10102,
+ /*10102*/ uint16(x86_xSetOp), uint16(x86_MOVSQ),
+ /*10104*/ uint16(x86_xMatch),
+ /*10105*/ uint16(x86_xSetOp), uint16(x86_CMPSB),
+ /*10107*/ uint16(x86_xMatch),
+ /*10108*/ uint16(x86_xCondIs64), 10111, 10121,
+ /*10111*/ uint16(x86_xCondDataSize), 10115, 10118, 0,
+ /*10115*/ uint16(x86_xSetOp), uint16(x86_CMPSW),
+ /*10117*/ uint16(x86_xMatch),
+ /*10118*/ uint16(x86_xSetOp), uint16(x86_CMPSD),
+ /*10120*/ uint16(x86_xMatch),
+ /*10121*/ uint16(x86_xCondDataSize), 10115, 10118, 10125,
+ /*10125*/ uint16(x86_xSetOp), uint16(x86_CMPSQ),
+ /*10127*/ uint16(x86_xMatch),
+ /*10128*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*10130*/ uint16(x86_xReadIb),
+ /*10131*/ uint16(x86_xArgAL),
+ /*10132*/ uint16(x86_xArgImm8u),
+ /*10133*/ uint16(x86_xMatch),
+ /*10134*/ uint16(x86_xCondIs64), 10137, 10153,
+ /*10137*/ uint16(x86_xCondDataSize), 10141, 10147, 0,
+ /*10141*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*10143*/ uint16(x86_xReadIw),
+ /*10144*/ uint16(x86_xArgAX),
+ /*10145*/ uint16(x86_xArgImm16),
+ /*10146*/ uint16(x86_xMatch),
+ /*10147*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*10149*/ uint16(x86_xReadId),
+ /*10150*/ uint16(x86_xArgEAX),
+ /*10151*/ uint16(x86_xArgImm32),
+ /*10152*/ uint16(x86_xMatch),
+ /*10153*/ uint16(x86_xCondDataSize), 10141, 10147, 10157,
+ /*10157*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*10159*/ uint16(x86_xReadId),
+ /*10160*/ uint16(x86_xArgRAX),
+ /*10161*/ uint16(x86_xArgImm32),
+ /*10162*/ uint16(x86_xMatch),
+ /*10163*/ uint16(x86_xSetOp), uint16(x86_STOSB),
+ /*10165*/ uint16(x86_xMatch),
+ /*10166*/ uint16(x86_xCondIs64), 10169, 10179,
+ /*10169*/ uint16(x86_xCondDataSize), 10173, 10176, 0,
+ /*10173*/ uint16(x86_xSetOp), uint16(x86_STOSW),
+ /*10175*/ uint16(x86_xMatch),
+ /*10176*/ uint16(x86_xSetOp), uint16(x86_STOSD),
+ /*10178*/ uint16(x86_xMatch),
+ /*10179*/ uint16(x86_xCondDataSize), 10173, 10176, 10183,
+ /*10183*/ uint16(x86_xSetOp), uint16(x86_STOSQ),
+ /*10185*/ uint16(x86_xMatch),
+ /*10186*/ uint16(x86_xSetOp), uint16(x86_LODSB),
+ /*10188*/ uint16(x86_xMatch),
+ /*10189*/ uint16(x86_xCondIs64), 10192, 10202,
+ /*10192*/ uint16(x86_xCondDataSize), 10196, 10199, 0,
+ /*10196*/ uint16(x86_xSetOp), uint16(x86_LODSW),
+ /*10198*/ uint16(x86_xMatch),
+ /*10199*/ uint16(x86_xSetOp), uint16(x86_LODSD),
+ /*10201*/ uint16(x86_xMatch),
+ /*10202*/ uint16(x86_xCondDataSize), 10196, 10199, 10206,
+ /*10206*/ uint16(x86_xSetOp), uint16(x86_LODSQ),
+ /*10208*/ uint16(x86_xMatch),
+ /*10209*/ uint16(x86_xSetOp), uint16(x86_SCASB),
+ /*10211*/ uint16(x86_xMatch),
+ /*10212*/ uint16(x86_xCondIs64), 10215, 10225,
+ /*10215*/ uint16(x86_xCondDataSize), 10219, 10222, 0,
+ /*10219*/ uint16(x86_xSetOp), uint16(x86_SCASW),
+ /*10221*/ uint16(x86_xMatch),
+ /*10222*/ uint16(x86_xSetOp), uint16(x86_SCASD),
+ /*10224*/ uint16(x86_xMatch),
+ /*10225*/ uint16(x86_xCondDataSize), 10219, 10222, 10229,
+ /*10229*/ uint16(x86_xSetOp), uint16(x86_SCASQ),
+ /*10231*/ uint16(x86_xMatch),
+ /*10232*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10234*/ uint16(x86_xReadIb),
+ /*10235*/ uint16(x86_xArgR8op),
+ /*10236*/ uint16(x86_xArgImm8u),
+ /*10237*/ uint16(x86_xMatch),
+ /*10238*/ uint16(x86_xCondIs64), 10241, 10257,
+ /*10241*/ uint16(x86_xCondDataSize), 10245, 10251, 0,
+ /*10245*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10247*/ uint16(x86_xReadIw),
+ /*10248*/ uint16(x86_xArgR16op),
+ /*10249*/ uint16(x86_xArgImm16),
+ /*10250*/ uint16(x86_xMatch),
+ /*10251*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10253*/ uint16(x86_xReadId),
+ /*10254*/ uint16(x86_xArgR32op),
+ /*10255*/ uint16(x86_xArgImm32),
+ /*10256*/ uint16(x86_xMatch),
+ /*10257*/ uint16(x86_xCondDataSize), 10245, 10251, 10261,
+ /*10261*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10263*/ uint16(x86_xReadIo),
+ /*10264*/ uint16(x86_xArgR64op),
+ /*10265*/ uint16(x86_xArgImm64),
+ /*10266*/ uint16(x86_xMatch),
+ /*10267*/ uint16(x86_xCondSlashR),
+ 10276, // 0
+ 10282, // 1
+ 10288, // 2
+ 10294, // 3
+ 10300, // 4
+ 10306, // 5
+ 0, // 6
+ 10312, // 7
+ /*10276*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10278*/ uint16(x86_xReadIb),
+ /*10279*/ uint16(x86_xArgRM8),
+ /*10280*/ uint16(x86_xArgImm8u),
+ /*10281*/ uint16(x86_xMatch),
+ /*10282*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10284*/ uint16(x86_xReadIb),
+ /*10285*/ uint16(x86_xArgRM8),
+ /*10286*/ uint16(x86_xArgImm8u),
+ /*10287*/ uint16(x86_xMatch),
+ /*10288*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10290*/ uint16(x86_xReadIb),
+ /*10291*/ uint16(x86_xArgRM8),
+ /*10292*/ uint16(x86_xArgImm8u),
+ /*10293*/ uint16(x86_xMatch),
+ /*10294*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10296*/ uint16(x86_xReadIb),
+ /*10297*/ uint16(x86_xArgRM8),
+ /*10298*/ uint16(x86_xArgImm8u),
+ /*10299*/ uint16(x86_xMatch),
+ /*10300*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10302*/ uint16(x86_xReadIb),
+ /*10303*/ uint16(x86_xArgRM8),
+ /*10304*/ uint16(x86_xArgImm8u),
+ /*10305*/ uint16(x86_xMatch),
+ /*10306*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10308*/ uint16(x86_xReadIb),
+ /*10309*/ uint16(x86_xArgRM8),
+ /*10310*/ uint16(x86_xArgImm8u),
+ /*10311*/ uint16(x86_xMatch),
+ /*10312*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10314*/ uint16(x86_xReadIb),
+ /*10315*/ uint16(x86_xArgRM8),
+ /*10316*/ uint16(x86_xArgImm8u),
+ /*10317*/ uint16(x86_xMatch),
+ /*10318*/ uint16(x86_xCondSlashR),
+ 10327, // 0
+ 10349, // 1
+ 10371, // 2
+ 10400, // 3
+ 10429, // 4
+ 10458, // 5
+ 0, // 6
+ 10487, // 7
+ /*10327*/ uint16(x86_xCondDataSize), 10331, 10337, 10343,
+ /*10331*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10333*/ uint16(x86_xReadIb),
+ /*10334*/ uint16(x86_xArgRM16),
+ /*10335*/ uint16(x86_xArgImm8u),
+ /*10336*/ uint16(x86_xMatch),
+ /*10337*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10339*/ uint16(x86_xReadIb),
+ /*10340*/ uint16(x86_xArgRM32),
+ /*10341*/ uint16(x86_xArgImm8u),
+ /*10342*/ uint16(x86_xMatch),
+ /*10343*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10345*/ uint16(x86_xReadIb),
+ /*10346*/ uint16(x86_xArgRM64),
+ /*10347*/ uint16(x86_xArgImm8u),
+ /*10348*/ uint16(x86_xMatch),
+ /*10349*/ uint16(x86_xCondDataSize), 10353, 10359, 10365,
+ /*10353*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10355*/ uint16(x86_xReadIb),
+ /*10356*/ uint16(x86_xArgRM16),
+ /*10357*/ uint16(x86_xArgImm8u),
+ /*10358*/ uint16(x86_xMatch),
+ /*10359*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10361*/ uint16(x86_xReadIb),
+ /*10362*/ uint16(x86_xArgRM32),
+ /*10363*/ uint16(x86_xArgImm8u),
+ /*10364*/ uint16(x86_xMatch),
+ /*10365*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10367*/ uint16(x86_xReadIb),
+ /*10368*/ uint16(x86_xArgRM64),
+ /*10369*/ uint16(x86_xArgImm8u),
+ /*10370*/ uint16(x86_xMatch),
+ /*10371*/ uint16(x86_xCondIs64), 10374, 10390,
+ /*10374*/ uint16(x86_xCondDataSize), 10378, 10384, 0,
+ /*10378*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10380*/ uint16(x86_xReadIb),
+ /*10381*/ uint16(x86_xArgRM16),
+ /*10382*/ uint16(x86_xArgImm8u),
+ /*10383*/ uint16(x86_xMatch),
+ /*10384*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10386*/ uint16(x86_xReadIb),
+ /*10387*/ uint16(x86_xArgRM32),
+ /*10388*/ uint16(x86_xArgImm8u),
+ /*10389*/ uint16(x86_xMatch),
+ /*10390*/ uint16(x86_xCondDataSize), 10378, 10384, 10394,
+ /*10394*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10396*/ uint16(x86_xReadIb),
+ /*10397*/ uint16(x86_xArgRM64),
+ /*10398*/ uint16(x86_xArgImm8u),
+ /*10399*/ uint16(x86_xMatch),
+ /*10400*/ uint16(x86_xCondIs64), 10403, 10419,
+ /*10403*/ uint16(x86_xCondDataSize), 10407, 10413, 0,
+ /*10407*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10409*/ uint16(x86_xReadIb),
+ /*10410*/ uint16(x86_xArgRM16),
+ /*10411*/ uint16(x86_xArgImm8u),
+ /*10412*/ uint16(x86_xMatch),
+ /*10413*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10415*/ uint16(x86_xReadIb),
+ /*10416*/ uint16(x86_xArgRM32),
+ /*10417*/ uint16(x86_xArgImm8u),
+ /*10418*/ uint16(x86_xMatch),
+ /*10419*/ uint16(x86_xCondDataSize), 10407, 10413, 10423,
+ /*10423*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10425*/ uint16(x86_xReadIb),
+ /*10426*/ uint16(x86_xArgRM64),
+ /*10427*/ uint16(x86_xArgImm8u),
+ /*10428*/ uint16(x86_xMatch),
+ /*10429*/ uint16(x86_xCondIs64), 10432, 10448,
+ /*10432*/ uint16(x86_xCondDataSize), 10436, 10442, 0,
+ /*10436*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10438*/ uint16(x86_xReadIb),
+ /*10439*/ uint16(x86_xArgRM16),
+ /*10440*/ uint16(x86_xArgImm8u),
+ /*10441*/ uint16(x86_xMatch),
+ /*10442*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10444*/ uint16(x86_xReadIb),
+ /*10445*/ uint16(x86_xArgRM32),
+ /*10446*/ uint16(x86_xArgImm8u),
+ /*10447*/ uint16(x86_xMatch),
+ /*10448*/ uint16(x86_xCondDataSize), 10436, 10442, 10452,
+ /*10452*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10454*/ uint16(x86_xReadIb),
+ /*10455*/ uint16(x86_xArgRM64),
+ /*10456*/ uint16(x86_xArgImm8u),
+ /*10457*/ uint16(x86_xMatch),
+ /*10458*/ uint16(x86_xCondIs64), 10461, 10477,
+ /*10461*/ uint16(x86_xCondDataSize), 10465, 10471, 0,
+ /*10465*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10467*/ uint16(x86_xReadIb),
+ /*10468*/ uint16(x86_xArgRM16),
+ /*10469*/ uint16(x86_xArgImm8u),
+ /*10470*/ uint16(x86_xMatch),
+ /*10471*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10473*/ uint16(x86_xReadIb),
+ /*10474*/ uint16(x86_xArgRM32),
+ /*10475*/ uint16(x86_xArgImm8u),
+ /*10476*/ uint16(x86_xMatch),
+ /*10477*/ uint16(x86_xCondDataSize), 10465, 10471, 10481,
+ /*10481*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10483*/ uint16(x86_xReadIb),
+ /*10484*/ uint16(x86_xArgRM64),
+ /*10485*/ uint16(x86_xArgImm8u),
+ /*10486*/ uint16(x86_xMatch),
+ /*10487*/ uint16(x86_xCondIs64), 10490, 10506,
+ /*10490*/ uint16(x86_xCondDataSize), 10494, 10500, 0,
+ /*10494*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10496*/ uint16(x86_xReadIb),
+ /*10497*/ uint16(x86_xArgRM16),
+ /*10498*/ uint16(x86_xArgImm8u),
+ /*10499*/ uint16(x86_xMatch),
+ /*10500*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10502*/ uint16(x86_xReadIb),
+ /*10503*/ uint16(x86_xArgRM32),
+ /*10504*/ uint16(x86_xArgImm8u),
+ /*10505*/ uint16(x86_xMatch),
+ /*10506*/ uint16(x86_xCondDataSize), 10494, 10500, 10510,
+ /*10510*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10512*/ uint16(x86_xReadIb),
+ /*10513*/ uint16(x86_xArgRM64),
+ /*10514*/ uint16(x86_xArgImm8u),
+ /*10515*/ uint16(x86_xMatch),
+ /*10516*/ uint16(x86_xSetOp), uint16(x86_RET),
+ /*10518*/ uint16(x86_xReadIw),
+ /*10519*/ uint16(x86_xArgImm16u),
+ /*10520*/ uint16(x86_xMatch),
+ /*10521*/ uint16(x86_xSetOp), uint16(x86_RET),
+ /*10523*/ uint16(x86_xMatch),
+ /*10524*/ uint16(x86_xCondIs64), 10527, 0,
+ /*10527*/ uint16(x86_xCondDataSize), 10531, 10537, 0,
+ /*10531*/ uint16(x86_xSetOp), uint16(x86_LES),
+ /*10533*/ uint16(x86_xReadSlashR),
+ /*10534*/ uint16(x86_xArgR16),
+ /*10535*/ uint16(x86_xArgM16colon16),
+ /*10536*/ uint16(x86_xMatch),
+ /*10537*/ uint16(x86_xSetOp), uint16(x86_LES),
+ /*10539*/ uint16(x86_xReadSlashR),
+ /*10540*/ uint16(x86_xArgR32),
+ /*10541*/ uint16(x86_xArgM16colon32),
+ /*10542*/ uint16(x86_xMatch),
+ /*10543*/ uint16(x86_xCondIs64), 10546, 0,
+ /*10546*/ uint16(x86_xCondDataSize), 10550, 10556, 0,
+ /*10550*/ uint16(x86_xSetOp), uint16(x86_LDS),
+ /*10552*/ uint16(x86_xReadSlashR),
+ /*10553*/ uint16(x86_xArgR16),
+ /*10554*/ uint16(x86_xArgM16colon16),
+ /*10555*/ uint16(x86_xMatch),
+ /*10556*/ uint16(x86_xSetOp), uint16(x86_LDS),
+ /*10558*/ uint16(x86_xReadSlashR),
+ /*10559*/ uint16(x86_xArgR32),
+ /*10560*/ uint16(x86_xArgM16colon32),
+ /*10561*/ uint16(x86_xMatch),
+ /*10562*/ uint16(x86_xCondByte), 1,
+ 0xF8, 10581,
+ /*10566*/ uint16(x86_xCondSlashR),
+ 10575, // 0
+ 0, // 1
+ 0, // 2
+ 0, // 3
+ 0, // 4
+ 0, // 5
+ 0, // 6
+ 0, // 7
+ /*10575*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10577*/ uint16(x86_xReadIb),
+ /*10578*/ uint16(x86_xArgRM8),
+ /*10579*/ uint16(x86_xArgImm8u),
+ /*10580*/ uint16(x86_xMatch),
+ /*10581*/ uint16(x86_xSetOp), uint16(x86_XABORT),
+ /*10583*/ uint16(x86_xReadIb),
+ /*10584*/ uint16(x86_xArgImm8u),
+ /*10585*/ uint16(x86_xMatch),
+ /*10586*/ uint16(x86_xCondByte), 1,
+ 0xF8, 10628,
+ /*10590*/ uint16(x86_xCondSlashR),
+ 10599, // 0
+ 0, // 1
+ 0, // 2
+ 0, // 3
+ 0, // 4
+ 0, // 5
+ 0, // 6
+ 0, // 7
+ /*10599*/ uint16(x86_xCondIs64), 10602, 10618,
+ /*10602*/ uint16(x86_xCondDataSize), 10606, 10612, 0,
+ /*10606*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10608*/ uint16(x86_xReadIw),
+ /*10609*/ uint16(x86_xArgRM16),
+ /*10610*/ uint16(x86_xArgImm16),
+ /*10611*/ uint16(x86_xMatch),
+ /*10612*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10614*/ uint16(x86_xReadId),
+ /*10615*/ uint16(x86_xArgRM32),
+ /*10616*/ uint16(x86_xArgImm32),
+ /*10617*/ uint16(x86_xMatch),
+ /*10618*/ uint16(x86_xCondDataSize), 10606, 10612, 10622,
+ /*10622*/ uint16(x86_xSetOp), uint16(x86_MOV),
+ /*10624*/ uint16(x86_xReadId),
+ /*10625*/ uint16(x86_xArgRM64),
+ /*10626*/ uint16(x86_xArgImm32),
+ /*10627*/ uint16(x86_xMatch),
+ /*10628*/ uint16(x86_xCondDataSize), 10632, 10637, 10642,
+ /*10632*/ uint16(x86_xSetOp), uint16(x86_XBEGIN),
+ /*10634*/ uint16(x86_xReadCw),
+ /*10635*/ uint16(x86_xArgRel16),
+ /*10636*/ uint16(x86_xMatch),
+ /*10637*/ uint16(x86_xSetOp), uint16(x86_XBEGIN),
+ /*10639*/ uint16(x86_xReadCd),
+ /*10640*/ uint16(x86_xArgRel32),
+ /*10641*/ uint16(x86_xMatch),
+ /*10642*/ uint16(x86_xSetOp), uint16(x86_XBEGIN),
+ /*10644*/ uint16(x86_xReadCd),
+ /*10645*/ uint16(x86_xArgRel32),
+ /*10646*/ uint16(x86_xMatch),
+ /*10647*/ uint16(x86_xSetOp), uint16(x86_ENTER),
+ /*10649*/ uint16(x86_xReadIw),
+ /*10650*/ uint16(x86_xReadIb),
+ /*10651*/ uint16(x86_xArgImm16u),
+ /*10652*/ uint16(x86_xArgImm8u),
+ /*10653*/ uint16(x86_xMatch),
+ /*10654*/ uint16(x86_xCondIs64), 10657, 10667,
+ /*10657*/ uint16(x86_xCondDataSize), 10661, 10664, 0,
+ /*10661*/ uint16(x86_xSetOp), uint16(x86_LEAVE),
+ /*10663*/ uint16(x86_xMatch),
+ /*10664*/ uint16(x86_xSetOp), uint16(x86_LEAVE),
+ /*10666*/ uint16(x86_xMatch),
+ /*10667*/ uint16(x86_xCondDataSize), 10661, 10671, 10674,
+ /*10671*/ uint16(x86_xSetOp), uint16(x86_LEAVE),
+ /*10673*/ uint16(x86_xMatch),
+ /*10674*/ uint16(x86_xSetOp), uint16(x86_LEAVE),
+ /*10676*/ uint16(x86_xMatch),
+ /*10677*/ uint16(x86_xSetOp), uint16(x86_LRET),
+ /*10679*/ uint16(x86_xReadIw),
+ /*10680*/ uint16(x86_xArgImm16u),
+ /*10681*/ uint16(x86_xMatch),
+ /*10682*/ uint16(x86_xSetOp), uint16(x86_LRET),
+ /*10684*/ uint16(x86_xMatch),
+ /*10685*/ uint16(x86_xSetOp), uint16(x86_INT),
+ /*10687*/ uint16(x86_xArg3),
+ /*10688*/ uint16(x86_xMatch),
+ /*10689*/ uint16(x86_xSetOp), uint16(x86_INT),
+ /*10691*/ uint16(x86_xReadIb),
+ /*10692*/ uint16(x86_xArgImm8u),
+ /*10693*/ uint16(x86_xMatch),
+ /*10694*/ uint16(x86_xCondIs64), 10697, 0,
+ /*10697*/ uint16(x86_xSetOp), uint16(x86_INTO),
+ /*10699*/ uint16(x86_xMatch),
+ /*10700*/ uint16(x86_xCondIs64), 10703, 10713,
+ /*10703*/ uint16(x86_xCondDataSize), 10707, 10710, 0,
+ /*10707*/ uint16(x86_xSetOp), uint16(x86_IRET),
+ /*10709*/ uint16(x86_xMatch),
+ /*10710*/ uint16(x86_xSetOp), uint16(x86_IRETD),
+ /*10712*/ uint16(x86_xMatch),
+ /*10713*/ uint16(x86_xCondDataSize), 10707, 10710, 10717,
+ /*10717*/ uint16(x86_xSetOp), uint16(x86_IRETQ),
+ /*10719*/ uint16(x86_xMatch),
+ /*10720*/ uint16(x86_xCondSlashR),
+ 10729, // 0
+ 10734, // 1
+ 10739, // 2
+ 10744, // 3
+ 10749, // 4
+ 10754, // 5
+ 0, // 6
+ 10759, // 7
+ /*10729*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10731*/ uint16(x86_xArgRM8),
+ /*10732*/ uint16(x86_xArg1),
+ /*10733*/ uint16(x86_xMatch),
+ /*10734*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10736*/ uint16(x86_xArgRM8),
+ /*10737*/ uint16(x86_xArg1),
+ /*10738*/ uint16(x86_xMatch),
+ /*10739*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10741*/ uint16(x86_xArgRM8),
+ /*10742*/ uint16(x86_xArg1),
+ /*10743*/ uint16(x86_xMatch),
+ /*10744*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10746*/ uint16(x86_xArgRM8),
+ /*10747*/ uint16(x86_xArg1),
+ /*10748*/ uint16(x86_xMatch),
+ /*10749*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10751*/ uint16(x86_xArgRM8),
+ /*10752*/ uint16(x86_xArg1),
+ /*10753*/ uint16(x86_xMatch),
+ /*10754*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10756*/ uint16(x86_xArgRM8),
+ /*10757*/ uint16(x86_xArg1),
+ /*10758*/ uint16(x86_xMatch),
+ /*10759*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10761*/ uint16(x86_xArgRM8),
+ /*10762*/ uint16(x86_xArg1),
+ /*10763*/ uint16(x86_xMatch),
+ /*10764*/ uint16(x86_xCondSlashR),
+ 10773, // 0
+ 10799, // 1
+ 10825, // 2
+ 10851, // 3
+ 10877, // 4
+ 10903, // 5
+ 0, // 6
+ 10929, // 7
+ /*10773*/ uint16(x86_xCondIs64), 10776, 10790,
+ /*10776*/ uint16(x86_xCondDataSize), 10780, 10785, 0,
+ /*10780*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10782*/ uint16(x86_xArgRM16),
+ /*10783*/ uint16(x86_xArg1),
+ /*10784*/ uint16(x86_xMatch),
+ /*10785*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10787*/ uint16(x86_xArgRM32),
+ /*10788*/ uint16(x86_xArg1),
+ /*10789*/ uint16(x86_xMatch),
+ /*10790*/ uint16(x86_xCondDataSize), 10780, 10785, 10794,
+ /*10794*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10796*/ uint16(x86_xArgRM64),
+ /*10797*/ uint16(x86_xArg1),
+ /*10798*/ uint16(x86_xMatch),
+ /*10799*/ uint16(x86_xCondIs64), 10802, 10816,
+ /*10802*/ uint16(x86_xCondDataSize), 10806, 10811, 0,
+ /*10806*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10808*/ uint16(x86_xArgRM16),
+ /*10809*/ uint16(x86_xArg1),
+ /*10810*/ uint16(x86_xMatch),
+ /*10811*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10813*/ uint16(x86_xArgRM32),
+ /*10814*/ uint16(x86_xArg1),
+ /*10815*/ uint16(x86_xMatch),
+ /*10816*/ uint16(x86_xCondDataSize), 10806, 10811, 10820,
+ /*10820*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10822*/ uint16(x86_xArgRM64),
+ /*10823*/ uint16(x86_xArg1),
+ /*10824*/ uint16(x86_xMatch),
+ /*10825*/ uint16(x86_xCondIs64), 10828, 10842,
+ /*10828*/ uint16(x86_xCondDataSize), 10832, 10837, 0,
+ /*10832*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10834*/ uint16(x86_xArgRM16),
+ /*10835*/ uint16(x86_xArg1),
+ /*10836*/ uint16(x86_xMatch),
+ /*10837*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10839*/ uint16(x86_xArgRM32),
+ /*10840*/ uint16(x86_xArg1),
+ /*10841*/ uint16(x86_xMatch),
+ /*10842*/ uint16(x86_xCondDataSize), 10832, 10837, 10846,
+ /*10846*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10848*/ uint16(x86_xArgRM64),
+ /*10849*/ uint16(x86_xArg1),
+ /*10850*/ uint16(x86_xMatch),
+ /*10851*/ uint16(x86_xCondIs64), 10854, 10868,
+ /*10854*/ uint16(x86_xCondDataSize), 10858, 10863, 0,
+ /*10858*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10860*/ uint16(x86_xArgRM16),
+ /*10861*/ uint16(x86_xArg1),
+ /*10862*/ uint16(x86_xMatch),
+ /*10863*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10865*/ uint16(x86_xArgRM32),
+ /*10866*/ uint16(x86_xArg1),
+ /*10867*/ uint16(x86_xMatch),
+ /*10868*/ uint16(x86_xCondDataSize), 10858, 10863, 10872,
+ /*10872*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10874*/ uint16(x86_xArgRM64),
+ /*10875*/ uint16(x86_xArg1),
+ /*10876*/ uint16(x86_xMatch),
+ /*10877*/ uint16(x86_xCondIs64), 10880, 10894,
+ /*10880*/ uint16(x86_xCondDataSize), 10884, 10889, 0,
+ /*10884*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10886*/ uint16(x86_xArgRM16),
+ /*10887*/ uint16(x86_xArg1),
+ /*10888*/ uint16(x86_xMatch),
+ /*10889*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10891*/ uint16(x86_xArgRM32),
+ /*10892*/ uint16(x86_xArg1),
+ /*10893*/ uint16(x86_xMatch),
+ /*10894*/ uint16(x86_xCondDataSize), 10884, 10889, 10898,
+ /*10898*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10900*/ uint16(x86_xArgRM64),
+ /*10901*/ uint16(x86_xArg1),
+ /*10902*/ uint16(x86_xMatch),
+ /*10903*/ uint16(x86_xCondIs64), 10906, 10920,
+ /*10906*/ uint16(x86_xCondDataSize), 10910, 10915, 0,
+ /*10910*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10912*/ uint16(x86_xArgRM16),
+ /*10913*/ uint16(x86_xArg1),
+ /*10914*/ uint16(x86_xMatch),
+ /*10915*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10917*/ uint16(x86_xArgRM32),
+ /*10918*/ uint16(x86_xArg1),
+ /*10919*/ uint16(x86_xMatch),
+ /*10920*/ uint16(x86_xCondDataSize), 10910, 10915, 10924,
+ /*10924*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10926*/ uint16(x86_xArgRM64),
+ /*10927*/ uint16(x86_xArg1),
+ /*10928*/ uint16(x86_xMatch),
+ /*10929*/ uint16(x86_xCondIs64), 10932, 10946,
+ /*10932*/ uint16(x86_xCondDataSize), 10936, 10941, 0,
+ /*10936*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10938*/ uint16(x86_xArgRM16),
+ /*10939*/ uint16(x86_xArg1),
+ /*10940*/ uint16(x86_xMatch),
+ /*10941*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10943*/ uint16(x86_xArgRM32),
+ /*10944*/ uint16(x86_xArg1),
+ /*10945*/ uint16(x86_xMatch),
+ /*10946*/ uint16(x86_xCondDataSize), 10936, 10941, 10950,
+ /*10950*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10952*/ uint16(x86_xArgRM64),
+ /*10953*/ uint16(x86_xArg1),
+ /*10954*/ uint16(x86_xMatch),
+ /*10955*/ uint16(x86_xCondSlashR),
+ 10964, // 0
+ 10969, // 1
+ 10974, // 2
+ 10979, // 3
+ 10984, // 4
+ 10989, // 5
+ 0, // 6
+ 10994, // 7
+ /*10964*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*10966*/ uint16(x86_xArgRM8),
+ /*10967*/ uint16(x86_xArgCL),
+ /*10968*/ uint16(x86_xMatch),
+ /*10969*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*10971*/ uint16(x86_xArgRM8),
+ /*10972*/ uint16(x86_xArgCL),
+ /*10973*/ uint16(x86_xMatch),
+ /*10974*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*10976*/ uint16(x86_xArgRM8),
+ /*10977*/ uint16(x86_xArgCL),
+ /*10978*/ uint16(x86_xMatch),
+ /*10979*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*10981*/ uint16(x86_xArgRM8),
+ /*10982*/ uint16(x86_xArgCL),
+ /*10983*/ uint16(x86_xMatch),
+ /*10984*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*10986*/ uint16(x86_xArgRM8),
+ /*10987*/ uint16(x86_xArgCL),
+ /*10988*/ uint16(x86_xMatch),
+ /*10989*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*10991*/ uint16(x86_xArgRM8),
+ /*10992*/ uint16(x86_xArgCL),
+ /*10993*/ uint16(x86_xMatch),
+ /*10994*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*10996*/ uint16(x86_xArgRM8),
+ /*10997*/ uint16(x86_xArgCL),
+ /*10998*/ uint16(x86_xMatch),
+ /*10999*/ uint16(x86_xCondSlashR),
+ 11008, // 0
+ 11034, // 1
+ 11060, // 2
+ 11086, // 3
+ 11112, // 4
+ 11138, // 5
+ 0, // 6
+ 11164, // 7
+ /*11008*/ uint16(x86_xCondIs64), 11011, 11025,
+ /*11011*/ uint16(x86_xCondDataSize), 11015, 11020, 0,
+ /*11015*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*11017*/ uint16(x86_xArgRM16),
+ /*11018*/ uint16(x86_xArgCL),
+ /*11019*/ uint16(x86_xMatch),
+ /*11020*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*11022*/ uint16(x86_xArgRM32),
+ /*11023*/ uint16(x86_xArgCL),
+ /*11024*/ uint16(x86_xMatch),
+ /*11025*/ uint16(x86_xCondDataSize), 11015, 11020, 11029,
+ /*11029*/ uint16(x86_xSetOp), uint16(x86_ROL),
+ /*11031*/ uint16(x86_xArgRM64),
+ /*11032*/ uint16(x86_xArgCL),
+ /*11033*/ uint16(x86_xMatch),
+ /*11034*/ uint16(x86_xCondIs64), 11037, 11051,
+ /*11037*/ uint16(x86_xCondDataSize), 11041, 11046, 0,
+ /*11041*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*11043*/ uint16(x86_xArgRM16),
+ /*11044*/ uint16(x86_xArgCL),
+ /*11045*/ uint16(x86_xMatch),
+ /*11046*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*11048*/ uint16(x86_xArgRM32),
+ /*11049*/ uint16(x86_xArgCL),
+ /*11050*/ uint16(x86_xMatch),
+ /*11051*/ uint16(x86_xCondDataSize), 11041, 11046, 11055,
+ /*11055*/ uint16(x86_xSetOp), uint16(x86_ROR),
+ /*11057*/ uint16(x86_xArgRM64),
+ /*11058*/ uint16(x86_xArgCL),
+ /*11059*/ uint16(x86_xMatch),
+ /*11060*/ uint16(x86_xCondIs64), 11063, 11077,
+ /*11063*/ uint16(x86_xCondDataSize), 11067, 11072, 0,
+ /*11067*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*11069*/ uint16(x86_xArgRM16),
+ /*11070*/ uint16(x86_xArgCL),
+ /*11071*/ uint16(x86_xMatch),
+ /*11072*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*11074*/ uint16(x86_xArgRM32),
+ /*11075*/ uint16(x86_xArgCL),
+ /*11076*/ uint16(x86_xMatch),
+ /*11077*/ uint16(x86_xCondDataSize), 11067, 11072, 11081,
+ /*11081*/ uint16(x86_xSetOp), uint16(x86_RCL),
+ /*11083*/ uint16(x86_xArgRM64),
+ /*11084*/ uint16(x86_xArgCL),
+ /*11085*/ uint16(x86_xMatch),
+ /*11086*/ uint16(x86_xCondIs64), 11089, 11103,
+ /*11089*/ uint16(x86_xCondDataSize), 11093, 11098, 0,
+ /*11093*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*11095*/ uint16(x86_xArgRM16),
+ /*11096*/ uint16(x86_xArgCL),
+ /*11097*/ uint16(x86_xMatch),
+ /*11098*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*11100*/ uint16(x86_xArgRM32),
+ /*11101*/ uint16(x86_xArgCL),
+ /*11102*/ uint16(x86_xMatch),
+ /*11103*/ uint16(x86_xCondDataSize), 11093, 11098, 11107,
+ /*11107*/ uint16(x86_xSetOp), uint16(x86_RCR),
+ /*11109*/ uint16(x86_xArgRM64),
+ /*11110*/ uint16(x86_xArgCL),
+ /*11111*/ uint16(x86_xMatch),
+ /*11112*/ uint16(x86_xCondIs64), 11115, 11129,
+ /*11115*/ uint16(x86_xCondDataSize), 11119, 11124, 0,
+ /*11119*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*11121*/ uint16(x86_xArgRM16),
+ /*11122*/ uint16(x86_xArgCL),
+ /*11123*/ uint16(x86_xMatch),
+ /*11124*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*11126*/ uint16(x86_xArgRM32),
+ /*11127*/ uint16(x86_xArgCL),
+ /*11128*/ uint16(x86_xMatch),
+ /*11129*/ uint16(x86_xCondDataSize), 11119, 11124, 11133,
+ /*11133*/ uint16(x86_xSetOp), uint16(x86_SHL),
+ /*11135*/ uint16(x86_xArgRM64),
+ /*11136*/ uint16(x86_xArgCL),
+ /*11137*/ uint16(x86_xMatch),
+ /*11138*/ uint16(x86_xCondIs64), 11141, 11155,
+ /*11141*/ uint16(x86_xCondDataSize), 11145, 11150, 0,
+ /*11145*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*11147*/ uint16(x86_xArgRM16),
+ /*11148*/ uint16(x86_xArgCL),
+ /*11149*/ uint16(x86_xMatch),
+ /*11150*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*11152*/ uint16(x86_xArgRM32),
+ /*11153*/ uint16(x86_xArgCL),
+ /*11154*/ uint16(x86_xMatch),
+ /*11155*/ uint16(x86_xCondDataSize), 11145, 11150, 11159,
+ /*11159*/ uint16(x86_xSetOp), uint16(x86_SHR),
+ /*11161*/ uint16(x86_xArgRM64),
+ /*11162*/ uint16(x86_xArgCL),
+ /*11163*/ uint16(x86_xMatch),
+ /*11164*/ uint16(x86_xCondIs64), 11167, 11181,
+ /*11167*/ uint16(x86_xCondDataSize), 11171, 11176, 0,
+ /*11171*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*11173*/ uint16(x86_xArgRM16),
+ /*11174*/ uint16(x86_xArgCL),
+ /*11175*/ uint16(x86_xMatch),
+ /*11176*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*11178*/ uint16(x86_xArgRM32),
+ /*11179*/ uint16(x86_xArgCL),
+ /*11180*/ uint16(x86_xMatch),
+ /*11181*/ uint16(x86_xCondDataSize), 11171, 11176, 11185,
+ /*11185*/ uint16(x86_xSetOp), uint16(x86_SAR),
+ /*11187*/ uint16(x86_xArgRM64),
+ /*11188*/ uint16(x86_xArgCL),
+ /*11189*/ uint16(x86_xMatch),
+ /*11190*/ uint16(x86_xCondIs64), 11193, 0,
+ /*11193*/ uint16(x86_xSetOp), uint16(x86_AAM),
+ /*11195*/ uint16(x86_xReadIb),
+ /*11196*/ uint16(x86_xArgImm8u),
+ /*11197*/ uint16(x86_xMatch),
+ /*11198*/ uint16(x86_xCondIs64), 11201, 0,
+ /*11201*/ uint16(x86_xSetOp), uint16(x86_AAD),
+ /*11203*/ uint16(x86_xReadIb),
+ /*11204*/ uint16(x86_xArgImm8u),
+ /*11205*/ uint16(x86_xMatch),
+ /*11206*/ uint16(x86_xCondIs64), 11209, 11212,
+ /*11209*/ uint16(x86_xSetOp), uint16(x86_XLATB),
+ /*11211*/ uint16(x86_xMatch),
+ /*11212*/ uint16(x86_xCondDataSize), 11209, 11209, 11216,
+ /*11216*/ uint16(x86_xSetOp), uint16(x86_XLATB),
+ /*11218*/ uint16(x86_xMatch),
+ /*11219*/ uint16(x86_xCondByte), 64,
+ 0xc0, 11390,
+ 0xc1, 11390,
+ 0xc2, 11390,
+ 0xc3, 11390,
+ 0xc4, 11390,
+ 0xc5, 11390,
+ 0xc6, 11390,
+ 0xc7, 11390,
+ 0xc8, 11395,
+ 0xc9, 11395,
+ 0xca, 11395,
+ 0xcb, 11395,
+ 0xcc, 11395,
+ 0xcd, 11395,
+ 0xce, 11395,
+ 0xcf, 11395,
+ 0xd0, 11400,
+ 0xd1, 11400,
+ 0xd2, 11400,
+ 0xd3, 11400,
+ 0xd4, 11400,
+ 0xd5, 11400,
+ 0xd6, 11400,
+ 0xd7, 11400,
+ 0xd8, 11404,
+ 0xd9, 11404,
+ 0xda, 11404,
+ 0xdb, 11404,
+ 0xdc, 11404,
+ 0xdd, 11404,
+ 0xde, 11404,
+ 0xdf, 11404,
+ 0xe0, 11408,
+ 0xe1, 11408,
+ 0xe2, 11408,
+ 0xe3, 11408,
+ 0xe4, 11408,
+ 0xe5, 11408,
+ 0xe6, 11408,
+ 0xe7, 11408,
+ 0xe8, 11413,
+ 0xe9, 11413,
+ 0xea, 11413,
+ 0xeb, 11413,
+ 0xec, 11413,
+ 0xed, 11413,
+ 0xee, 11413,
+ 0xef, 11413,
+ 0xf0, 11418,
+ 0xf1, 11418,
+ 0xf2, 11418,
+ 0xf3, 11418,
+ 0xf4, 11418,
+ 0xf5, 11418,
+ 0xf6, 11418,
+ 0xf7, 11418,
+ 0xf8, 11423,
+ 0xf9, 11423,
+ 0xfa, 11423,
+ 0xfb, 11423,
+ 0xfc, 11423,
+ 0xfd, 11423,
+ 0xfe, 11423,
+ 0xff, 11423,
+ /*11349*/ uint16(x86_xCondSlashR),
+ 11358, // 0
+ 11362, // 1
+ 11366, // 2
+ 11370, // 3
+ 11374, // 4
+ 11378, // 5
+ 11382, // 6
+ 11386, // 7
+ /*11358*/ uint16(x86_xSetOp), uint16(x86_FADD),
+ /*11360*/ uint16(x86_xArgM32fp),
+ /*11361*/ uint16(x86_xMatch),
+ /*11362*/ uint16(x86_xSetOp), uint16(x86_FMUL),
+ /*11364*/ uint16(x86_xArgM32fp),
+ /*11365*/ uint16(x86_xMatch),
+ /*11366*/ uint16(x86_xSetOp), uint16(x86_FCOM),
+ /*11368*/ uint16(x86_xArgM32fp),
+ /*11369*/ uint16(x86_xMatch),
+ /*11370*/ uint16(x86_xSetOp), uint16(x86_FCOMP),
+ /*11372*/ uint16(x86_xArgM32fp),
+ /*11373*/ uint16(x86_xMatch),
+ /*11374*/ uint16(x86_xSetOp), uint16(x86_FSUB),
+ /*11376*/ uint16(x86_xArgM32fp),
+ /*11377*/ uint16(x86_xMatch),
+ /*11378*/ uint16(x86_xSetOp), uint16(x86_FSUBR),
+ /*11380*/ uint16(x86_xArgM32fp),
+ /*11381*/ uint16(x86_xMatch),
+ /*11382*/ uint16(x86_xSetOp), uint16(x86_FDIV),
+ /*11384*/ uint16(x86_xArgM32fp),
+ /*11385*/ uint16(x86_xMatch),
+ /*11386*/ uint16(x86_xSetOp), uint16(x86_FDIVR),
+ /*11388*/ uint16(x86_xArgM32fp),
+ /*11389*/ uint16(x86_xMatch),
+ /*11390*/ uint16(x86_xSetOp), uint16(x86_FADD),
+ /*11392*/ uint16(x86_xArgST),
+ /*11393*/ uint16(x86_xArgSTi),
+ /*11394*/ uint16(x86_xMatch),
+ /*11395*/ uint16(x86_xSetOp), uint16(x86_FMUL),
+ /*11397*/ uint16(x86_xArgST),
+ /*11398*/ uint16(x86_xArgSTi),
+ /*11399*/ uint16(x86_xMatch),
+ /*11400*/ uint16(x86_xSetOp), uint16(x86_FCOM),
+ /*11402*/ uint16(x86_xArgSTi),
+ /*11403*/ uint16(x86_xMatch),
+ /*11404*/ uint16(x86_xSetOp), uint16(x86_FCOMP),
+ /*11406*/ uint16(x86_xArgSTi),
+ /*11407*/ uint16(x86_xMatch),
+ /*11408*/ uint16(x86_xSetOp), uint16(x86_FSUB),
+ /*11410*/ uint16(x86_xArgST),
+ /*11411*/ uint16(x86_xArgSTi),
+ /*11412*/ uint16(x86_xMatch),
+ /*11413*/ uint16(x86_xSetOp), uint16(x86_FSUBR),
+ /*11415*/ uint16(x86_xArgST),
+ /*11416*/ uint16(x86_xArgSTi),
+ /*11417*/ uint16(x86_xMatch),
+ /*11418*/ uint16(x86_xSetOp), uint16(x86_FDIV),
+ /*11420*/ uint16(x86_xArgST),
+ /*11421*/ uint16(x86_xArgSTi),
+ /*11422*/ uint16(x86_xMatch),
+ /*11423*/ uint16(x86_xSetOp), uint16(x86_FDIVR),
+ /*11425*/ uint16(x86_xArgST),
+ /*11426*/ uint16(x86_xArgSTi),
+ /*11427*/ uint16(x86_xMatch),
+ /*11428*/ uint16(x86_xCondByte), 42,
+ 0xc0, 11551,
+ 0xc1, 11551,
+ 0xc2, 11551,
+ 0xc3, 11551,
+ 0xc4, 11551,
+ 0xc5, 11551,
+ 0xc6, 11551,
+ 0xc7, 11551,
+ 0xc8, 11555,
+ 0xc9, 11555,
+ 0xca, 11555,
+ 0xcb, 11555,
+ 0xcc, 11555,
+ 0xcd, 11555,
+ 0xce, 11555,
+ 0xcf, 11555,
+ 0xD0, 11559,
+ 0xE0, 11562,
+ 0xE1, 11565,
+ 0xE4, 11568,
+ 0xE5, 11571,
+ 0xE8, 11574,
+ 0xE9, 11577,
+ 0xEA, 11580,
+ 0xEB, 11583,
+ 0xEC, 11586,
+ 0xF0, 11589,
+ 0xF1, 11592,
+ 0xF2, 11595,
+ 0xF3, 11598,
+ 0xF4, 11601,
+ 0xF5, 11604,
+ 0xF6, 11607,
+ 0xF7, 11610,
+ 0xF8, 11613,
+ 0xF9, 11616,
+ 0xFA, 11619,
+ 0xFB, 11622,
+ 0xFC, 11625,
+ 0xFD, 11628,
+ 0xFE, 11631,
+ 0xFF, 11634,
+ /*11514*/ uint16(x86_xCondSlashR),
+ 11523, // 0
+ 0, // 1
+ 11527, // 2
+ 11531, // 3
+ 11535, // 4
+ 11539, // 5
+ 11543, // 6
+ 11547, // 7
+ /*11523*/ uint16(x86_xSetOp), uint16(x86_FLD),
+ /*11525*/ uint16(x86_xArgM32fp),
+ /*11526*/ uint16(x86_xMatch),
+ /*11527*/ uint16(x86_xSetOp), uint16(x86_FST),
+ /*11529*/ uint16(x86_xArgM32fp),
+ /*11530*/ uint16(x86_xMatch),
+ /*11531*/ uint16(x86_xSetOp), uint16(x86_FSTP),
+ /*11533*/ uint16(x86_xArgM32fp),
+ /*11534*/ uint16(x86_xMatch),
+ /*11535*/ uint16(x86_xSetOp), uint16(x86_FLDENV),
+ /*11537*/ uint16(x86_xArgM1428byte),
+ /*11538*/ uint16(x86_xMatch),
+ /*11539*/ uint16(x86_xSetOp), uint16(x86_FLDCW),
+ /*11541*/ uint16(x86_xArgM2byte),
+ /*11542*/ uint16(x86_xMatch),
+ /*11543*/ uint16(x86_xSetOp), uint16(x86_FNSTENV),
+ /*11545*/ uint16(x86_xArgM1428byte),
+ /*11546*/ uint16(x86_xMatch),
+ /*11547*/ uint16(x86_xSetOp), uint16(x86_FNSTCW),
+ /*11549*/ uint16(x86_xArgM2byte),
+ /*11550*/ uint16(x86_xMatch),
+ /*11551*/ uint16(x86_xSetOp), uint16(x86_FLD),
+ /*11553*/ uint16(x86_xArgSTi),
+ /*11554*/ uint16(x86_xMatch),
+ /*11555*/ uint16(x86_xSetOp), uint16(x86_FXCH),
+ /*11557*/ uint16(x86_xArgSTi),
+ /*11558*/ uint16(x86_xMatch),
+ /*11559*/ uint16(x86_xSetOp), uint16(x86_FNOP),
+ /*11561*/ uint16(x86_xMatch),
+ /*11562*/ uint16(x86_xSetOp), uint16(x86_FCHS),
+ /*11564*/ uint16(x86_xMatch),
+ /*11565*/ uint16(x86_xSetOp), uint16(x86_FABS),
+ /*11567*/ uint16(x86_xMatch),
+ /*11568*/ uint16(x86_xSetOp), uint16(x86_FTST),
+ /*11570*/ uint16(x86_xMatch),
+ /*11571*/ uint16(x86_xSetOp), uint16(x86_FXAM),
+ /*11573*/ uint16(x86_xMatch),
+ /*11574*/ uint16(x86_xSetOp), uint16(x86_FLD1),
+ /*11576*/ uint16(x86_xMatch),
+ /*11577*/ uint16(x86_xSetOp), uint16(x86_FLDL2T),
+ /*11579*/ uint16(x86_xMatch),
+ /*11580*/ uint16(x86_xSetOp), uint16(x86_FLDL2E),
+ /*11582*/ uint16(x86_xMatch),
+ /*11583*/ uint16(x86_xSetOp), uint16(x86_FLDPI),
+ /*11585*/ uint16(x86_xMatch),
+ /*11586*/ uint16(x86_xSetOp), uint16(x86_FLDLG2),
+ /*11588*/ uint16(x86_xMatch),
+ /*11589*/ uint16(x86_xSetOp), uint16(x86_F2XM1),
+ /*11591*/ uint16(x86_xMatch),
+ /*11592*/ uint16(x86_xSetOp), uint16(x86_FYL2X),
+ /*11594*/ uint16(x86_xMatch),
+ /*11595*/ uint16(x86_xSetOp), uint16(x86_FPTAN),
+ /*11597*/ uint16(x86_xMatch),
+ /*11598*/ uint16(x86_xSetOp), uint16(x86_FPATAN),
+ /*11600*/ uint16(x86_xMatch),
+ /*11601*/ uint16(x86_xSetOp), uint16(x86_FXTRACT),
+ /*11603*/ uint16(x86_xMatch),
+ /*11604*/ uint16(x86_xSetOp), uint16(x86_FPREM1),
+ /*11606*/ uint16(x86_xMatch),
+ /*11607*/ uint16(x86_xSetOp), uint16(x86_FDECSTP),
+ /*11609*/ uint16(x86_xMatch),
+ /*11610*/ uint16(x86_xSetOp), uint16(x86_FINCSTP),
+ /*11612*/ uint16(x86_xMatch),
+ /*11613*/ uint16(x86_xSetOp), uint16(x86_FPREM),
+ /*11615*/ uint16(x86_xMatch),
+ /*11616*/ uint16(x86_xSetOp), uint16(x86_FYL2XP1),
+ /*11618*/ uint16(x86_xMatch),
+ /*11619*/ uint16(x86_xSetOp), uint16(x86_FSQRT),
+ /*11621*/ uint16(x86_xMatch),
+ /*11622*/ uint16(x86_xSetOp), uint16(x86_FSINCOS),
+ /*11624*/ uint16(x86_xMatch),
+ /*11625*/ uint16(x86_xSetOp), uint16(x86_FRNDINT),
+ /*11627*/ uint16(x86_xMatch),
+ /*11628*/ uint16(x86_xSetOp), uint16(x86_FSCALE),
+ /*11630*/ uint16(x86_xMatch),
+ /*11631*/ uint16(x86_xSetOp), uint16(x86_FSIN),
+ /*11633*/ uint16(x86_xMatch),
+ /*11634*/ uint16(x86_xSetOp), uint16(x86_FCOS),
+ /*11636*/ uint16(x86_xMatch),
+ /*11637*/ uint16(x86_xCondByte), 33,
+ 0xc0, 11746,
+ 0xc1, 11746,
+ 0xc2, 11746,
+ 0xc3, 11746,
+ 0xc4, 11746,
+ 0xc5, 11746,
+ 0xc6, 11746,
+ 0xc7, 11746,
+ 0xc8, 11751,
+ 0xc9, 11751,
+ 0xca, 11751,
+ 0xcb, 11751,
+ 0xcc, 11751,
+ 0xcd, 11751,
+ 0xce, 11751,
+ 0xcf, 11751,
+ 0xd0, 11756,
+ 0xd1, 11756,
+ 0xd2, 11756,
+ 0xd3, 11756,
+ 0xd4, 11756,
+ 0xd5, 11756,
+ 0xd6, 11756,
+ 0xd7, 11756,
+ 0xd8, 11761,
+ 0xd9, 11761,
+ 0xda, 11761,
+ 0xdb, 11761,
+ 0xdc, 11761,
+ 0xdd, 11761,
+ 0xde, 11761,
+ 0xdf, 11761,
+ 0xE9, 11766,
+ /*11705*/ uint16(x86_xCondSlashR),
+ 11714, // 0
+ 11718, // 1
+ 11722, // 2
+ 11726, // 3
+ 11730, // 4
+ 11734, // 5
+ 11738, // 6
+ 11742, // 7
+ /*11714*/ uint16(x86_xSetOp), uint16(x86_FIADD),
+ /*11716*/ uint16(x86_xArgM32int),
+ /*11717*/ uint16(x86_xMatch),
+ /*11718*/ uint16(x86_xSetOp), uint16(x86_FIMUL),
+ /*11720*/ uint16(x86_xArgM32int),
+ /*11721*/ uint16(x86_xMatch),
+ /*11722*/ uint16(x86_xSetOp), uint16(x86_FICOM),
+ /*11724*/ uint16(x86_xArgM32int),
+ /*11725*/ uint16(x86_xMatch),
+ /*11726*/ uint16(x86_xSetOp), uint16(x86_FICOMP),
+ /*11728*/ uint16(x86_xArgM32int),
+ /*11729*/ uint16(x86_xMatch),
+ /*11730*/ uint16(x86_xSetOp), uint16(x86_FISUB),
+ /*11732*/ uint16(x86_xArgM32int),
+ /*11733*/ uint16(x86_xMatch),
+ /*11734*/ uint16(x86_xSetOp), uint16(x86_FISUBR),
+ /*11736*/ uint16(x86_xArgM32int),
+ /*11737*/ uint16(x86_xMatch),
+ /*11738*/ uint16(x86_xSetOp), uint16(x86_FIDIV),
+ /*11740*/ uint16(x86_xArgM32int),
+ /*11741*/ uint16(x86_xMatch),
+ /*11742*/ uint16(x86_xSetOp), uint16(x86_FIDIVR),
+ /*11744*/ uint16(x86_xArgM32int),
+ /*11745*/ uint16(x86_xMatch),
+ /*11746*/ uint16(x86_xSetOp), uint16(x86_FCMOVB),
+ /*11748*/ uint16(x86_xArgST),
+ /*11749*/ uint16(x86_xArgSTi),
+ /*11750*/ uint16(x86_xMatch),
+ /*11751*/ uint16(x86_xSetOp), uint16(x86_FCMOVE),
+ /*11753*/ uint16(x86_xArgST),
+ /*11754*/ uint16(x86_xArgSTi),
+ /*11755*/ uint16(x86_xMatch),
+ /*11756*/ uint16(x86_xSetOp), uint16(x86_FCMOVBE),
+ /*11758*/ uint16(x86_xArgST),
+ /*11759*/ uint16(x86_xArgSTi),
+ /*11760*/ uint16(x86_xMatch),
+ /*11761*/ uint16(x86_xSetOp), uint16(x86_FCMOVU),
+ /*11763*/ uint16(x86_xArgST),
+ /*11764*/ uint16(x86_xArgSTi),
+ /*11765*/ uint16(x86_xMatch),
+ /*11766*/ uint16(x86_xSetOp), uint16(x86_FUCOMPP),
+ /*11768*/ uint16(x86_xMatch),
+ /*11769*/ uint16(x86_xCondByte), 50,
+ 0xc0, 11904,
+ 0xc1, 11904,
+ 0xc2, 11904,
+ 0xc3, 11904,
+ 0xc4, 11904,
+ 0xc5, 11904,
+ 0xc6, 11904,
+ 0xc7, 11904,
+ 0xc8, 11909,
+ 0xc9, 11909,
+ 0xca, 11909,
+ 0xcb, 11909,
+ 0xcc, 11909,
+ 0xcd, 11909,
+ 0xce, 11909,
+ 0xcf, 11909,
+ 0xd0, 11914,
+ 0xd1, 11914,
+ 0xd2, 11914,
+ 0xd3, 11914,
+ 0xd4, 11914,
+ 0xd5, 11914,
+ 0xd6, 11914,
+ 0xd7, 11914,
+ 0xd8, 11919,
+ 0xd9, 11919,
+ 0xda, 11919,
+ 0xdb, 11919,
+ 0xdc, 11919,
+ 0xdd, 11919,
+ 0xde, 11919,
+ 0xdf, 11919,
+ 0xE2, 11924,
+ 0xE3, 11927,
+ 0xe8, 11930,
+ 0xe9, 11930,
+ 0xea, 11930,
+ 0xeb, 11930,
+ 0xec, 11930,
+ 0xed, 11930,
+ 0xee, 11930,
+ 0xef, 11930,
+ 0xf0, 11935,
+ 0xf1, 11935,
+ 0xf2, 11935,
+ 0xf3, 11935,
+ 0xf4, 11935,
+ 0xf5, 11935,
+ 0xf6, 11935,
+ 0xf7, 11935,
+ /*11871*/ uint16(x86_xCondSlashR),
+ 11880, // 0
+ 11884, // 1
+ 11888, // 2
+ 11892, // 3
+ 0, // 4
+ 11896, // 5
+ 0, // 6
+ 11900, // 7
+ /*11880*/ uint16(x86_xSetOp), uint16(x86_FILD),
+ /*11882*/ uint16(x86_xArgM32int),
+ /*11883*/ uint16(x86_xMatch),
+ /*11884*/ uint16(x86_xSetOp), uint16(x86_FISTTP),
+ /*11886*/ uint16(x86_xArgM32int),
+ /*11887*/ uint16(x86_xMatch),
+ /*11888*/ uint16(x86_xSetOp), uint16(x86_FIST),
+ /*11890*/ uint16(x86_xArgM32int),
+ /*11891*/ uint16(x86_xMatch),
+ /*11892*/ uint16(x86_xSetOp), uint16(x86_FISTP),
+ /*11894*/ uint16(x86_xArgM32int),
+ /*11895*/ uint16(x86_xMatch),
+ /*11896*/ uint16(x86_xSetOp), uint16(x86_FLD),
+ /*11898*/ uint16(x86_xArgM80fp),
+ /*11899*/ uint16(x86_xMatch),
+ /*11900*/ uint16(x86_xSetOp), uint16(x86_FSTP),
+ /*11902*/ uint16(x86_xArgM80fp),
+ /*11903*/ uint16(x86_xMatch),
+ /*11904*/ uint16(x86_xSetOp), uint16(x86_FCMOVNB),
+ /*11906*/ uint16(x86_xArgST),
+ /*11907*/ uint16(x86_xArgSTi),
+ /*11908*/ uint16(x86_xMatch),
+ /*11909*/ uint16(x86_xSetOp), uint16(x86_FCMOVNE),
+ /*11911*/ uint16(x86_xArgST),
+ /*11912*/ uint16(x86_xArgSTi),
+ /*11913*/ uint16(x86_xMatch),
+ /*11914*/ uint16(x86_xSetOp), uint16(x86_FCMOVNBE),
+ /*11916*/ uint16(x86_xArgST),
+ /*11917*/ uint16(x86_xArgSTi),
+ /*11918*/ uint16(x86_xMatch),
+ /*11919*/ uint16(x86_xSetOp), uint16(x86_FCMOVNU),
+ /*11921*/ uint16(x86_xArgST),
+ /*11922*/ uint16(x86_xArgSTi),
+ /*11923*/ uint16(x86_xMatch),
+ /*11924*/ uint16(x86_xSetOp), uint16(x86_FNCLEX),
+ /*11926*/ uint16(x86_xMatch),
+ /*11927*/ uint16(x86_xSetOp), uint16(x86_FNINIT),
+ /*11929*/ uint16(x86_xMatch),
+ /*11930*/ uint16(x86_xSetOp), uint16(x86_FUCOMI),
+ /*11932*/ uint16(x86_xArgST),
+ /*11933*/ uint16(x86_xArgSTi),
+ /*11934*/ uint16(x86_xMatch),
+ /*11935*/ uint16(x86_xSetOp), uint16(x86_FCOMI),
+ /*11937*/ uint16(x86_xArgST),
+ /*11938*/ uint16(x86_xArgSTi),
+ /*11939*/ uint16(x86_xMatch),
+ /*11940*/ uint16(x86_xCondByte), 48,
+ 0xc0, 12079,
+ 0xc1, 12079,
+ 0xc2, 12079,
+ 0xc3, 12079,
+ 0xc4, 12079,
+ 0xc5, 12079,
+ 0xc6, 12079,
+ 0xc7, 12079,
+ 0xc8, 12084,
+ 0xc9, 12084,
+ 0xca, 12084,
+ 0xcb, 12084,
+ 0xcc, 12084,
+ 0xcd, 12084,
+ 0xce, 12084,
+ 0xcf, 12084,
+ 0xe0, 12089,
+ 0xe1, 12089,
+ 0xe2, 12089,
+ 0xe3, 12089,
+ 0xe4, 12089,
+ 0xe5, 12089,
+ 0xe6, 12089,
+ 0xe7, 12089,
+ 0xe8, 12094,
+ 0xe9, 12094,
+ 0xea, 12094,
+ 0xeb, 12094,
+ 0xec, 12094,
+ 0xed, 12094,
+ 0xee, 12094,
+ 0xef, 12094,
+ 0xf0, 12099,
+ 0xf1, 12099,
+ 0xf2, 12099,
+ 0xf3, 12099,
+ 0xf4, 12099,
+ 0xf5, 12099,
+ 0xf6, 12099,
+ 0xf7, 12099,
+ 0xf8, 12104,
+ 0xf9, 12104,
+ 0xfa, 12104,
+ 0xfb, 12104,
+ 0xfc, 12104,
+ 0xfd, 12104,
+ 0xfe, 12104,
+ 0xff, 12104,
+ /*12038*/ uint16(x86_xCondSlashR),
+ 12047, // 0
+ 12051, // 1
+ 12055, // 2
+ 12059, // 3
+ 12063, // 4
+ 12067, // 5
+ 12071, // 6
+ 12075, // 7
+ /*12047*/ uint16(x86_xSetOp), uint16(x86_FADD),
+ /*12049*/ uint16(x86_xArgM64fp),
+ /*12050*/ uint16(x86_xMatch),
+ /*12051*/ uint16(x86_xSetOp), uint16(x86_FMUL),
+ /*12053*/ uint16(x86_xArgM64fp),
+ /*12054*/ uint16(x86_xMatch),
+ /*12055*/ uint16(x86_xSetOp), uint16(x86_FCOM),
+ /*12057*/ uint16(x86_xArgM64fp),
+ /*12058*/ uint16(x86_xMatch),
+ /*12059*/ uint16(x86_xSetOp), uint16(x86_FCOMP),
+ /*12061*/ uint16(x86_xArgM64fp),
+ /*12062*/ uint16(x86_xMatch),
+ /*12063*/ uint16(x86_xSetOp), uint16(x86_FSUB),
+ /*12065*/ uint16(x86_xArgM64fp),
+ /*12066*/ uint16(x86_xMatch),
+ /*12067*/ uint16(x86_xSetOp), uint16(x86_FSUBR),
+ /*12069*/ uint16(x86_xArgM64fp),
+ /*12070*/ uint16(x86_xMatch),
+ /*12071*/ uint16(x86_xSetOp), uint16(x86_FDIV),
+ /*12073*/ uint16(x86_xArgM64fp),
+ /*12074*/ uint16(x86_xMatch),
+ /*12075*/ uint16(x86_xSetOp), uint16(x86_FDIVR),
+ /*12077*/ uint16(x86_xArgM64fp),
+ /*12078*/ uint16(x86_xMatch),
+ /*12079*/ uint16(x86_xSetOp), uint16(x86_FADD),
+ /*12081*/ uint16(x86_xArgSTi),
+ /*12082*/ uint16(x86_xArgST),
+ /*12083*/ uint16(x86_xMatch),
+ /*12084*/ uint16(x86_xSetOp), uint16(x86_FMUL),
+ /*12086*/ uint16(x86_xArgSTi),
+ /*12087*/ uint16(x86_xArgST),
+ /*12088*/ uint16(x86_xMatch),
+ /*12089*/ uint16(x86_xSetOp), uint16(x86_FSUBR),
+ /*12091*/ uint16(x86_xArgSTi),
+ /*12092*/ uint16(x86_xArgST),
+ /*12093*/ uint16(x86_xMatch),
+ /*12094*/ uint16(x86_xSetOp), uint16(x86_FSUB),
+ /*12096*/ uint16(x86_xArgSTi),
+ /*12097*/ uint16(x86_xArgST),
+ /*12098*/ uint16(x86_xMatch),
+ /*12099*/ uint16(x86_xSetOp), uint16(x86_FDIVR),
+ /*12101*/ uint16(x86_xArgSTi),
+ /*12102*/ uint16(x86_xArgST),
+ /*12103*/ uint16(x86_xMatch),
+ /*12104*/ uint16(x86_xSetOp), uint16(x86_FDIV),
+ /*12106*/ uint16(x86_xArgSTi),
+ /*12107*/ uint16(x86_xArgST),
+ /*12108*/ uint16(x86_xMatch),
+ /*12109*/ uint16(x86_xCondByte), 40,
+ 0xc0, 12228,
+ 0xc1, 12228,
+ 0xc2, 12228,
+ 0xc3, 12228,
+ 0xc4, 12228,
+ 0xc5, 12228,
+ 0xc6, 12228,
+ 0xc7, 12228,
+ 0xd0, 12232,
+ 0xd1, 12232,
+ 0xd2, 12232,
+ 0xd3, 12232,
+ 0xd4, 12232,
+ 0xd5, 12232,
+ 0xd6, 12232,
+ 0xd7, 12232,
+ 0xd8, 12236,
+ 0xd9, 12236,
+ 0xda, 12236,
+ 0xdb, 12236,
+ 0xdc, 12236,
+ 0xdd, 12236,
+ 0xde, 12236,
+ 0xdf, 12236,
+ 0xe0, 12240,
+ 0xe1, 12240,
+ 0xe2, 12240,
+ 0xe3, 12240,
+ 0xe4, 12240,
+ 0xe5, 12240,
+ 0xe6, 12240,
+ 0xe7, 12240,
+ 0xe8, 12244,
+ 0xe9, 12244,
+ 0xea, 12244,
+ 0xeb, 12244,
+ 0xec, 12244,
+ 0xed, 12244,
+ 0xee, 12244,
+ 0xef, 12244,
+ /*12191*/ uint16(x86_xCondSlashR),
+ 12200, // 0
+ 12204, // 1
+ 12208, // 2
+ 12212, // 3
+ 12216, // 4
+ 0, // 5
+ 12220, // 6
+ 12224, // 7
+ /*12200*/ uint16(x86_xSetOp), uint16(x86_FLD),
+ /*12202*/ uint16(x86_xArgM64fp),
+ /*12203*/ uint16(x86_xMatch),
+ /*12204*/ uint16(x86_xSetOp), uint16(x86_FISTTP),
+ /*12206*/ uint16(x86_xArgM64int),
+ /*12207*/ uint16(x86_xMatch),
+ /*12208*/ uint16(x86_xSetOp), uint16(x86_FST),
+ /*12210*/ uint16(x86_xArgM64fp),
+ /*12211*/ uint16(x86_xMatch),
+ /*12212*/ uint16(x86_xSetOp), uint16(x86_FSTP),
+ /*12214*/ uint16(x86_xArgM64fp),
+ /*12215*/ uint16(x86_xMatch),
+ /*12216*/ uint16(x86_xSetOp), uint16(x86_FRSTOR),
+ /*12218*/ uint16(x86_xArgM94108byte),
+ /*12219*/ uint16(x86_xMatch),
+ /*12220*/ uint16(x86_xSetOp), uint16(x86_FNSAVE),
+ /*12222*/ uint16(x86_xArgM94108byte),
+ /*12223*/ uint16(x86_xMatch),
+ /*12224*/ uint16(x86_xSetOp), uint16(x86_FNSTSW),
+ /*12226*/ uint16(x86_xArgM2byte),
+ /*12227*/ uint16(x86_xMatch),
+ /*12228*/ uint16(x86_xSetOp), uint16(x86_FFREE),
+ /*12230*/ uint16(x86_xArgSTi),
+ /*12231*/ uint16(x86_xMatch),
+ /*12232*/ uint16(x86_xSetOp), uint16(x86_FST),
+ /*12234*/ uint16(x86_xArgSTi),
+ /*12235*/ uint16(x86_xMatch),
+ /*12236*/ uint16(x86_xSetOp), uint16(x86_FSTP),
+ /*12238*/ uint16(x86_xArgSTi),
+ /*12239*/ uint16(x86_xMatch),
+ /*12240*/ uint16(x86_xSetOp), uint16(x86_FUCOM),
+ /*12242*/ uint16(x86_xArgSTi),
+ /*12243*/ uint16(x86_xMatch),
+ /*12244*/ uint16(x86_xSetOp), uint16(x86_FUCOMP),
+ /*12246*/ uint16(x86_xArgSTi),
+ /*12247*/ uint16(x86_xMatch),
+ /*12248*/ uint16(x86_xCondByte), 49,
+ 0xc0, 12389,
+ 0xc1, 12389,
+ 0xc2, 12389,
+ 0xc3, 12389,
+ 0xc4, 12389,
+ 0xc5, 12389,
+ 0xc6, 12389,
+ 0xc7, 12389,
+ 0xc8, 12394,
+ 0xc9, 12394,
+ 0xca, 12394,
+ 0xcb, 12394,
+ 0xcc, 12394,
+ 0xcd, 12394,
+ 0xce, 12394,
+ 0xcf, 12394,
+ 0xD9, 12399,
+ 0xe0, 12402,
+ 0xe1, 12402,
+ 0xe2, 12402,
+ 0xe3, 12402,
+ 0xe4, 12402,
+ 0xe5, 12402,
+ 0xe6, 12402,
+ 0xe7, 12402,
+ 0xe8, 12407,
+ 0xe9, 12407,
+ 0xea, 12407,
+ 0xeb, 12407,
+ 0xec, 12407,
+ 0xed, 12407,
+ 0xee, 12407,
+ 0xef, 12407,
+ 0xf0, 12412,
+ 0xf1, 12412,
+ 0xf2, 12412,
+ 0xf3, 12412,
+ 0xf4, 12412,
+ 0xf5, 12412,
+ 0xf6, 12412,
+ 0xf7, 12412,
+ 0xf8, 12417,
+ 0xf9, 12417,
+ 0xfa, 12417,
+ 0xfb, 12417,
+ 0xfc, 12417,
+ 0xfd, 12417,
+ 0xfe, 12417,
+ 0xff, 12417,
+ /*12348*/ uint16(x86_xCondSlashR),
+ 12357, // 0
+ 12361, // 1
+ 12365, // 2
+ 12369, // 3
+ 12373, // 4
+ 12377, // 5
+ 12381, // 6
+ 12385, // 7
+ /*12357*/ uint16(x86_xSetOp), uint16(x86_FIADD),
+ /*12359*/ uint16(x86_xArgM16int),
+ /*12360*/ uint16(x86_xMatch),
+ /*12361*/ uint16(x86_xSetOp), uint16(x86_FIMUL),
+ /*12363*/ uint16(x86_xArgM16int),
+ /*12364*/ uint16(x86_xMatch),
+ /*12365*/ uint16(x86_xSetOp), uint16(x86_FICOM),
+ /*12367*/ uint16(x86_xArgM16int),
+ /*12368*/ uint16(x86_xMatch),
+ /*12369*/ uint16(x86_xSetOp), uint16(x86_FICOMP),
+ /*12371*/ uint16(x86_xArgM16int),
+ /*12372*/ uint16(x86_xMatch),
+ /*12373*/ uint16(x86_xSetOp), uint16(x86_FISUB),
+ /*12375*/ uint16(x86_xArgM16int),
+ /*12376*/ uint16(x86_xMatch),
+ /*12377*/ uint16(x86_xSetOp), uint16(x86_FISUBR),
+ /*12379*/ uint16(x86_xArgM16int),
+ /*12380*/ uint16(x86_xMatch),
+ /*12381*/ uint16(x86_xSetOp), uint16(x86_FIDIV),
+ /*12383*/ uint16(x86_xArgM16int),
+ /*12384*/ uint16(x86_xMatch),
+ /*12385*/ uint16(x86_xSetOp), uint16(x86_FIDIVR),
+ /*12387*/ uint16(x86_xArgM16int),
+ /*12388*/ uint16(x86_xMatch),
+ /*12389*/ uint16(x86_xSetOp), uint16(x86_FADDP),
+ /*12391*/ uint16(x86_xArgSTi),
+ /*12392*/ uint16(x86_xArgST),
+ /*12393*/ uint16(x86_xMatch),
+ /*12394*/ uint16(x86_xSetOp), uint16(x86_FMULP),
+ /*12396*/ uint16(x86_xArgSTi),
+ /*12397*/ uint16(x86_xArgST),
+ /*12398*/ uint16(x86_xMatch),
+ /*12399*/ uint16(x86_xSetOp), uint16(x86_FCOMPP),
+ /*12401*/ uint16(x86_xMatch),
+ /*12402*/ uint16(x86_xSetOp), uint16(x86_FSUBRP),
+ /*12404*/ uint16(x86_xArgSTi),
+ /*12405*/ uint16(x86_xArgST),
+ /*12406*/ uint16(x86_xMatch),
+ /*12407*/ uint16(x86_xSetOp), uint16(x86_FSUBP),
+ /*12409*/ uint16(x86_xArgSTi),
+ /*12410*/ uint16(x86_xArgST),
+ /*12411*/ uint16(x86_xMatch),
+ /*12412*/ uint16(x86_xSetOp), uint16(x86_FDIVRP),
+ /*12414*/ uint16(x86_xArgSTi),
+ /*12415*/ uint16(x86_xArgST),
+ /*12416*/ uint16(x86_xMatch),
+ /*12417*/ uint16(x86_xSetOp), uint16(x86_FDIVP),
+ /*12419*/ uint16(x86_xArgSTi),
+ /*12420*/ uint16(x86_xArgST),
+ /*12421*/ uint16(x86_xMatch),
+ /*12422*/ uint16(x86_xCondByte), 25,
+ 0xc0, 12515,
+ 0xc1, 12515,
+ 0xc2, 12515,
+ 0xc3, 12515,
+ 0xc4, 12515,
+ 0xc5, 12515,
+ 0xc6, 12515,
+ 0xc7, 12515,
+ 0xE0, 12519,
+ 0xe8, 12523,
+ 0xe9, 12523,
+ 0xea, 12523,
+ 0xeb, 12523,
+ 0xec, 12523,
+ 0xed, 12523,
+ 0xee, 12523,
+ 0xef, 12523,
+ 0xf0, 12528,
+ 0xf1, 12528,
+ 0xf2, 12528,
+ 0xf3, 12528,
+ 0xf4, 12528,
+ 0xf5, 12528,
+ 0xf6, 12528,
+ 0xf7, 12528,
+ /*12474*/ uint16(x86_xCondSlashR),
+ 12483, // 0
+ 12487, // 1
+ 12491, // 2
+ 12495, // 3
+ 12499, // 4
+ 12503, // 5
+ 12507, // 6
+ 12511, // 7
+ /*12483*/ uint16(x86_xSetOp), uint16(x86_FILD),
+ /*12485*/ uint16(x86_xArgM16int),
+ /*12486*/ uint16(x86_xMatch),
+ /*12487*/ uint16(x86_xSetOp), uint16(x86_FISTTP),
+ /*12489*/ uint16(x86_xArgM16int),
+ /*12490*/ uint16(x86_xMatch),
+ /*12491*/ uint16(x86_xSetOp), uint16(x86_FIST),
+ /*12493*/ uint16(x86_xArgM16int),
+ /*12494*/ uint16(x86_xMatch),
+ /*12495*/ uint16(x86_xSetOp), uint16(x86_FISTP),
+ /*12497*/ uint16(x86_xArgM16int),
+ /*12498*/ uint16(x86_xMatch),
+ /*12499*/ uint16(x86_xSetOp), uint16(x86_FBLD),
+ /*12501*/ uint16(x86_xArgM80dec),
+ /*12502*/ uint16(x86_xMatch),
+ /*12503*/ uint16(x86_xSetOp), uint16(x86_FILD),
+ /*12505*/ uint16(x86_xArgM64int),
+ /*12506*/ uint16(x86_xMatch),
+ /*12507*/ uint16(x86_xSetOp), uint16(x86_FBSTP),
+ /*12509*/ uint16(x86_xArgM80bcd),
+ /*12510*/ uint16(x86_xMatch),
+ /*12511*/ uint16(x86_xSetOp), uint16(x86_FISTP),
+ /*12513*/ uint16(x86_xArgM64int),
+ /*12514*/ uint16(x86_xMatch),
+ /*12515*/ uint16(x86_xSetOp), uint16(x86_FFREEP),
+ /*12517*/ uint16(x86_xArgSTi),
+ /*12518*/ uint16(x86_xMatch),
+ /*12519*/ uint16(x86_xSetOp), uint16(x86_FNSTSW),
+ /*12521*/ uint16(x86_xArgAX),
+ /*12522*/ uint16(x86_xMatch),
+ /*12523*/ uint16(x86_xSetOp), uint16(x86_FUCOMIP),
+ /*12525*/ uint16(x86_xArgST),
+ /*12526*/ uint16(x86_xArgSTi),
+ /*12527*/ uint16(x86_xMatch),
+ /*12528*/ uint16(x86_xSetOp), uint16(x86_FCOMIP),
+ /*12530*/ uint16(x86_xArgST),
+ /*12531*/ uint16(x86_xArgSTi),
+ /*12532*/ uint16(x86_xMatch),
+ /*12533*/ uint16(x86_xSetOp), uint16(x86_LOOPNE),
+ /*12535*/ uint16(x86_xReadCb),
+ /*12536*/ uint16(x86_xArgRel8),
+ /*12537*/ uint16(x86_xMatch),
+ /*12538*/ uint16(x86_xSetOp), uint16(x86_LOOPE),
+ /*12540*/ uint16(x86_xReadCb),
+ /*12541*/ uint16(x86_xArgRel8),
+ /*12542*/ uint16(x86_xMatch),
+ /*12543*/ uint16(x86_xSetOp), uint16(x86_LOOP),
+ /*12545*/ uint16(x86_xReadCb),
+ /*12546*/ uint16(x86_xArgRel8),
+ /*12547*/ uint16(x86_xMatch),
+ /*12548*/ uint16(x86_xCondIs64), 12551, 12565,
+ /*12551*/ uint16(x86_xCondAddrSize), 12555, 12560, 0,
+ /*12555*/ uint16(x86_xSetOp), uint16(x86_JCXZ),
+ /*12557*/ uint16(x86_xReadCb),
+ /*12558*/ uint16(x86_xArgRel8),
+ /*12559*/ uint16(x86_xMatch),
+ /*12560*/ uint16(x86_xSetOp), uint16(x86_JECXZ),
+ /*12562*/ uint16(x86_xReadCb),
+ /*12563*/ uint16(x86_xArgRel8),
+ /*12564*/ uint16(x86_xMatch),
+ /*12565*/ uint16(x86_xCondAddrSize), 0, 12560, 12569,
+ /*12569*/ uint16(x86_xSetOp), uint16(x86_JRCXZ),
+ /*12571*/ uint16(x86_xReadCb),
+ /*12572*/ uint16(x86_xArgRel8),
+ /*12573*/ uint16(x86_xMatch),
+ /*12574*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12576*/ uint16(x86_xReadIb),
+ /*12577*/ uint16(x86_xArgAL),
+ /*12578*/ uint16(x86_xArgImm8u),
+ /*12579*/ uint16(x86_xMatch),
+ /*12580*/ uint16(x86_xCondDataSize), 12584, 12590, 12596,
+ /*12584*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12586*/ uint16(x86_xReadIb),
+ /*12587*/ uint16(x86_xArgAX),
+ /*12588*/ uint16(x86_xArgImm8u),
+ /*12589*/ uint16(x86_xMatch),
+ /*12590*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12592*/ uint16(x86_xReadIb),
+ /*12593*/ uint16(x86_xArgEAX),
+ /*12594*/ uint16(x86_xArgImm8u),
+ /*12595*/ uint16(x86_xMatch),
+ /*12596*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12598*/ uint16(x86_xReadIb),
+ /*12599*/ uint16(x86_xArgEAX),
+ /*12600*/ uint16(x86_xArgImm8u),
+ /*12601*/ uint16(x86_xMatch),
+ /*12602*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12604*/ uint16(x86_xReadIb),
+ /*12605*/ uint16(x86_xArgImm8u),
+ /*12606*/ uint16(x86_xArgAL),
+ /*12607*/ uint16(x86_xMatch),
+ /*12608*/ uint16(x86_xCondDataSize), 12612, 12618, 12624,
+ /*12612*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12614*/ uint16(x86_xReadIb),
+ /*12615*/ uint16(x86_xArgImm8u),
+ /*12616*/ uint16(x86_xArgAX),
+ /*12617*/ uint16(x86_xMatch),
+ /*12618*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12620*/ uint16(x86_xReadIb),
+ /*12621*/ uint16(x86_xArgImm8u),
+ /*12622*/ uint16(x86_xArgEAX),
+ /*12623*/ uint16(x86_xMatch),
+ /*12624*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12626*/ uint16(x86_xReadIb),
+ /*12627*/ uint16(x86_xArgImm8u),
+ /*12628*/ uint16(x86_xArgEAX),
+ /*12629*/ uint16(x86_xMatch),
+ /*12630*/ uint16(x86_xCondIs64), 12633, 12647,
+ /*12633*/ uint16(x86_xCondDataSize), 12637, 12642, 0,
+ /*12637*/ uint16(x86_xSetOp), uint16(x86_CALL),
+ /*12639*/ uint16(x86_xReadCw),
+ /*12640*/ uint16(x86_xArgRel16),
+ /*12641*/ uint16(x86_xMatch),
+ /*12642*/ uint16(x86_xSetOp), uint16(x86_CALL),
+ /*12644*/ uint16(x86_xReadCd),
+ /*12645*/ uint16(x86_xArgRel32),
+ /*12646*/ uint16(x86_xMatch),
+ /*12647*/ uint16(x86_xCondDataSize), 12651, 12642, 12656,
+ /*12651*/ uint16(x86_xSetOp), uint16(x86_CALL),
+ /*12653*/ uint16(x86_xReadCd),
+ /*12654*/ uint16(x86_xArgRel32),
+ /*12655*/ uint16(x86_xMatch),
+ /*12656*/ uint16(x86_xSetOp), uint16(x86_CALL),
+ /*12658*/ uint16(x86_xReadCd),
+ /*12659*/ uint16(x86_xArgRel32),
+ /*12660*/ uint16(x86_xMatch),
+ /*12661*/ uint16(x86_xCondIs64), 12664, 12678,
+ /*12664*/ uint16(x86_xCondDataSize), 12668, 12673, 0,
+ /*12668*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*12670*/ uint16(x86_xReadCw),
+ /*12671*/ uint16(x86_xArgRel16),
+ /*12672*/ uint16(x86_xMatch),
+ /*12673*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*12675*/ uint16(x86_xReadCd),
+ /*12676*/ uint16(x86_xArgRel32),
+ /*12677*/ uint16(x86_xMatch),
+ /*12678*/ uint16(x86_xCondDataSize), 12682, 12673, 12687,
+ /*12682*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*12684*/ uint16(x86_xReadCd),
+ /*12685*/ uint16(x86_xArgRel32),
+ /*12686*/ uint16(x86_xMatch),
+ /*12687*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*12689*/ uint16(x86_xReadCd),
+ /*12690*/ uint16(x86_xArgRel32),
+ /*12691*/ uint16(x86_xMatch),
+ /*12692*/ uint16(x86_xCondIs64), 12695, 0,
+ /*12695*/ uint16(x86_xCondDataSize), 12699, 12704, 0,
+ /*12699*/ uint16(x86_xSetOp), uint16(x86_LJMP),
+ /*12701*/ uint16(x86_xReadCd),
+ /*12702*/ uint16(x86_xArgPtr16colon16),
+ /*12703*/ uint16(x86_xMatch),
+ /*12704*/ uint16(x86_xSetOp), uint16(x86_LJMP),
+ /*12706*/ uint16(x86_xReadCp),
+ /*12707*/ uint16(x86_xArgPtr16colon32),
+ /*12708*/ uint16(x86_xMatch),
+ /*12709*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*12711*/ uint16(x86_xReadCb),
+ /*12712*/ uint16(x86_xArgRel8),
+ /*12713*/ uint16(x86_xMatch),
+ /*12714*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12716*/ uint16(x86_xArgAL),
+ /*12717*/ uint16(x86_xArgDX),
+ /*12718*/ uint16(x86_xMatch),
+ /*12719*/ uint16(x86_xCondDataSize), 12723, 12728, 12733,
+ /*12723*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12725*/ uint16(x86_xArgAX),
+ /*12726*/ uint16(x86_xArgDX),
+ /*12727*/ uint16(x86_xMatch),
+ /*12728*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12730*/ uint16(x86_xArgEAX),
+ /*12731*/ uint16(x86_xArgDX),
+ /*12732*/ uint16(x86_xMatch),
+ /*12733*/ uint16(x86_xSetOp), uint16(x86_IN),
+ /*12735*/ uint16(x86_xArgEAX),
+ /*12736*/ uint16(x86_xArgDX),
+ /*12737*/ uint16(x86_xMatch),
+ /*12738*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12740*/ uint16(x86_xArgDX),
+ /*12741*/ uint16(x86_xArgAL),
+ /*12742*/ uint16(x86_xMatch),
+ /*12743*/ uint16(x86_xCondDataSize), 12747, 12752, 12757,
+ /*12747*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12749*/ uint16(x86_xArgDX),
+ /*12750*/ uint16(x86_xArgAX),
+ /*12751*/ uint16(x86_xMatch),
+ /*12752*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12754*/ uint16(x86_xArgDX),
+ /*12755*/ uint16(x86_xArgEAX),
+ /*12756*/ uint16(x86_xMatch),
+ /*12757*/ uint16(x86_xSetOp), uint16(x86_OUT),
+ /*12759*/ uint16(x86_xArgDX),
+ /*12760*/ uint16(x86_xArgEAX),
+ /*12761*/ uint16(x86_xMatch),
+ /*12762*/ uint16(x86_xSetOp), uint16(x86_ICEBP),
+ /*12764*/ uint16(x86_xMatch),
+ /*12765*/ uint16(x86_xSetOp), uint16(x86_HLT),
+ /*12767*/ uint16(x86_xMatch),
+ /*12768*/ uint16(x86_xSetOp), uint16(x86_CMC),
+ /*12770*/ uint16(x86_xMatch),
+ /*12771*/ uint16(x86_xCondSlashR),
+ 12780, // 0
+ 0, // 1
+ 12786, // 2
+ 12790, // 3
+ 12794, // 4
+ 12798, // 5
+ 12802, // 6
+ 12806, // 7
+ /*12780*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*12782*/ uint16(x86_xReadIb),
+ /*12783*/ uint16(x86_xArgRM8),
+ /*12784*/ uint16(x86_xArgImm8u),
+ /*12785*/ uint16(x86_xMatch),
+ /*12786*/ uint16(x86_xSetOp), uint16(x86_NOT),
+ /*12788*/ uint16(x86_xArgRM8),
+ /*12789*/ uint16(x86_xMatch),
+ /*12790*/ uint16(x86_xSetOp), uint16(x86_NEG),
+ /*12792*/ uint16(x86_xArgRM8),
+ /*12793*/ uint16(x86_xMatch),
+ /*12794*/ uint16(x86_xSetOp), uint16(x86_MUL),
+ /*12796*/ uint16(x86_xArgRM8),
+ /*12797*/ uint16(x86_xMatch),
+ /*12798*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*12800*/ uint16(x86_xArgRM8),
+ /*12801*/ uint16(x86_xMatch),
+ /*12802*/ uint16(x86_xSetOp), uint16(x86_DIV),
+ /*12804*/ uint16(x86_xArgRM8),
+ /*12805*/ uint16(x86_xMatch),
+ /*12806*/ uint16(x86_xSetOp), uint16(x86_IDIV),
+ /*12808*/ uint16(x86_xArgRM8),
+ /*12809*/ uint16(x86_xMatch),
+ /*12810*/ uint16(x86_xCondSlashR),
+ 12819, // 0
+ 0, // 1
+ 12848, // 2
+ 12871, // 3
+ 12894, // 4
+ 12917, // 5
+ 12940, // 6
+ 12963, // 7
+ /*12819*/ uint16(x86_xCondIs64), 12822, 12838,
+ /*12822*/ uint16(x86_xCondDataSize), 12826, 12832, 0,
+ /*12826*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*12828*/ uint16(x86_xReadIw),
+ /*12829*/ uint16(x86_xArgRM16),
+ /*12830*/ uint16(x86_xArgImm16),
+ /*12831*/ uint16(x86_xMatch),
+ /*12832*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*12834*/ uint16(x86_xReadId),
+ /*12835*/ uint16(x86_xArgRM32),
+ /*12836*/ uint16(x86_xArgImm32),
+ /*12837*/ uint16(x86_xMatch),
+ /*12838*/ uint16(x86_xCondDataSize), 12826, 12832, 12842,
+ /*12842*/ uint16(x86_xSetOp), uint16(x86_TEST),
+ /*12844*/ uint16(x86_xReadId),
+ /*12845*/ uint16(x86_xArgRM64),
+ /*12846*/ uint16(x86_xArgImm32),
+ /*12847*/ uint16(x86_xMatch),
+ /*12848*/ uint16(x86_xCondIs64), 12851, 12863,
+ /*12851*/ uint16(x86_xCondDataSize), 12855, 12859, 0,
+ /*12855*/ uint16(x86_xSetOp), uint16(x86_NOT),
+ /*12857*/ uint16(x86_xArgRM16),
+ /*12858*/ uint16(x86_xMatch),
+ /*12859*/ uint16(x86_xSetOp), uint16(x86_NOT),
+ /*12861*/ uint16(x86_xArgRM32),
+ /*12862*/ uint16(x86_xMatch),
+ /*12863*/ uint16(x86_xCondDataSize), 12855, 12859, 12867,
+ /*12867*/ uint16(x86_xSetOp), uint16(x86_NOT),
+ /*12869*/ uint16(x86_xArgRM64),
+ /*12870*/ uint16(x86_xMatch),
+ /*12871*/ uint16(x86_xCondIs64), 12874, 12886,
+ /*12874*/ uint16(x86_xCondDataSize), 12878, 12882, 0,
+ /*12878*/ uint16(x86_xSetOp), uint16(x86_NEG),
+ /*12880*/ uint16(x86_xArgRM16),
+ /*12881*/ uint16(x86_xMatch),
+ /*12882*/ uint16(x86_xSetOp), uint16(x86_NEG),
+ /*12884*/ uint16(x86_xArgRM32),
+ /*12885*/ uint16(x86_xMatch),
+ /*12886*/ uint16(x86_xCondDataSize), 12878, 12882, 12890,
+ /*12890*/ uint16(x86_xSetOp), uint16(x86_NEG),
+ /*12892*/ uint16(x86_xArgRM64),
+ /*12893*/ uint16(x86_xMatch),
+ /*12894*/ uint16(x86_xCondIs64), 12897, 12909,
+ /*12897*/ uint16(x86_xCondDataSize), 12901, 12905, 0,
+ /*12901*/ uint16(x86_xSetOp), uint16(x86_MUL),
+ /*12903*/ uint16(x86_xArgRM16),
+ /*12904*/ uint16(x86_xMatch),
+ /*12905*/ uint16(x86_xSetOp), uint16(x86_MUL),
+ /*12907*/ uint16(x86_xArgRM32),
+ /*12908*/ uint16(x86_xMatch),
+ /*12909*/ uint16(x86_xCondDataSize), 12901, 12905, 12913,
+ /*12913*/ uint16(x86_xSetOp), uint16(x86_MUL),
+ /*12915*/ uint16(x86_xArgRM64),
+ /*12916*/ uint16(x86_xMatch),
+ /*12917*/ uint16(x86_xCondIs64), 12920, 12932,
+ /*12920*/ uint16(x86_xCondDataSize), 12924, 12928, 0,
+ /*12924*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*12926*/ uint16(x86_xArgRM16),
+ /*12927*/ uint16(x86_xMatch),
+ /*12928*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*12930*/ uint16(x86_xArgRM32),
+ /*12931*/ uint16(x86_xMatch),
+ /*12932*/ uint16(x86_xCondDataSize), 12924, 12928, 12936,
+ /*12936*/ uint16(x86_xSetOp), uint16(x86_IMUL),
+ /*12938*/ uint16(x86_xArgRM64),
+ /*12939*/ uint16(x86_xMatch),
+ /*12940*/ uint16(x86_xCondIs64), 12943, 12955,
+ /*12943*/ uint16(x86_xCondDataSize), 12947, 12951, 0,
+ /*12947*/ uint16(x86_xSetOp), uint16(x86_DIV),
+ /*12949*/ uint16(x86_xArgRM16),
+ /*12950*/ uint16(x86_xMatch),
+ /*12951*/ uint16(x86_xSetOp), uint16(x86_DIV),
+ /*12953*/ uint16(x86_xArgRM32),
+ /*12954*/ uint16(x86_xMatch),
+ /*12955*/ uint16(x86_xCondDataSize), 12947, 12951, 12959,
+ /*12959*/ uint16(x86_xSetOp), uint16(x86_DIV),
+ /*12961*/ uint16(x86_xArgRM64),
+ /*12962*/ uint16(x86_xMatch),
+ /*12963*/ uint16(x86_xCondIs64), 12966, 12978,
+ /*12966*/ uint16(x86_xCondDataSize), 12970, 12974, 0,
+ /*12970*/ uint16(x86_xSetOp), uint16(x86_IDIV),
+ /*12972*/ uint16(x86_xArgRM16),
+ /*12973*/ uint16(x86_xMatch),
+ /*12974*/ uint16(x86_xSetOp), uint16(x86_IDIV),
+ /*12976*/ uint16(x86_xArgRM32),
+ /*12977*/ uint16(x86_xMatch),
+ /*12978*/ uint16(x86_xCondDataSize), 12970, 12974, 12982,
+ /*12982*/ uint16(x86_xSetOp), uint16(x86_IDIV),
+ /*12984*/ uint16(x86_xArgRM64),
+ /*12985*/ uint16(x86_xMatch),
+ /*12986*/ uint16(x86_xSetOp), uint16(x86_CLC),
+ /*12988*/ uint16(x86_xMatch),
+ /*12989*/ uint16(x86_xSetOp), uint16(x86_STC),
+ /*12991*/ uint16(x86_xMatch),
+ /*12992*/ uint16(x86_xSetOp), uint16(x86_CLI),
+ /*12994*/ uint16(x86_xMatch),
+ /*12995*/ uint16(x86_xSetOp), uint16(x86_STI),
+ /*12997*/ uint16(x86_xMatch),
+ /*12998*/ uint16(x86_xSetOp), uint16(x86_CLD),
+ /*13000*/ uint16(x86_xMatch),
+ /*13001*/ uint16(x86_xSetOp), uint16(x86_STD),
+ /*13003*/ uint16(x86_xMatch),
+ /*13004*/ uint16(x86_xCondSlashR),
+ 13013, // 0
+ 13017, // 1
+ 0, // 2
+ 0, // 3
+ 0, // 4
+ 0, // 5
+ 0, // 6
+ 0, // 7
+ /*13013*/ uint16(x86_xSetOp), uint16(x86_INC),
+ /*13015*/ uint16(x86_xArgRM8),
+ /*13016*/ uint16(x86_xMatch),
+ /*13017*/ uint16(x86_xSetOp), uint16(x86_DEC),
+ /*13019*/ uint16(x86_xArgRM8),
+ /*13020*/ uint16(x86_xMatch),
+ /*13021*/ uint16(x86_xCondSlashR),
+ 13030, // 0
+ 13053, // 1
+ 13076, // 2
+ 13095, // 3
+ 13118, // 4
+ 13137, // 5
+ 13160, // 6
+ 0, // 7
+ /*13030*/ uint16(x86_xCondIs64), 13033, 13045,
+ /*13033*/ uint16(x86_xCondDataSize), 13037, 13041, 0,
+ /*13037*/ uint16(x86_xSetOp), uint16(x86_INC),
+ /*13039*/ uint16(x86_xArgRM16),
+ /*13040*/ uint16(x86_xMatch),
+ /*13041*/ uint16(x86_xSetOp), uint16(x86_INC),
+ /*13043*/ uint16(x86_xArgRM32),
+ /*13044*/ uint16(x86_xMatch),
+ /*13045*/ uint16(x86_xCondDataSize), 13037, 13041, 13049,
+ /*13049*/ uint16(x86_xSetOp), uint16(x86_INC),
+ /*13051*/ uint16(x86_xArgRM64),
+ /*13052*/ uint16(x86_xMatch),
+ /*13053*/ uint16(x86_xCondIs64), 13056, 13068,
+ /*13056*/ uint16(x86_xCondDataSize), 13060, 13064, 0,
+ /*13060*/ uint16(x86_xSetOp), uint16(x86_DEC),
+ /*13062*/ uint16(x86_xArgRM16),
+ /*13063*/ uint16(x86_xMatch),
+ /*13064*/ uint16(x86_xSetOp), uint16(x86_DEC),
+ /*13066*/ uint16(x86_xArgRM32),
+ /*13067*/ uint16(x86_xMatch),
+ /*13068*/ uint16(x86_xCondDataSize), 13060, 13064, 13072,
+ /*13072*/ uint16(x86_xSetOp), uint16(x86_DEC),
+ /*13074*/ uint16(x86_xArgRM64),
+ /*13075*/ uint16(x86_xMatch),
+ /*13076*/ uint16(x86_xCondIs64), 13079, 13091,
+ /*13079*/ uint16(x86_xCondDataSize), 13083, 13087, 0,
+ /*13083*/ uint16(x86_xSetOp), uint16(x86_CALL),
+ /*13085*/ uint16(x86_xArgRM16),
+ /*13086*/ uint16(x86_xMatch),
+ /*13087*/ uint16(x86_xSetOp), uint16(x86_CALL),
+ /*13089*/ uint16(x86_xArgRM32),
+ /*13090*/ uint16(x86_xMatch),
+ /*13091*/ uint16(x86_xSetOp), uint16(x86_CALL),
+ /*13093*/ uint16(x86_xArgRM64),
+ /*13094*/ uint16(x86_xMatch),
+ /*13095*/ uint16(x86_xCondIs64), 13098, 13110,
+ /*13098*/ uint16(x86_xCondDataSize), 13102, 13106, 0,
+ /*13102*/ uint16(x86_xSetOp), uint16(x86_LCALL),
+ /*13104*/ uint16(x86_xArgM16colon16),
+ /*13105*/ uint16(x86_xMatch),
+ /*13106*/ uint16(x86_xSetOp), uint16(x86_LCALL),
+ /*13108*/ uint16(x86_xArgM16colon32),
+ /*13109*/ uint16(x86_xMatch),
+ /*13110*/ uint16(x86_xCondDataSize), 13102, 13106, 13114,
+ /*13114*/ uint16(x86_xSetOp), uint16(x86_LCALL),
+ /*13116*/ uint16(x86_xArgM16colon64),
+ /*13117*/ uint16(x86_xMatch),
+ /*13118*/ uint16(x86_xCondIs64), 13121, 13133,
+ /*13121*/ uint16(x86_xCondDataSize), 13125, 13129, 0,
+ /*13125*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*13127*/ uint16(x86_xArgRM16),
+ /*13128*/ uint16(x86_xMatch),
+ /*13129*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*13131*/ uint16(x86_xArgRM32),
+ /*13132*/ uint16(x86_xMatch),
+ /*13133*/ uint16(x86_xSetOp), uint16(x86_JMP),
+ /*13135*/ uint16(x86_xArgRM64),
+ /*13136*/ uint16(x86_xMatch),
+ /*13137*/ uint16(x86_xCondIs64), 13140, 13152,
+ /*13140*/ uint16(x86_xCondDataSize), 13144, 13148, 0,
+ /*13144*/ uint16(x86_xSetOp), uint16(x86_LJMP),
+ /*13146*/ uint16(x86_xArgM16colon16),
+ /*13147*/ uint16(x86_xMatch),
+ /*13148*/ uint16(x86_xSetOp), uint16(x86_LJMP),
+ /*13150*/ uint16(x86_xArgM16colon32),
+ /*13151*/ uint16(x86_xMatch),
+ /*13152*/ uint16(x86_xCondDataSize), 13144, 13148, 13156,
+ /*13156*/ uint16(x86_xSetOp), uint16(x86_LJMP),
+ /*13158*/ uint16(x86_xArgM16colon64),
+ /*13159*/ uint16(x86_xMatch),
+ /*13160*/ uint16(x86_xCondIs64), 13163, 13175,
+ /*13163*/ uint16(x86_xCondDataSize), 13167, 13171, 0,
+ /*13167*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*13169*/ uint16(x86_xArgRM16),
+ /*13170*/ uint16(x86_xMatch),
+ /*13171*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*13173*/ uint16(x86_xArgRM32),
+ /*13174*/ uint16(x86_xMatch),
+ /*13175*/ uint16(x86_xCondDataSize), 13167, 13179, 13183,
+ /*13179*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*13181*/ uint16(x86_xArgRM64),
+ /*13182*/ uint16(x86_xMatch),
+ /*13183*/ uint16(x86_xSetOp), uint16(x86_PUSH),
+ /*13185*/ uint16(x86_xArgRM64),
+ /*13186*/ uint16(x86_xMatch),
+}
+
+const (
+ _ x86_Op = iota
+
+ x86_AAA
+ x86_AAD
+ x86_AAM
+ x86_AAS
+ x86_ADC
+ x86_ADD
+ x86_ADDPD
+ x86_ADDPS
+ x86_ADDSD
+ x86_ADDSS
+ x86_ADDSUBPD
+ x86_ADDSUBPS
+ x86_AESDEC
+ x86_AESDECLAST
+ x86_AESENC
+ x86_AESENCLAST
+ x86_AESIMC
+ x86_AESKEYGENASSIST
+ x86_AND
+ x86_ANDNPD
+ x86_ANDNPS
+ x86_ANDPD
+ x86_ANDPS
+ x86_ARPL
+ x86_BLENDPD
+ x86_BLENDPS
+ x86_BLENDVPD
+ x86_BLENDVPS
+ x86_BOUND
+ x86_BSF
+ x86_BSR
+ x86_BSWAP
+ x86_BT
+ x86_BTC
+ x86_BTR
+ x86_BTS
+ x86_CALL
+ x86_CBW
+ x86_CDQ
+ x86_CDQE
+ x86_CLC
+ x86_CLD
+ x86_CLFLUSH
+ x86_CLI
+ x86_CLTS
+ x86_CMC
+ x86_CMOVA
+ x86_CMOVAE
+ x86_CMOVB
+ x86_CMOVBE
+ x86_CMOVE
+ x86_CMOVG
+ x86_CMOVGE
+ x86_CMOVL
+ x86_CMOVLE
+ x86_CMOVNE
+ x86_CMOVNO
+ x86_CMOVNP
+ x86_CMOVNS
+ x86_CMOVO
+ x86_CMOVP
+ x86_CMOVS
+ x86_CMP
+ x86_CMPPD
+ x86_CMPPS
+ x86_CMPSB
+ x86_CMPSD
+ x86_CMPSD_XMM
+ x86_CMPSQ
+ x86_CMPSS
+ x86_CMPSW
+ x86_CMPXCHG
+ x86_CMPXCHG16B
+ x86_CMPXCHG8B
+ x86_COMISD
+ x86_COMISS
+ x86_CPUID
+ x86_CQO
+ x86_CRC32
+ x86_CVTDQ2PD
+ x86_CVTDQ2PS
+ x86_CVTPD2DQ
+ x86_CVTPD2PI
+ x86_CVTPD2PS
+ x86_CVTPI2PD
+ x86_CVTPI2PS
+ x86_CVTPS2DQ
+ x86_CVTPS2PD
+ x86_CVTPS2PI
+ x86_CVTSD2SI
+ x86_CVTSD2SS
+ x86_CVTSI2SD
+ x86_CVTSI2SS
+ x86_CVTSS2SD
+ x86_CVTSS2SI
+ x86_CVTTPD2DQ
+ x86_CVTTPD2PI
+ x86_CVTTPS2DQ
+ x86_CVTTPS2PI
+ x86_CVTTSD2SI
+ x86_CVTTSS2SI
+ x86_CWD
+ x86_CWDE
+ x86_DAA
+ x86_DAS
+ x86_DEC
+ x86_DIV
+ x86_DIVPD
+ x86_DIVPS
+ x86_DIVSD
+ x86_DIVSS
+ x86_DPPD
+ x86_DPPS
+ x86_EMMS
+ x86_ENTER
+ x86_EXTRACTPS
+ x86_F2XM1
+ x86_FABS
+ x86_FADD
+ x86_FADDP
+ x86_FBLD
+ x86_FBSTP
+ x86_FCHS
+ x86_FCMOVB
+ x86_FCMOVBE
+ x86_FCMOVE
+ x86_FCMOVNB
+ x86_FCMOVNBE
+ x86_FCMOVNE
+ x86_FCMOVNU
+ x86_FCMOVU
+ x86_FCOM
+ x86_FCOMI
+ x86_FCOMIP
+ x86_FCOMP
+ x86_FCOMPP
+ x86_FCOS
+ x86_FDECSTP
+ x86_FDIV
+ x86_FDIVP
+ x86_FDIVR
+ x86_FDIVRP
+ x86_FFREE
+ x86_FFREEP
+ x86_FIADD
+ x86_FICOM
+ x86_FICOMP
+ x86_FIDIV
+ x86_FIDIVR
+ x86_FILD
+ x86_FIMUL
+ x86_FINCSTP
+ x86_FIST
+ x86_FISTP
+ x86_FISTTP
+ x86_FISUB
+ x86_FISUBR
+ x86_FLD
+ x86_FLD1
+ x86_FLDCW
+ x86_FLDENV
+ x86_FLDL2E
+ x86_FLDL2T
+ x86_FLDLG2
+ x86_FLDPI
+ x86_FMUL
+ x86_FMULP
+ x86_FNCLEX
+ x86_FNINIT
+ x86_FNOP
+ x86_FNSAVE
+ x86_FNSTCW
+ x86_FNSTENV
+ x86_FNSTSW
+ x86_FPATAN
+ x86_FPREM
+ x86_FPREM1
+ x86_FPTAN
+ x86_FRNDINT
+ x86_FRSTOR
+ x86_FSCALE
+ x86_FSIN
+ x86_FSINCOS
+ x86_FSQRT
+ x86_FST
+ x86_FSTP
+ x86_FSUB
+ x86_FSUBP
+ x86_FSUBR
+ x86_FSUBRP
+ x86_FTST
+ x86_FUCOM
+ x86_FUCOMI
+ x86_FUCOMIP
+ x86_FUCOMP
+ x86_FUCOMPP
+ x86_FWAIT
+ x86_FXAM
+ x86_FXCH
+ x86_FXRSTOR
+ x86_FXRSTOR64
+ x86_FXSAVE
+ x86_FXSAVE64
+ x86_FXTRACT
+ x86_FYL2X
+ x86_FYL2XP1
+ x86_HADDPD
+ x86_HADDPS
+ x86_HLT
+ x86_HSUBPD
+ x86_HSUBPS
+ x86_ICEBP
+ x86_IDIV
+ x86_IMUL
+ x86_IN
+ x86_INC
+ x86_INSB
+ x86_INSD
+ x86_INSERTPS
+ x86_INSW
+ x86_INT
+ x86_INTO
+ x86_INVD
+ x86_INVLPG
+ x86_INVPCID
+ x86_IRET
+ x86_IRETD
+ x86_IRETQ
+ x86_JA
+ x86_JAE
+ x86_JB
+ x86_JBE
+ x86_JCXZ
+ x86_JE
+ x86_JECXZ
+ x86_JG
+ x86_JGE
+ x86_JL
+ x86_JLE
+ x86_JMP
+ x86_JNE
+ x86_JNO
+ x86_JNP
+ x86_JNS
+ x86_JO
+ x86_JP
+ x86_JRCXZ
+ x86_JS
+ x86_LAHF
+ x86_LAR
+ x86_LCALL
+ x86_LDDQU
+ x86_LDMXCSR
+ x86_LDS
+ x86_LEA
+ x86_LEAVE
+ x86_LES
+ x86_LFENCE
+ x86_LFS
+ x86_LGDT
+ x86_LGS
+ x86_LIDT
+ x86_LJMP
+ x86_LLDT
+ x86_LMSW
+ x86_LODSB
+ x86_LODSD
+ x86_LODSQ
+ x86_LODSW
+ x86_LOOP
+ x86_LOOPE
+ x86_LOOPNE
+ x86_LRET
+ x86_LSL
+ x86_LSS
+ x86_LTR
+ x86_LZCNT
+ x86_MASKMOVDQU
+ x86_MASKMOVQ
+ x86_MAXPD
+ x86_MAXPS
+ x86_MAXSD
+ x86_MAXSS
+ x86_MFENCE
+ x86_MINPD
+ x86_MINPS
+ x86_MINSD
+ x86_MINSS
+ x86_MONITOR
+ x86_MOV
+ x86_MOVAPD
+ x86_MOVAPS
+ x86_MOVBE
+ x86_MOVD
+ x86_MOVDDUP
+ x86_MOVDQ2Q
+ x86_MOVDQA
+ x86_MOVDQU
+ x86_MOVHLPS
+ x86_MOVHPD
+ x86_MOVHPS
+ x86_MOVLHPS
+ x86_MOVLPD
+ x86_MOVLPS
+ x86_MOVMSKPD
+ x86_MOVMSKPS
+ x86_MOVNTDQ
+ x86_MOVNTDQA
+ x86_MOVNTI
+ x86_MOVNTPD
+ x86_MOVNTPS
+ x86_MOVNTQ
+ x86_MOVNTSD
+ x86_MOVNTSS
+ x86_MOVQ
+ x86_MOVQ2DQ
+ x86_MOVSB
+ x86_MOVSD
+ x86_MOVSD_XMM
+ x86_MOVSHDUP
+ x86_MOVSLDUP
+ x86_MOVSQ
+ x86_MOVSS
+ x86_MOVSW
+ x86_MOVSX
+ x86_MOVSXD
+ x86_MOVUPD
+ x86_MOVUPS
+ x86_MOVZX
+ x86_MPSADBW
+ x86_MUL
+ x86_MULPD
+ x86_MULPS
+ x86_MULSD
+ x86_MULSS
+ x86_MWAIT
+ x86_NEG
+ x86_NOP
+ x86_NOT
+ x86_OR
+ x86_ORPD
+ x86_ORPS
+ x86_OUT
+ x86_OUTSB
+ x86_OUTSD
+ x86_OUTSW
+ x86_PABSB
+ x86_PABSD
+ x86_PABSW
+ x86_PACKSSDW
+ x86_PACKSSWB
+ x86_PACKUSDW
+ x86_PACKUSWB
+ x86_PADDB
+ x86_PADDD
+ x86_PADDQ
+ x86_PADDSB
+ x86_PADDSW
+ x86_PADDUSB
+ x86_PADDUSW
+ x86_PADDW
+ x86_PALIGNR
+ x86_PAND
+ x86_PANDN
+ x86_PAUSE
+ x86_PAVGB
+ x86_PAVGW
+ x86_PBLENDVB
+ x86_PBLENDW
+ x86_PCLMULQDQ
+ x86_PCMPEQB
+ x86_PCMPEQD
+ x86_PCMPEQQ
+ x86_PCMPEQW
+ x86_PCMPESTRI
+ x86_PCMPESTRM
+ x86_PCMPGTB
+ x86_PCMPGTD
+ x86_PCMPGTQ
+ x86_PCMPGTW
+ x86_PCMPISTRI
+ x86_PCMPISTRM
+ x86_PEXTRB
+ x86_PEXTRD
+ x86_PEXTRQ
+ x86_PEXTRW
+ x86_PHADDD
+ x86_PHADDSW
+ x86_PHADDW
+ x86_PHMINPOSUW
+ x86_PHSUBD
+ x86_PHSUBSW
+ x86_PHSUBW
+ x86_PINSRB
+ x86_PINSRD
+ x86_PINSRQ
+ x86_PINSRW
+ x86_PMADDUBSW
+ x86_PMADDWD
+ x86_PMAXSB
+ x86_PMAXSD
+ x86_PMAXSW
+ x86_PMAXUB
+ x86_PMAXUD
+ x86_PMAXUW
+ x86_PMINSB
+ x86_PMINSD
+ x86_PMINSW
+ x86_PMINUB
+ x86_PMINUD
+ x86_PMINUW
+ x86_PMOVMSKB
+ x86_PMOVSXBD
+ x86_PMOVSXBQ
+ x86_PMOVSXBW
+ x86_PMOVSXDQ
+ x86_PMOVSXWD
+ x86_PMOVSXWQ
+ x86_PMOVZXBD
+ x86_PMOVZXBQ
+ x86_PMOVZXBW
+ x86_PMOVZXDQ
+ x86_PMOVZXWD
+ x86_PMOVZXWQ
+ x86_PMULDQ
+ x86_PMULHRSW
+ x86_PMULHUW
+ x86_PMULHW
+ x86_PMULLD
+ x86_PMULLW
+ x86_PMULUDQ
+ x86_POP
+ x86_POPA
+ x86_POPAD
+ x86_POPCNT
+ x86_POPF
+ x86_POPFD
+ x86_POPFQ
+ x86_POR
+ x86_PREFETCHNTA
+ x86_PREFETCHT0
+ x86_PREFETCHT1
+ x86_PREFETCHT2
+ x86_PREFETCHW
+ x86_PSADBW
+ x86_PSHUFB
+ x86_PSHUFD
+ x86_PSHUFHW
+ x86_PSHUFLW
+ x86_PSHUFW
+ x86_PSIGNB
+ x86_PSIGND
+ x86_PSIGNW
+ x86_PSLLD
+ x86_PSLLDQ
+ x86_PSLLQ
+ x86_PSLLW
+ x86_PSRAD
+ x86_PSRAW
+ x86_PSRLD
+ x86_PSRLDQ
+ x86_PSRLQ
+ x86_PSRLW
+ x86_PSUBB
+ x86_PSUBD
+ x86_PSUBQ
+ x86_PSUBSB
+ x86_PSUBSW
+ x86_PSUBUSB
+ x86_PSUBUSW
+ x86_PSUBW
+ x86_PTEST
+ x86_PUNPCKHBW
+ x86_PUNPCKHDQ
+ x86_PUNPCKHQDQ
+ x86_PUNPCKHWD
+ x86_PUNPCKLBW
+ x86_PUNPCKLDQ
+ x86_PUNPCKLQDQ
+ x86_PUNPCKLWD
+ x86_PUSH
+ x86_PUSHA
+ x86_PUSHAD
+ x86_PUSHF
+ x86_PUSHFD
+ x86_PUSHFQ
+ x86_PXOR
+ x86_RCL
+ x86_RCPPS
+ x86_RCPSS
+ x86_RCR
+ x86_RDFSBASE
+ x86_RDGSBASE
+ x86_RDMSR
+ x86_RDPMC
+ x86_RDRAND
+ x86_RDTSC
+ x86_RDTSCP
+ x86_RET
+ x86_ROL
+ x86_ROR
+ x86_ROUNDPD
+ x86_ROUNDPS
+ x86_ROUNDSD
+ x86_ROUNDSS
+ x86_RSM
+ x86_RSQRTPS
+ x86_RSQRTSS
+ x86_SAHF
+ x86_SAR
+ x86_SBB
+ x86_SCASB
+ x86_SCASD
+ x86_SCASQ
+ x86_SCASW
+ x86_SETA
+ x86_SETAE
+ x86_SETB
+ x86_SETBE
+ x86_SETE
+ x86_SETG
+ x86_SETGE
+ x86_SETL
+ x86_SETLE
+ x86_SETNE
+ x86_SETNO
+ x86_SETNP
+ x86_SETNS
+ x86_SETO
+ x86_SETP
+ x86_SETS
+ x86_SFENCE
+ x86_SGDT
+ x86_SHL
+ x86_SHLD
+ x86_SHR
+ x86_SHRD
+ x86_SHUFPD
+ x86_SHUFPS
+ x86_SIDT
+ x86_SLDT
+ x86_SMSW
+ x86_SQRTPD
+ x86_SQRTPS
+ x86_SQRTSD
+ x86_SQRTSS
+ x86_STC
+ x86_STD
+ x86_STI
+ x86_STMXCSR
+ x86_STOSB
+ x86_STOSD
+ x86_STOSQ
+ x86_STOSW
+ x86_STR
+ x86_SUB
+ x86_SUBPD
+ x86_SUBPS
+ x86_SUBSD
+ x86_SUBSS
+ x86_SWAPGS
+ x86_SYSCALL
+ x86_SYSENTER
+ x86_SYSEXIT
+ x86_SYSRET
+ x86_TEST
+ x86_TZCNT
+ x86_UCOMISD
+ x86_UCOMISS
+ x86_UD1
+ x86_UD2
+ x86_UNPCKHPD
+ x86_UNPCKHPS
+ x86_UNPCKLPD
+ x86_UNPCKLPS
+ x86_VERR
+ x86_VERW
+ x86_WBINVD
+ x86_WRFSBASE
+ x86_WRGSBASE
+ x86_WRMSR
+ x86_XABORT
+ x86_XADD
+ x86_XBEGIN
+ x86_XCHG
+ x86_XEND
+ x86_XGETBV
+ x86_XLATB
+ x86_XOR
+ x86_XORPD
+ x86_XORPS
+ x86_XRSTOR
+ x86_XRSTOR64
+ x86_XRSTORS
+ x86_XRSTORS64
+ x86_XSAVE
+ x86_XSAVE64
+ x86_XSAVEC
+ x86_XSAVEC64
+ x86_XSAVEOPT
+ x86_XSAVEOPT64
+ x86_XSAVES
+ x86_XSAVES64
+ x86_XSETBV
+ x86_XTEST
+)
+
+const x86_maxOp = x86_XTEST
+
+var x86_opNames = [...]string{
+ x86_AAA: "AAA",
+ x86_AAD: "AAD",
+ x86_AAM: "AAM",
+ x86_AAS: "AAS",
+ x86_ADC: "ADC",
+ x86_ADD: "ADD",
+ x86_ADDPD: "ADDPD",
+ x86_ADDPS: "ADDPS",
+ x86_ADDSD: "ADDSD",
+ x86_ADDSS: "ADDSS",
+ x86_ADDSUBPD: "ADDSUBPD",
+ x86_ADDSUBPS: "ADDSUBPS",
+ x86_AESDEC: "AESDEC",
+ x86_AESDECLAST: "AESDECLAST",
+ x86_AESENC: "AESENC",
+ x86_AESENCLAST: "AESENCLAST",
+ x86_AESIMC: "AESIMC",
+ x86_AESKEYGENASSIST: "AESKEYGENASSIST",
+ x86_AND: "AND",
+ x86_ANDNPD: "ANDNPD",
+ x86_ANDNPS: "ANDNPS",
+ x86_ANDPD: "ANDPD",
+ x86_ANDPS: "ANDPS",
+ x86_ARPL: "ARPL",
+ x86_BLENDPD: "BLENDPD",
+ x86_BLENDPS: "BLENDPS",
+ x86_BLENDVPD: "BLENDVPD",
+ x86_BLENDVPS: "BLENDVPS",
+ x86_BOUND: "BOUND",
+ x86_BSF: "BSF",
+ x86_BSR: "BSR",
+ x86_BSWAP: "BSWAP",
+ x86_BT: "BT",
+ x86_BTC: "BTC",
+ x86_BTR: "BTR",
+ x86_BTS: "BTS",
+ x86_CALL: "CALL",
+ x86_CBW: "CBW",
+ x86_CDQ: "CDQ",
+ x86_CDQE: "CDQE",
+ x86_CLC: "CLC",
+ x86_CLD: "CLD",
+ x86_CLFLUSH: "CLFLUSH",
+ x86_CLI: "CLI",
+ x86_CLTS: "CLTS",
+ x86_CMC: "CMC",
+ x86_CMOVA: "CMOVA",
+ x86_CMOVAE: "CMOVAE",
+ x86_CMOVB: "CMOVB",
+ x86_CMOVBE: "CMOVBE",
+ x86_CMOVE: "CMOVE",
+ x86_CMOVG: "CMOVG",
+ x86_CMOVGE: "CMOVGE",
+ x86_CMOVL: "CMOVL",
+ x86_CMOVLE: "CMOVLE",
+ x86_CMOVNE: "CMOVNE",
+ x86_CMOVNO: "CMOVNO",
+ x86_CMOVNP: "CMOVNP",
+ x86_CMOVNS: "CMOVNS",
+ x86_CMOVO: "CMOVO",
+ x86_CMOVP: "CMOVP",
+ x86_CMOVS: "CMOVS",
+ x86_CMP: "CMP",
+ x86_CMPPD: "CMPPD",
+ x86_CMPPS: "CMPPS",
+ x86_CMPSB: "CMPSB",
+ x86_CMPSD: "CMPSD",
+ x86_CMPSD_XMM: "CMPSD_XMM",
+ x86_CMPSQ: "CMPSQ",
+ x86_CMPSS: "CMPSS",
+ x86_CMPSW: "CMPSW",
+ x86_CMPXCHG: "CMPXCHG",
+ x86_CMPXCHG16B: "CMPXCHG16B",
+ x86_CMPXCHG8B: "CMPXCHG8B",
+ x86_COMISD: "COMISD",
+ x86_COMISS: "COMISS",
+ x86_CPUID: "CPUID",
+ x86_CQO: "CQO",
+ x86_CRC32: "CRC32",
+ x86_CVTDQ2PD: "CVTDQ2PD",
+ x86_CVTDQ2PS: "CVTDQ2PS",
+ x86_CVTPD2DQ: "CVTPD2DQ",
+ x86_CVTPD2PI: "CVTPD2PI",
+ x86_CVTPD2PS: "CVTPD2PS",
+ x86_CVTPI2PD: "CVTPI2PD",
+ x86_CVTPI2PS: "CVTPI2PS",
+ x86_CVTPS2DQ: "CVTPS2DQ",
+ x86_CVTPS2PD: "CVTPS2PD",
+ x86_CVTPS2PI: "CVTPS2PI",
+ x86_CVTSD2SI: "CVTSD2SI",
+ x86_CVTSD2SS: "CVTSD2SS",
+ x86_CVTSI2SD: "CVTSI2SD",
+ x86_CVTSI2SS: "CVTSI2SS",
+ x86_CVTSS2SD: "CVTSS2SD",
+ x86_CVTSS2SI: "CVTSS2SI",
+ x86_CVTTPD2DQ: "CVTTPD2DQ",
+ x86_CVTTPD2PI: "CVTTPD2PI",
+ x86_CVTTPS2DQ: "CVTTPS2DQ",
+ x86_CVTTPS2PI: "CVTTPS2PI",
+ x86_CVTTSD2SI: "CVTTSD2SI",
+ x86_CVTTSS2SI: "CVTTSS2SI",
+ x86_CWD: "CWD",
+ x86_CWDE: "CWDE",
+ x86_DAA: "DAA",
+ x86_DAS: "DAS",
+ x86_DEC: "DEC",
+ x86_DIV: "DIV",
+ x86_DIVPD: "DIVPD",
+ x86_DIVPS: "DIVPS",
+ x86_DIVSD: "DIVSD",
+ x86_DIVSS: "DIVSS",
+ x86_DPPD: "DPPD",
+ x86_DPPS: "DPPS",
+ x86_EMMS: "EMMS",
+ x86_ENTER: "ENTER",
+ x86_EXTRACTPS: "EXTRACTPS",
+ x86_F2XM1: "F2XM1",
+ x86_FABS: "FABS",
+ x86_FADD: "FADD",
+ x86_FADDP: "FADDP",
+ x86_FBLD: "FBLD",
+ x86_FBSTP: "FBSTP",
+ x86_FCHS: "FCHS",
+ x86_FCMOVB: "FCMOVB",
+ x86_FCMOVBE: "FCMOVBE",
+ x86_FCMOVE: "FCMOVE",
+ x86_FCMOVNB: "FCMOVNB",
+ x86_FCMOVNBE: "FCMOVNBE",
+ x86_FCMOVNE: "FCMOVNE",
+ x86_FCMOVNU: "FCMOVNU",
+ x86_FCMOVU: "FCMOVU",
+ x86_FCOM: "FCOM",
+ x86_FCOMI: "FCOMI",
+ x86_FCOMIP: "FCOMIP",
+ x86_FCOMP: "FCOMP",
+ x86_FCOMPP: "FCOMPP",
+ x86_FCOS: "FCOS",
+ x86_FDECSTP: "FDECSTP",
+ x86_FDIV: "FDIV",
+ x86_FDIVP: "FDIVP",
+ x86_FDIVR: "FDIVR",
+ x86_FDIVRP: "FDIVRP",
+ x86_FFREE: "FFREE",
+ x86_FFREEP: "FFREEP",
+ x86_FIADD: "FIADD",
+ x86_FICOM: "FICOM",
+ x86_FICOMP: "FICOMP",
+ x86_FIDIV: "FIDIV",
+ x86_FIDIVR: "FIDIVR",
+ x86_FILD: "FILD",
+ x86_FIMUL: "FIMUL",
+ x86_FINCSTP: "FINCSTP",
+ x86_FIST: "FIST",
+ x86_FISTP: "FISTP",
+ x86_FISTTP: "FISTTP",
+ x86_FISUB: "FISUB",
+ x86_FISUBR: "FISUBR",
+ x86_FLD: "FLD",
+ x86_FLD1: "FLD1",
+ x86_FLDCW: "FLDCW",
+ x86_FLDENV: "FLDENV",
+ x86_FLDL2E: "FLDL2E",
+ x86_FLDL2T: "FLDL2T",
+ x86_FLDLG2: "FLDLG2",
+ x86_FLDPI: "FLDPI",
+ x86_FMUL: "FMUL",
+ x86_FMULP: "FMULP",
+ x86_FNCLEX: "FNCLEX",
+ x86_FNINIT: "FNINIT",
+ x86_FNOP: "FNOP",
+ x86_FNSAVE: "FNSAVE",
+ x86_FNSTCW: "FNSTCW",
+ x86_FNSTENV: "FNSTENV",
+ x86_FNSTSW: "FNSTSW",
+ x86_FPATAN: "FPATAN",
+ x86_FPREM: "FPREM",
+ x86_FPREM1: "FPREM1",
+ x86_FPTAN: "FPTAN",
+ x86_FRNDINT: "FRNDINT",
+ x86_FRSTOR: "FRSTOR",
+ x86_FSCALE: "FSCALE",
+ x86_FSIN: "FSIN",
+ x86_FSINCOS: "FSINCOS",
+ x86_FSQRT: "FSQRT",
+ x86_FST: "FST",
+ x86_FSTP: "FSTP",
+ x86_FSUB: "FSUB",
+ x86_FSUBP: "FSUBP",
+ x86_FSUBR: "FSUBR",
+ x86_FSUBRP: "FSUBRP",
+ x86_FTST: "FTST",
+ x86_FUCOM: "FUCOM",
+ x86_FUCOMI: "FUCOMI",
+ x86_FUCOMIP: "FUCOMIP",
+ x86_FUCOMP: "FUCOMP",
+ x86_FUCOMPP: "FUCOMPP",
+ x86_FWAIT: "FWAIT",
+ x86_FXAM: "FXAM",
+ x86_FXCH: "FXCH",
+ x86_FXRSTOR: "FXRSTOR",
+ x86_FXRSTOR64: "FXRSTOR64",
+ x86_FXSAVE: "FXSAVE",
+ x86_FXSAVE64: "FXSAVE64",
+ x86_FXTRACT: "FXTRACT",
+ x86_FYL2X: "FYL2X",
+ x86_FYL2XP1: "FYL2XP1",
+ x86_HADDPD: "HADDPD",
+ x86_HADDPS: "HADDPS",
+ x86_HLT: "HLT",
+ x86_HSUBPD: "HSUBPD",
+ x86_HSUBPS: "HSUBPS",
+ x86_ICEBP: "ICEBP",
+ x86_IDIV: "IDIV",
+ x86_IMUL: "IMUL",
+ x86_IN: "IN",
+ x86_INC: "INC",
+ x86_INSB: "INSB",
+ x86_INSD: "INSD",
+ x86_INSERTPS: "INSERTPS",
+ x86_INSW: "INSW",
+ x86_INT: "INT",
+ x86_INTO: "INTO",
+ x86_INVD: "INVD",
+ x86_INVLPG: "INVLPG",
+ x86_INVPCID: "INVPCID",
+ x86_IRET: "IRET",
+ x86_IRETD: "IRETD",
+ x86_IRETQ: "IRETQ",
+ x86_JA: "JA",
+ x86_JAE: "JAE",
+ x86_JB: "JB",
+ x86_JBE: "JBE",
+ x86_JCXZ: "JCXZ",
+ x86_JE: "JE",
+ x86_JECXZ: "JECXZ",
+ x86_JG: "JG",
+ x86_JGE: "JGE",
+ x86_JL: "JL",
+ x86_JLE: "JLE",
+ x86_JMP: "JMP",
+ x86_JNE: "JNE",
+ x86_JNO: "JNO",
+ x86_JNP: "JNP",
+ x86_JNS: "JNS",
+ x86_JO: "JO",
+ x86_JP: "JP",
+ x86_JRCXZ: "JRCXZ",
+ x86_JS: "JS",
+ x86_LAHF: "LAHF",
+ x86_LAR: "LAR",
+ x86_LCALL: "LCALL",
+ x86_LDDQU: "LDDQU",
+ x86_LDMXCSR: "LDMXCSR",
+ x86_LDS: "LDS",
+ x86_LEA: "LEA",
+ x86_LEAVE: "LEAVE",
+ x86_LES: "LES",
+ x86_LFENCE: "LFENCE",
+ x86_LFS: "LFS",
+ x86_LGDT: "LGDT",
+ x86_LGS: "LGS",
+ x86_LIDT: "LIDT",
+ x86_LJMP: "LJMP",
+ x86_LLDT: "LLDT",
+ x86_LMSW: "LMSW",
+ x86_LODSB: "LODSB",
+ x86_LODSD: "LODSD",
+ x86_LODSQ: "LODSQ",
+ x86_LODSW: "LODSW",
+ x86_LOOP: "LOOP",
+ x86_LOOPE: "LOOPE",
+ x86_LOOPNE: "LOOPNE",
+ x86_LRET: "LRET",
+ x86_LSL: "LSL",
+ x86_LSS: "LSS",
+ x86_LTR: "LTR",
+ x86_LZCNT: "LZCNT",
+ x86_MASKMOVDQU: "MASKMOVDQU",
+ x86_MASKMOVQ: "MASKMOVQ",
+ x86_MAXPD: "MAXPD",
+ x86_MAXPS: "MAXPS",
+ x86_MAXSD: "MAXSD",
+ x86_MAXSS: "MAXSS",
+ x86_MFENCE: "MFENCE",
+ x86_MINPD: "MINPD",
+ x86_MINPS: "MINPS",
+ x86_MINSD: "MINSD",
+ x86_MINSS: "MINSS",
+ x86_MONITOR: "MONITOR",
+ x86_MOV: "MOV",
+ x86_MOVAPD: "MOVAPD",
+ x86_MOVAPS: "MOVAPS",
+ x86_MOVBE: "MOVBE",
+ x86_MOVD: "MOVD",
+ x86_MOVDDUP: "MOVDDUP",
+ x86_MOVDQ2Q: "MOVDQ2Q",
+ x86_MOVDQA: "MOVDQA",
+ x86_MOVDQU: "MOVDQU",
+ x86_MOVHLPS: "MOVHLPS",
+ x86_MOVHPD: "MOVHPD",
+ x86_MOVHPS: "MOVHPS",
+ x86_MOVLHPS: "MOVLHPS",
+ x86_MOVLPD: "MOVLPD",
+ x86_MOVLPS: "MOVLPS",
+ x86_MOVMSKPD: "MOVMSKPD",
+ x86_MOVMSKPS: "MOVMSKPS",
+ x86_MOVNTDQ: "MOVNTDQ",
+ x86_MOVNTDQA: "MOVNTDQA",
+ x86_MOVNTI: "MOVNTI",
+ x86_MOVNTPD: "MOVNTPD",
+ x86_MOVNTPS: "MOVNTPS",
+ x86_MOVNTQ: "MOVNTQ",
+ x86_MOVNTSD: "MOVNTSD",
+ x86_MOVNTSS: "MOVNTSS",
+ x86_MOVQ: "MOVQ",
+ x86_MOVQ2DQ: "MOVQ2DQ",
+ x86_MOVSB: "MOVSB",
+ x86_MOVSD: "MOVSD",
+ x86_MOVSD_XMM: "MOVSD_XMM",
+ x86_MOVSHDUP: "MOVSHDUP",
+ x86_MOVSLDUP: "MOVSLDUP",
+ x86_MOVSQ: "MOVSQ",
+ x86_MOVSS: "MOVSS",
+ x86_MOVSW: "MOVSW",
+ x86_MOVSX: "MOVSX",
+ x86_MOVSXD: "MOVSXD",
+ x86_MOVUPD: "MOVUPD",
+ x86_MOVUPS: "MOVUPS",
+ x86_MOVZX: "MOVZX",
+ x86_MPSADBW: "MPSADBW",
+ x86_MUL: "MUL",
+ x86_MULPD: "MULPD",
+ x86_MULPS: "MULPS",
+ x86_MULSD: "MULSD",
+ x86_MULSS: "MULSS",
+ x86_MWAIT: "MWAIT",
+ x86_NEG: "NEG",
+ x86_NOP: "NOP",
+ x86_NOT: "NOT",
+ x86_OR: "OR",
+ x86_ORPD: "ORPD",
+ x86_ORPS: "ORPS",
+ x86_OUT: "OUT",
+ x86_OUTSB: "OUTSB",
+ x86_OUTSD: "OUTSD",
+ x86_OUTSW: "OUTSW",
+ x86_PABSB: "PABSB",
+ x86_PABSD: "PABSD",
+ x86_PABSW: "PABSW",
+ x86_PACKSSDW: "PACKSSDW",
+ x86_PACKSSWB: "PACKSSWB",
+ x86_PACKUSDW: "PACKUSDW",
+ x86_PACKUSWB: "PACKUSWB",
+ x86_PADDB: "PADDB",
+ x86_PADDD: "PADDD",
+ x86_PADDQ: "PADDQ",
+ x86_PADDSB: "PADDSB",
+ x86_PADDSW: "PADDSW",
+ x86_PADDUSB: "PADDUSB",
+ x86_PADDUSW: "PADDUSW",
+ x86_PADDW: "PADDW",
+ x86_PALIGNR: "PALIGNR",
+ x86_PAND: "PAND",
+ x86_PANDN: "PANDN",
+ x86_PAUSE: "PAUSE",
+ x86_PAVGB: "PAVGB",
+ x86_PAVGW: "PAVGW",
+ x86_PBLENDVB: "PBLENDVB",
+ x86_PBLENDW: "PBLENDW",
+ x86_PCLMULQDQ: "PCLMULQDQ",
+ x86_PCMPEQB: "PCMPEQB",
+ x86_PCMPEQD: "PCMPEQD",
+ x86_PCMPEQQ: "PCMPEQQ",
+ x86_PCMPEQW: "PCMPEQW",
+ x86_PCMPESTRI: "PCMPESTRI",
+ x86_PCMPESTRM: "PCMPESTRM",
+ x86_PCMPGTB: "PCMPGTB",
+ x86_PCMPGTD: "PCMPGTD",
+ x86_PCMPGTQ: "PCMPGTQ",
+ x86_PCMPGTW: "PCMPGTW",
+ x86_PCMPISTRI: "PCMPISTRI",
+ x86_PCMPISTRM: "PCMPISTRM",
+ x86_PEXTRB: "PEXTRB",
+ x86_PEXTRD: "PEXTRD",
+ x86_PEXTRQ: "PEXTRQ",
+ x86_PEXTRW: "PEXTRW",
+ x86_PHADDD: "PHADDD",
+ x86_PHADDSW: "PHADDSW",
+ x86_PHADDW: "PHADDW",
+ x86_PHMINPOSUW: "PHMINPOSUW",
+ x86_PHSUBD: "PHSUBD",
+ x86_PHSUBSW: "PHSUBSW",
+ x86_PHSUBW: "PHSUBW",
+ x86_PINSRB: "PINSRB",
+ x86_PINSRD: "PINSRD",
+ x86_PINSRQ: "PINSRQ",
+ x86_PINSRW: "PINSRW",
+ x86_PMADDUBSW: "PMADDUBSW",
+ x86_PMADDWD: "PMADDWD",
+ x86_PMAXSB: "PMAXSB",
+ x86_PMAXSD: "PMAXSD",
+ x86_PMAXSW: "PMAXSW",
+ x86_PMAXUB: "PMAXUB",
+ x86_PMAXUD: "PMAXUD",
+ x86_PMAXUW: "PMAXUW",
+ x86_PMINSB: "PMINSB",
+ x86_PMINSD: "PMINSD",
+ x86_PMINSW: "PMINSW",
+ x86_PMINUB: "PMINUB",
+ x86_PMINUD: "PMINUD",
+ x86_PMINUW: "PMINUW",
+ x86_PMOVMSKB: "PMOVMSKB",
+ x86_PMOVSXBD: "PMOVSXBD",
+ x86_PMOVSXBQ: "PMOVSXBQ",
+ x86_PMOVSXBW: "PMOVSXBW",
+ x86_PMOVSXDQ: "PMOVSXDQ",
+ x86_PMOVSXWD: "PMOVSXWD",
+ x86_PMOVSXWQ: "PMOVSXWQ",
+ x86_PMOVZXBD: "PMOVZXBD",
+ x86_PMOVZXBQ: "PMOVZXBQ",
+ x86_PMOVZXBW: "PMOVZXBW",
+ x86_PMOVZXDQ: "PMOVZXDQ",
+ x86_PMOVZXWD: "PMOVZXWD",
+ x86_PMOVZXWQ: "PMOVZXWQ",
+ x86_PMULDQ: "PMULDQ",
+ x86_PMULHRSW: "PMULHRSW",
+ x86_PMULHUW: "PMULHUW",
+ x86_PMULHW: "PMULHW",
+ x86_PMULLD: "PMULLD",
+ x86_PMULLW: "PMULLW",
+ x86_PMULUDQ: "PMULUDQ",
+ x86_POP: "POP",
+ x86_POPA: "POPA",
+ x86_POPAD: "POPAD",
+ x86_POPCNT: "POPCNT",
+ x86_POPF: "POPF",
+ x86_POPFD: "POPFD",
+ x86_POPFQ: "POPFQ",
+ x86_POR: "POR",
+ x86_PREFETCHNTA: "PREFETCHNTA",
+ x86_PREFETCHT0: "PREFETCHT0",
+ x86_PREFETCHT1: "PREFETCHT1",
+ x86_PREFETCHT2: "PREFETCHT2",
+ x86_PREFETCHW: "PREFETCHW",
+ x86_PSADBW: "PSADBW",
+ x86_PSHUFB: "PSHUFB",
+ x86_PSHUFD: "PSHUFD",
+ x86_PSHUFHW: "PSHUFHW",
+ x86_PSHUFLW: "PSHUFLW",
+ x86_PSHUFW: "PSHUFW",
+ x86_PSIGNB: "PSIGNB",
+ x86_PSIGND: "PSIGND",
+ x86_PSIGNW: "PSIGNW",
+ x86_PSLLD: "PSLLD",
+ x86_PSLLDQ: "PSLLDQ",
+ x86_PSLLQ: "PSLLQ",
+ x86_PSLLW: "PSLLW",
+ x86_PSRAD: "PSRAD",
+ x86_PSRAW: "PSRAW",
+ x86_PSRLD: "PSRLD",
+ x86_PSRLDQ: "PSRLDQ",
+ x86_PSRLQ: "PSRLQ",
+ x86_PSRLW: "PSRLW",
+ x86_PSUBB: "PSUBB",
+ x86_PSUBD: "PSUBD",
+ x86_PSUBQ: "PSUBQ",
+ x86_PSUBSB: "PSUBSB",
+ x86_PSUBSW: "PSUBSW",
+ x86_PSUBUSB: "PSUBUSB",
+ x86_PSUBUSW: "PSUBUSW",
+ x86_PSUBW: "PSUBW",
+ x86_PTEST: "PTEST",
+ x86_PUNPCKHBW: "PUNPCKHBW",
+ x86_PUNPCKHDQ: "PUNPCKHDQ",
+ x86_PUNPCKHQDQ: "PUNPCKHQDQ",
+ x86_PUNPCKHWD: "PUNPCKHWD",
+ x86_PUNPCKLBW: "PUNPCKLBW",
+ x86_PUNPCKLDQ: "PUNPCKLDQ",
+ x86_PUNPCKLQDQ: "PUNPCKLQDQ",
+ x86_PUNPCKLWD: "PUNPCKLWD",
+ x86_PUSH: "PUSH",
+ x86_PUSHA: "PUSHA",
+ x86_PUSHAD: "PUSHAD",
+ x86_PUSHF: "PUSHF",
+ x86_PUSHFD: "PUSHFD",
+ x86_PUSHFQ: "PUSHFQ",
+ x86_PXOR: "PXOR",
+ x86_RCL: "RCL",
+ x86_RCPPS: "RCPPS",
+ x86_RCPSS: "RCPSS",
+ x86_RCR: "RCR",
+ x86_RDFSBASE: "RDFSBASE",
+ x86_RDGSBASE: "RDGSBASE",
+ x86_RDMSR: "RDMSR",
+ x86_RDPMC: "RDPMC",
+ x86_RDRAND: "RDRAND",
+ x86_RDTSC: "RDTSC",
+ x86_RDTSCP: "RDTSCP",
+ x86_RET: "RET",
+ x86_ROL: "ROL",
+ x86_ROR: "ROR",
+ x86_ROUNDPD: "ROUNDPD",
+ x86_ROUNDPS: "ROUNDPS",
+ x86_ROUNDSD: "ROUNDSD",
+ x86_ROUNDSS: "ROUNDSS",
+ x86_RSM: "RSM",
+ x86_RSQRTPS: "RSQRTPS",
+ x86_RSQRTSS: "RSQRTSS",
+ x86_SAHF: "SAHF",
+ x86_SAR: "SAR",
+ x86_SBB: "SBB",
+ x86_SCASB: "SCASB",
+ x86_SCASD: "SCASD",
+ x86_SCASQ: "SCASQ",
+ x86_SCASW: "SCASW",
+ x86_SETA: "SETA",
+ x86_SETAE: "SETAE",
+ x86_SETB: "SETB",
+ x86_SETBE: "SETBE",
+ x86_SETE: "SETE",
+ x86_SETG: "SETG",
+ x86_SETGE: "SETGE",
+ x86_SETL: "SETL",
+ x86_SETLE: "SETLE",
+ x86_SETNE: "SETNE",
+ x86_SETNO: "SETNO",
+ x86_SETNP: "SETNP",
+ x86_SETNS: "SETNS",
+ x86_SETO: "SETO",
+ x86_SETP: "SETP",
+ x86_SETS: "SETS",
+ x86_SFENCE: "SFENCE",
+ x86_SGDT: "SGDT",
+ x86_SHL: "SHL",
+ x86_SHLD: "SHLD",
+ x86_SHR: "SHR",
+ x86_SHRD: "SHRD",
+ x86_SHUFPD: "SHUFPD",
+ x86_SHUFPS: "SHUFPS",
+ x86_SIDT: "SIDT",
+ x86_SLDT: "SLDT",
+ x86_SMSW: "SMSW",
+ x86_SQRTPD: "SQRTPD",
+ x86_SQRTPS: "SQRTPS",
+ x86_SQRTSD: "SQRTSD",
+ x86_SQRTSS: "SQRTSS",
+ x86_STC: "STC",
+ x86_STD: "STD",
+ x86_STI: "STI",
+ x86_STMXCSR: "STMXCSR",
+ x86_STOSB: "STOSB",
+ x86_STOSD: "STOSD",
+ x86_STOSQ: "STOSQ",
+ x86_STOSW: "STOSW",
+ x86_STR: "STR",
+ x86_SUB: "SUB",
+ x86_SUBPD: "SUBPD",
+ x86_SUBPS: "SUBPS",
+ x86_SUBSD: "SUBSD",
+ x86_SUBSS: "SUBSS",
+ x86_SWAPGS: "SWAPGS",
+ x86_SYSCALL: "SYSCALL",
+ x86_SYSENTER: "SYSENTER",
+ x86_SYSEXIT: "SYSEXIT",
+ x86_SYSRET: "SYSRET",
+ x86_TEST: "TEST",
+ x86_TZCNT: "TZCNT",
+ x86_UCOMISD: "UCOMISD",
+ x86_UCOMISS: "UCOMISS",
+ x86_UD1: "UD1",
+ x86_UD2: "UD2",
+ x86_UNPCKHPD: "UNPCKHPD",
+ x86_UNPCKHPS: "UNPCKHPS",
+ x86_UNPCKLPD: "UNPCKLPD",
+ x86_UNPCKLPS: "UNPCKLPS",
+ x86_VERR: "VERR",
+ x86_VERW: "VERW",
+ x86_WBINVD: "WBINVD",
+ x86_WRFSBASE: "WRFSBASE",
+ x86_WRGSBASE: "WRGSBASE",
+ x86_WRMSR: "WRMSR",
+ x86_XABORT: "XABORT",
+ x86_XADD: "XADD",
+ x86_XBEGIN: "XBEGIN",
+ x86_XCHG: "XCHG",
+ x86_XEND: "XEND",
+ x86_XGETBV: "XGETBV",
+ x86_XLATB: "XLATB",
+ x86_XOR: "XOR",
+ x86_XORPD: "XORPD",
+ x86_XORPS: "XORPS",
+ x86_XRSTOR: "XRSTOR",
+ x86_XRSTOR64: "XRSTOR64",
+ x86_XRSTORS: "XRSTORS",
+ x86_XRSTORS64: "XRSTORS64",
+ x86_XSAVE: "XSAVE",
+ x86_XSAVE64: "XSAVE64",
+ x86_XSAVEC: "XSAVEC",
+ x86_XSAVEC64: "XSAVEC64",
+ x86_XSAVEOPT: "XSAVEOPT",
+ x86_XSAVEOPT64: "XSAVEOPT64",
+ x86_XSAVES: "XSAVES",
+ x86_XSAVES64: "XSAVES64",
+ x86_XSETBV: "XSETBV",
+ x86_XTEST: "XTEST",
+}